eve 0.75.0 → 0.75.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/src/cli/commands/deploy.js +1 -1
  3. package/dist/src/cli/commands/link.d.ts +2 -1
  4. package/dist/src/cli/commands/link.js +1 -1
  5. package/dist/src/cli/commands/registry.js +1 -1
  6. package/dist/src/cli/commands/vercel-non-interactive.d.ts +6 -4
  7. package/dist/src/cli/commands/vercel-non-interactive.js +1 -1
  8. package/dist/src/compiled/.vendor-stamp.json +8 -8
  9. package/dist/src/compiled/@eve/catalog/index.js +1 -1
  10. package/dist/src/compiled/@workflow/core/global.d.ts +10 -0
  11. package/dist/src/compiled/@workflow/core/index.js +1 -1
  12. package/dist/src/compiled/@workflow/core/private.d.ts +11 -0
  13. package/dist/src/compiled/@workflow/core/private.js +1 -1
  14. package/dist/src/compiled/@workflow/core/runtime/constants.d.ts +36 -8
  15. package/dist/src/compiled/@workflow/core/runtime/helpers.js +1 -1
  16. package/dist/src/compiled/@workflow/core/runtime/lifecycle-hooks.d.ts +10 -6
  17. package/dist/src/compiled/@workflow/core/runtime/out-of-band-observation.d.ts +159 -0
  18. package/dist/src/compiled/@workflow/core/runtime/vm-mode.d.ts +28 -4
  19. package/dist/src/compiled/@workflow/core/runtime.js +4 -4
  20. package/dist/src/compiled/@workflow/core/serialization.js +1 -1
  21. package/dist/src/compiled/@workflow/core/version.d.ts +1 -1
  22. package/dist/src/compiled/@workflow/core/workflow.js +1 -1
  23. package/dist/src/compiled/@workflow/world-local/index.js +5 -5
  24. package/dist/src/compiled/@workflow/world-vercel/index.js +4 -4
  25. package/dist/src/compiled/_chunks/workflow/{attribute-changes-CSqvJx6j.js → attribute-changes-BW-kbMMn.js} +1 -1
  26. package/dist/src/compiled/_chunks/workflow/dist-CyBgVS7g.js +1 -0
  27. package/dist/src/compiled/_chunks/workflow/{helpers-BXCuoPUb.js → helpers-DlLD3ov_.js} +1 -1
  28. package/dist/src/compiled/_chunks/workflow/private-tQUuwBoQ.js +1 -0
  29. package/dist/src/compiled/_chunks/workflow/{resume-hook-CvENCrxc.js → resume-hook-DMsV_b4n.js} +1 -1
  30. package/dist/src/compiled/_chunks/workflow/{run-8pLWuR2U.js → run-DzdAqdb1.js} +1 -1
  31. package/dist/src/compiled/_chunks/workflow/{serialization-vDozzDhh.js → serialization-DPdYS_w2.js} +2 -2
  32. package/dist/src/compiled/_chunks/workflow/sleep-BY6leHh8.js +1 -0
  33. package/dist/src/compiled/_chunks/workflow/{token-BKeK6DmC.js → token-D5ugC3PI.js} +1 -1
  34. package/dist/src/compiled/_chunks/workflow/{token-util-CddTZ_ef.js → token-util-Bla5Z0G9.js} +1 -1
  35. package/dist/src/compiled/_chunks/workflow/undici-D-ILjOKD.js +95 -0
  36. package/dist/src/compiled/_chunks/workflow/{wait-until-A344L2AG.js → wait-until-xbRRDuUf.js} +1 -1
  37. package/dist/src/eve-channel/request.js +1 -1
  38. package/dist/src/execution/dynamic-workflow/tool.js +1 -1
  39. package/dist/src/execution/ndjson-stream.d.ts +6 -6
  40. package/dist/src/execution/ndjson-stream.js +3 -3
  41. package/dist/src/execution/tools/agent-router-workflow.js +1 -1
  42. package/dist/src/harness/compaction/engine.d.ts +8 -19
  43. package/dist/src/harness/compaction/engine.js +1 -1
  44. package/dist/src/harness/compaction/step.d.ts +7 -1
  45. package/dist/src/harness/compaction/step.js +1 -1
  46. package/dist/src/harness/emission.js +1 -1
  47. package/dist/src/harness/model-call/call.d.ts +2 -3
  48. package/dist/src/harness/model-call/call.js +1 -1
  49. package/dist/src/harness/model-call/model.d.ts +4 -5
  50. package/dist/src/harness/model-call/model.js +1 -1
  51. package/dist/src/harness/model-call/request.d.ts +1 -2
  52. package/dist/src/harness/model-call/request.js +1 -1
  53. package/dist/src/harness/model-call/retry.d.ts +1 -1
  54. package/dist/src/harness/model-call/retry.js +1 -1
  55. package/dist/src/harness/model-call/tools.d.ts +3 -4
  56. package/dist/src/harness/model-call/tools.js +1 -1
  57. package/dist/src/harness/model-call/usage.js +1 -1
  58. package/dist/src/harness/model-profile.d.ts +23 -0
  59. package/dist/src/harness/model-profile.js +1 -0
  60. package/dist/src/harness/prompt-cache.d.ts +5 -53
  61. package/dist/src/harness/prompt-cache.js +1 -1
  62. package/dist/src/harness/provider-safety.d.ts +3 -5
  63. package/dist/src/harness/provider-safety.js +1 -1
  64. package/dist/src/harness/provider-tools.d.ts +5 -13
  65. package/dist/src/harness/provider-tools.js +1 -1
  66. package/dist/src/harness/step-hooks.d.ts +2 -3
  67. package/dist/src/harness/step-hooks.js +1 -1
  68. package/dist/src/harness/tools.d.ts +2 -3
  69. package/dist/src/harness/tools.js +1 -1
  70. package/dist/src/harness/turn-tag-state.d.ts +12 -0
  71. package/dist/src/harness/turn-tag-state.js +1 -1
  72. package/dist/src/internal/application/package.js +1 -1
  73. package/dist/src/internal/gateway.d.ts +0 -13
  74. package/dist/src/internal/gateway.js +1 -1
  75. package/dist/src/setup/scaffold/create/project.js +1 -1
  76. package/dist/src/setup/scaffold/create/web-template.d.ts +3 -2
  77. package/dist/src/setup/scaffold/create/web-template.js +383 -411
  78. package/dist/src/setup/vercel-project.d.ts +1 -1
  79. package/dist/src/setup/vercel-project.js +0 -0
  80. package/dist/src/tools/provided/ask-question-workflow.js +1 -1
  81. package/dist/src/tools/provided/sleep-workflow.js +1 -1
  82. package/package.json +6 -6
  83. package/dist/src/compiled/_chunks/workflow/dist-DmXynLVH.js +0 -1
  84. package/dist/src/compiled/_chunks/workflow/private-Dlf90Zvn.js +0 -1
  85. package/dist/src/compiled/_chunks/workflow/signal-exit-iIdjQcCK.js +0 -95
  86. package/dist/src/compiled/_chunks/workflow/sleep-BMqbraZM.js +0 -1
@@ -1,12 +1,12 @@
1
- import{a as e,r as t,s as n,t as r}from"../../_chunks/workflow/rolldown-runtime-B_knIduE.js";import{a as i,n as a,o,r as s}from"../../_chunks/workflow/signal-exit-iIdjQcCK.js";import{$ as c,A as l,B as u,C as d,E as f,F as p,I as m,K as h,M as g,N as _,O as v,P as y,R as b,S as x,U as S,V as C,W as w,Z as ee,_t as T,c as te,ct as ne,dt as re,g as ie,h as ae,ht as oe,it as se,j as ce,k as le,l as ue,m as de,nt as fe,o as pe,pt as me,r as he,rt as ge,v as _e,x as ve,y as ye,z as be}from"../../_chunks/workflow/dist-DmXynLVH.js";import{A as xe,_ as E,b as Se,f as Ce,j as D,k as we,l as Te,o as Ee,r as De,s as Oe,t as ke,v as Ae,y as je}from"../../_chunks/workflow/dist-T5NnW-0k.js";import{a as Me,i as Ne,n as Pe,o as Fe,r as Ie,s as Le,t as Re}from"../../_chunks/workflow/run-id-Ct9AjQDR.js";import{i as ze,r as Be,t as Ve}from"../../_chunks/workflow/token-util-CddTZ_ef.js";import{n as He,t as Ue}from"../../_chunks/workflow/wrapper-Dq4OeGmJ.js";import*as We from"#compiled/zod/index.js";import Ge,{z as O}from"#compiled/zod/index.js";import{randomUUID as Ke}from"crypto";import{createRequire as qe}from"module";import*as Je from"path";import{webcrypto as Ye}from"node:crypto";import{inspect as Xe}from"node:util";import{AsyncLocalStorage as Ze}from"node:async_hooks";import Qe from"node:assert/strict";import $e from"node:os";import*as et from"fs";import tt from"assert/strict";import*as nt from"net";var rt=r(((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})})),it=r(((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,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),at=r(((e,t)=>{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:()=>p,getVercelOidcTokenSync:()=>m}),t.exports=l(u);var d=rt(),f=it();async function p(e){let t=``,r;try{t=m()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>n(ut())),await import(`../../_chunks/workflow/token-Cv2GYj9A.js`).then(e=>n(e.default))]);(!t||i(r(t),e?.expirationBufferMs))&&(await a(e),t=m())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
2
- ${e.message}`),t?new f.VercelOidcTokenError(t):e}return t}function m(){let e=(0,d.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. Do you have the OIDC option enabled in the Vercel project settings?`);return e}0&&(t.exports={getVercelOidcToken:p,getVercelOidcTokenSync:m})})),ot=r(((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:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),st=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(e(`path`)),h=d(e(`fs`)),g=d(e(`os`)),_=it();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),ct=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(e(`fs`)),h=d(e(`path`)),g=ut();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),lt=r(((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,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=e(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),ut=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>ee,getTokenPayload:()=>ne,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>re,loadToken:()=>te,saveToken:()=>T}),n.exports=f(p);var m=d(e(`path`)),h=d(e(`fs`)),g=it(),_=st(),v=ct(),y=lt(),b=ot();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function ee(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function T(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function te(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function ne(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function re(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:ee,getTokenPayload:ne,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:re,loadToken:te,saveToken:T})})),dt=r(((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:()=>f.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>f.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>u.getVercelOidcTokenSync,getVercelToken:()=>p.getVercelToken}),t.exports=c(l);var u=at(),d=rt(),f=ot(),p=ut();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})}))();let ft;try{ft=new TextDecoder}catch{}let k,pt,A=0;const mt=[],ht=57337,gt={};let _t=11281e4,vt=1681e4,yt=mt,bt=0,j={},M,xt,St=0,Ct=0,N,wt,P=[],Tt=[],Et,F,Dt,Ot={useRecords:!1,mapsAsObjects:!0},kt=!1,At=2;try{Function(``)}catch{At=1/0}var jt=class e{constructor(e){if(e&&((e.keyMap||e._keyMap)&&!e.useRecords&&(e.useRecords=!1,e.mapsAsObjects=!0),e.useRecords===!1&&e.mapsAsObjects===void 0&&(e.mapsAsObjects=!0),e.getStructures&&(e.getShared=e.getStructures),e.getShared&&!e.structures&&((e.structures=[]).uninitialized=!0),e.keyMap)){this.mapKey=new Map;for(let[t,n]of Object.entries(e.keyMap))this.mapKey.set(n,t)}Object.assign(this,e)}decodeKey(e){return this.keyMap&&this.mapKey.get(e)||e}encodeKey(e){return this.keyMap&&this.keyMap.hasOwnProperty(e)?this.keyMap[e]:e}encodeKeys(e){if(!this._keyMap)return e;let t=new Map;for(let[n,r]of Object.entries(e))t.set(this._keyMap.hasOwnProperty(n)?this._keyMap[n]:n,r);return t}decodeKeys(e){if(!this._keyMap||e.constructor.name!=`Map`)return e;if(!this._mapKey){this._mapKey=new Map;for(let[e,t]of Object.entries(this._keyMap))this._mapKey.set(t,e)}let t={};return e.forEach((e,n)=>t[Ft(this._mapKey.has(n)?this._mapKey.get(n):n)]=e),t}mapDecode(e,t){let n=this.decode(e);if(this._keyMap)switch(n.constructor.name){case`Array`:return n.map(e=>this.decodeKeys(e))}return n}decode(t,n){if(k)return an(()=>(on(),this?this.decode(t,n):e.prototype.decode.call(Ot,t,n)));pt=n>-1?n:t.length,A=0,bt=0,Ct=0,xt=null,yt=mt,N=null,k=t;try{F=t.dataView||=new DataView(t.buffer,t.byteOffset,t.byteLength)}catch(e){throw k=null,t instanceof Uint8Array?e:Error(`Source must be a Uint8Array or Buffer but was a `+(t&&typeof t==`object`?t.constructor.name:typeof t))}if(this instanceof e){if(j=this,Et=this.sharedValues&&(this.pack?Array(this.maxPrivatePackedValues||16).concat(this.sharedValues):this.sharedValues),this.structures)return M=this.structures,Mt();(!M||M.length>0)&&(M=[])}else j=Ot,(!M||M.length>0)&&(M=[]),Et=null;return Mt()}decodeMultiple(e,t){let n,r=0;try{let i=e.length;kt=!0;let a=this?this.decode(e,i):cn.decode(e,i);if(t){if(t(a)===!1)return;for(;A<i;)if(r=A,t(Mt())===!1)return}else{for(n=[a];A<i;)r=A,n.push(Mt());return n}}catch(e){throw e.lastPosition=r,e.values=n,e}finally{kt=!1,on()}}};function Mt(){try{let e=I();if(N){if(A>=N.postBundlePosition){let e=Error(`Unexpected bundle position`);throw e.incomplete=!0,e}A=N.postBundlePosition,N=null}if(A==pt)M=null,k=null,wt&&=null;else if(A>pt){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}else if(!kt)throw Error(`Data read, but end of buffer not reached`);return e}catch(e){throw on(),(e instanceof RangeError||e.message.startsWith(`Unexpected end of buffer`))&&(e.incomplete=!0),e}}function I(){let e=k[A++],t=e>>5;if(e&=31,e>23)switch(e){case 24:e=k[A++];break;case 25:if(t==7)return Wt();e=F.getUint16(A),A+=2;break;case 26:if(t==7){let e=F.getFloat32(A);if(j.useFloat32>2){let t=sn[(k[A]&127)<<1|k[A+1]>>7];return A+=4,(t*e+(e>0?.5:-.5)>>0)/t}return A+=4,e}e=F.getUint32(A),A+=4;break;case 27:if(t==7){let e=F.getFloat64(A);return A+=8,e}if(t>1){if(F.getUint32(A)>0)throw Error(`JavaScript does not support arrays, maps, or strings with length over 4294967295`);e=F.getUint32(A+4)}else j.int64AsNumber?(e=F.getUint32(A)*4294967296,e+=F.getUint32(A+4)):e=F.getBigUint64(A);A+=8;break;case 31:switch(t){case 2:case 3:throw Error(`Indefinite length not supported for byte or text strings`);case 4:let e=[],n,r=0;for(;(n=I())!=gt;){if(r>=_t)throw Error(`Array length exceeds ${_t}`);e[r++]=n}return t==4?e:t==3?e.join(``):Buffer.concat(e);case 5:let i;if(j.mapsAsObjects){let e={},t=0;if(j.keyMap)for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Property count exceeds ${vt}`);e[Ft(j.decodeKey(i))]=I()}else for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Property count exceeds ${vt}`);e[Ft(i)]=I()}return e}{Dt&&=(j.mapsAsObjects=!0,!1);let e=new Map;if(j.keyMap){let t=0;for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Map size exceeds ${vt}`);e.set(j.decodeKey(i),I())}}else{let t=0;for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Map size exceeds ${vt}`);e.set(i,I())}}return e}case 7:return gt;default:throw Error(`Invalid major type for indefinite length `+t)}default:throw Error(`Unknown token `+e)}switch(t){case 0:return e;case 1:return~e;case 2:return Vt(e);case 3:if(Ct>=A)return xt.slice(A-St,(A+=e)-St);if(Ct==0&&pt<140&&e<32){let t=e<16?Bt(e):zt(e);if(t!=null)return t}return It(e);case 4:if(e>=_t)throw Error(`Array length exceeds ${_t}`);let t=Array(e);for(let n=0;n<e;n++)t[n]=I();return t;case 5:if(e>=vt)throw Error(`Map size exceeds ${_t}`);if(j.mapsAsObjects){let t={};if(j.keyMap)for(let n=0;n<e;n++)t[Ft(j.decodeKey(I()))]=I();else for(let n=0;n<e;n++)t[Ft(I())]=I();return t}{Dt&&=(j.mapsAsObjects=!0,!1);let t=new Map;if(j.keyMap)for(let n=0;n<e;n++)t.set(j.decodeKey(I()),I());else for(let n=0;n<e;n++)t.set(I(),I());return t}case 6:if(e>=ht){let t=M[e&8191];if(t)return t.read||(t.read=Pt(t)),t.read();if(e<65536){if(e==57343){let e=nn(),t=I(),n=I();Kt(t,n);let r={};if(j.keyMap)for(let t=2;t<e;t++){let e=j.decodeKey(n[t-2]);r[Ft(e)]=I()}else for(let t=2;t<e;t++){let e=n[t-2];r[Ft(e)]=I()}return r}if(e==57342){let e=nn(),t=I();for(let n=2;n<e;n++)Kt(t++,I());return I()}if(e==ht)return tn();if(j.getShared&&(rn(),t=M[e&8191],t))return t.read||(t.read=Pt(t)),t.read()}}let n=P[e];if(n)return n.handlesRead?n(I):n(I());{let t=I();for(let n=0;n<Tt.length;n++){let r=Tt[n](e,t);if(r!==void 0)return r}return new Gt(t,e)}case 7:switch(e){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;default:let t=(Et||Xt())[e];if(t!==void 0)return t;throw Error(`Unknown token `+e)}default:if(isNaN(e)){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}throw Error(`Unknown CBOR token `+e)}}const Nt=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Pt(e){if(!e)throw Error(`Structure is required in record definition`);function t(){let e=k[A++];if(e&=31,e>23)switch(e){case 24:e=k[A++];break;case 25:e=F.getUint16(A),A+=2;break;case 26:e=F.getUint32(A),A+=4;break;default:throw Error(`Expected array header, but got `+k[A-1])}let t=this.compiledReader;for(;t;){if(t.propertyCount===e)return t(I);t=t.next}if(this.slowReads++>=At){let n=this.length==e?this:this.slice(0,e);return t=j.keyMap?Function(`r`,`return {`+n.map(e=>j.decodeKey(e)).map(e=>Nt.test(e)?Ft(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`):Function(`r`,`return {`+n.map(e=>Nt.test(e)?Ft(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`),this.compiledReader&&(t.next=this.compiledReader),t.propertyCount=e,this.compiledReader=t,t(I)}let n={};if(j.keyMap)for(let t=0;t<e;t++)n[Ft(j.decodeKey(this[t]))]=I();else for(let t=0;t<e;t++)n[Ft(this[t])]=I();return n}return e.slowReads=0,t}function Ft(e){if(typeof e==`string`)return e===`__proto__`?`__proto_`:e;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return e.toString();if(e==null)return e+``;throw Error(`Invalid property name type `+typeof e)}let It=Rt;function Lt(e){It=t(1);function t(t){return function(t){let n=yt[bt++];if(n==null){if(N)return Rt(t);let r=e(A,pt,t,k);if(typeof r==`string`)n=r,yt=mt;else if(yt=r,bt=1,Ct=1,n=yt[0],n===void 0)throw Error(`Unexpected end of buffer`)}let r=n.length;return r<=t?(A+=t,n):(xt=n,St=A,Ct=A+r,A+=t,n.slice(0,t))}}}function Rt(e){let t;if(e<16&&(t=Bt(e)))return t;if(e>64&&ft)return ft.decode(k.subarray(A,A+=e));let n=A+e,r=[];for(t=``;A<n;){let e=k[A++];if(!(e&128))r.push(e);else if((e&224)==192){let t=k[A++]&63;r.push((e&31)<<6|t)}else if((e&240)==224){let t=k[A++]&63,n=k[A++]&63;r.push((e&31)<<12|t<<6|n)}else if((e&248)==240){let t=k[A++]&63,n=k[A++]&63,i=k[A++]&63,a=(e&7)<<18|t<<12|n<<6|i;a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a)}else r.push(e);r.length>=4096&&(t+=L.apply(String,r),r.length=0)}return r.length>0&&(t+=L.apply(String,r)),t}let L=String.fromCharCode;function zt(e){let t=A,n=Array(e);for(let r=0;r<e;r++){let e=k[A++];if((e&128)>0){A=t;return}n[r]=e}return L.apply(String,n)}function Bt(e){if(e<4){if(e<2){if(e===0)return``;{let e=k[A++];if((e&128)>1){--A;return}return L(e)}}{let t=k[A++],n=k[A++];if((t&128)>0||(n&128)>0){A-=2;return}if(e<3)return L(t,n);let r=k[A++];if((r&128)>0){A-=3;return}return L(t,n,r)}}{let t=k[A++],n=k[A++],r=k[A++],i=k[A++];if((t&128)>0||(n&128)>0||(r&128)>0||(i&128)>0){A-=4;return}if(e<6){if(e===4)return L(t,n,r,i);{let e=k[A++];if((e&128)>0){A-=5;return}return L(t,n,r,i,e)}}if(e<8){let a=k[A++],o=k[A++];if((a&128)>0||(o&128)>0){A-=6;return}if(e<7)return L(t,n,r,i,a,o);let s=k[A++];if((s&128)>0){A-=7;return}return L(t,n,r,i,a,o,s)}{let a=k[A++],o=k[A++],s=k[A++],c=k[A++];if((a&128)>0||(o&128)>0||(s&128)>0||(c&128)>0){A-=8;return}if(e<10){if(e===8)return L(t,n,r,i,a,o,s,c);{let e=k[A++];if((e&128)>0){A-=9;return}return L(t,n,r,i,a,o,s,c,e)}}if(e<12){let l=k[A++],u=k[A++];if((l&128)>0||(u&128)>0){A-=10;return}if(e<11)return L(t,n,r,i,a,o,s,c,l,u);let d=k[A++];if((d&128)>0){A-=11;return}return L(t,n,r,i,a,o,s,c,l,u,d)}{let l=k[A++],u=k[A++],d=k[A++],f=k[A++];if((l&128)>0||(u&128)>0||(d&128)>0||(f&128)>0){A-=12;return}if(e<14){if(e===12)return L(t,n,r,i,a,o,s,c,l,u,d,f);{let e=k[A++];if((e&128)>0){A-=13;return}return L(t,n,r,i,a,o,s,c,l,u,d,f,e)}}{let p=k[A++],m=k[A++];if((p&128)>0||(m&128)>0){A-=14;return}if(e<15)return L(t,n,r,i,a,o,s,c,l,u,d,f,p,m);let h=k[A++];if((h&128)>0){A-=15;return}return L(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}}}}}function Vt(e){return j.copyBuffers?Uint8Array.prototype.slice.call(k,A,A+=e):k.subarray(A,A+=e)}let Ht=new Float32Array(1),Ut=new Uint8Array(Ht.buffer,0,4);function Wt(){let e=k[A++],t=k[A++],n=(e&127)>>2;if(n===31)return t||e&3?NaN:e&128?-1/0:1/0;if(n===0){let n=((e&3)<<8|t)/(1<<24);return e&128?-n:n}return Ut[3]=e&128|(n>>1)+56,Ut[2]=(e&7)<<5|t>>3,Ut[1]=t<<5,Ut[0]=0,Ht[0]}Array(4096);var Gt=class{constructor(e,t){this.value=e,this.tag=t}};P[0]=e=>new Date(e),P[1]=e=>new Date(Math.round(e*1e3)),P[2]=e=>{let t=BigInt(0);for(let n=0,r=e.byteLength;n<r;n++)t=BigInt(e[n])+(t<<BigInt(8));return t},P[3]=e=>BigInt(-1)-P[2](e),P[4]=e=>+(e[1]+`e`+e[0]),P[5]=e=>e[1]*Math.exp(e[0]*Math.log(2));const Kt=(e,t)=>{e-=57344;let n=M[e];n&&n.isShared&&((M.restoreStructures||(M.restoreStructures=[]))[e]=n),M[e]=t,t.read=Pt(t)};P[105]=e=>{let t=e.length,n=e[1];Kt(e[0],n);let r={};for(let i=2;i<t;i++){let t=n[i-2];r[Ft(t)]=e[i]}return r},P[14]=e=>N?N[0].slice(N.position0,N.position0+=e):new Gt(e,14),P[15]=e=>N?N[1].slice(N.position1,N.position1+=e):new Gt(e,15);let qt={Error,RegExp};P[27]=e=>(qt[e[0]]||Error)(e[1],e[2]);const Jt=e=>{if(k[A++]!=132){let e=Error(`Packed values structure must be followed by a 4 element array`);throw k.length<A&&(e.incomplete=!0),e}let t=e();if(!t||!t.length){let e=Error(`Packed values structure must be followed by a 4 element array`);throw e.incomplete=!0,e}return Et=Et?t.concat(Et.slice(t.length)):t,Et.prefixes=e(),Et.suffixes=e(),e()};Jt.handlesRead=!0,P[51]=Jt,P[6]=e=>{if(!Et){if(j.getShared)rn();else return new Gt(e,6)}if(typeof e==`number`)return Et[16+(e>=0?2*e:-2*e-1)];let t=Error(`No support for non-integer packed references yet`);throw e===void 0&&(t.incomplete=!0),t},P[28]=e=>{wt||(wt=new Map,wt.id=0);let t=wt.id++,n=A,r=k[A],i;i=r>>5==4?[]:{};let a={target:i};wt.set(t,a);let o=e();return a.used?(Object.getPrototypeOf(i)!==Object.getPrototypeOf(o)&&(A=n,i=o,wt.set(t,{target:i}),o=e()),Object.assign(i,o)):(a.target=o,o)},P[28].handlesRead=!0,P[29]=e=>{let t=wt.get(e);return t.used=!0,t.target},P[258]=e=>new Set(e),(P[259]=e=>(j.mapsAsObjects&&(j.mapsAsObjects=!1,Dt=!0),e())).handlesRead=!0;function Yt(e,t){return typeof e==`string`?e+t:e instanceof Array?e.concat(t):Object.assign({},e,t)}function Xt(){if(!Et){if(j.getShared)rn();else throw Error(`No packed values available`)}return Et}Tt.push((e,t)=>{if(e>=225&&e<=255)return Yt(Xt().prefixes[e-224],t);if(e>=28704&&e<=32767)return Yt(Xt().prefixes[e-28672],t);if(e>=1879052288&&e<=2147483647)return Yt(Xt().prefixes[e-1879048192],t);if(e>=216&&e<=223)return Yt(t,Xt().suffixes[e-216]);if(e>=27647&&e<=28671)return Yt(t,Xt().suffixes[e-27639]);if(e>=1811940352&&e<=1879048191)return Yt(t,Xt().suffixes[e-1811939328]);if(e==1399353956)return{packedValues:Et,structures:M.slice(0),version:t};if(e==55799)return t});const Zt=new Uint8Array(new Uint16Array([1]).buffer)[0]==1,Qt=[Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?{name:`BigUint64Array`}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?{name:`BigInt64Array`}:BigInt64Array,Float32Array,Float64Array],$t=[64,68,69,70,71,72,77,78,79,85,86];for(let e=0;e<Qt.length;e++)en(Qt[e],$t[e]);function en(e,t){let n=`get`+e.name.slice(0,-5),r;typeof e==`function`?r=e.BYTES_PER_ELEMENT:e=null;for(let i=0;i<2;i++){if(!i&&r==1)continue;let a=r==2?1:r==4?2:r==8?3:0;P[i?t:t-4]=r==1||i==Zt?n=>{if(!e)throw Error(`Could not find typed array for code `+t);return!j.copyBuffers&&(r===1||r===2&&!(n.byteOffset&1)||r===4&&!(n.byteOffset&3)||r===8&&!(n.byteOffset&7))?new e(n.buffer,n.byteOffset,n.byteLength>>a):new e(Uint8Array.prototype.slice.call(n,0).buffer)}:r=>{if(!e)throw Error(`Could not find typed array for code `+t);let o=new DataView(r.buffer,r.byteOffset,r.byteLength),s=r.length>>a,c=new e(s),l=o[n];for(let e=0;e<s;e++)c[e]=l.call(o,e<<a,i);return c}}}function tn(){let e=nn(),t=A+I();for(let t=2;t<e;t++){let e=nn();A+=e}let n=A;return A=t,N=[Rt(nn()),Rt(nn())],N.position0=0,N.position1=0,N.postBundlePosition=A,A=n,I()}function nn(){let e=k[A++]&31;if(e>23)switch(e){case 24:e=k[A++];break;case 25:e=F.getUint16(A),A+=2;break;case 26:e=F.getUint32(A),A+=4}return e}function rn(){if(j.getShared){let e=an(()=>(k=null,j.getShared()))||{},t=e.structures||[];j.sharedVersion=e.version,Et=j.sharedValues=e.packedValues,M===!0?j.structures=M=t:M.splice.apply(M,[0,t.length].concat(t))}}function an(e){let t=pt,n=A,r=bt,i=St,a=Ct,o=xt,s=yt,c=wt,l=N,u=new Uint8Array(k.slice(0,pt)),d=M,f=j,p=kt,m=e();return pt=t,A=n,bt=r,St=i,Ct=a,xt=o,yt=s,wt=c,N=l,k=u,kt=p,M=d,j=f,F=new DataView(k.buffer,k.byteOffset,k.byteLength),m}function on(){k=null,wt=null,M=null}const sn=Array(147);for(let e=0;e<256;e++)sn[e]=+(`1e`+Math.floor(45.15-e*.30103));let cn=new jt({useRecords:!1});const ln=cn.decode;cn.decodeMultiple;const un={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4};let dn;try{dn=new TextEncoder}catch{}let fn,pn;const mn=typeof globalThis==`object`&&globalThis.Buffer,hn=mn!==void 0,gn=hn?mn.allocUnsafeSlow:Uint8Array,_n=hn?mn:Uint8Array,vn=hn?4294967296:2144337920;let yn,R,z,B=0,bn,V=null;const xn=/[\u0080-\uFFFF]/,Sn=Symbol(`record-id`);var Cn=class extends jt{constructor(e){super(e),this.offset=0;let t,n,r,i,a;e||={};let o=_n.prototype.utf8Write?function(e,t,n){return R.utf8Write(e,t,n)}:dn&&dn.encodeInto?function(e,t){return dn.encodeInto(e,R.subarray(t)).written}:!1,s=this,c=e.structures||e.saveStructures,l=e.maxSharedStructures;if(l??=c?128:0,l>8190)throw Error(`Maximum maxSharedStructure is 8190`);let u=e.sequential;u&&(l=0),this.structures||=[],this.saveStructures&&(this.saveShared=this.saveStructures);let d,f,p=e.sharedValues,m;if(p){m=Object.create(null);for(let e=0,t=p.length;e<t;e++)m[p[e]]=e}let h=[],g=0,_=0;this.mapEncode=function(e,t){if(this._keyMap&&!this._mapped)switch(e.constructor.name){case`Array`:e=e.map(e=>this.encodeKeys(e))}return this.encode(e,t)},this.encode=function(o,c){if(R||(R=new gn(8192),z=new DataView(R.buffer,0,8192),B=0),bn=R.length-10,bn-B<2048?(R=new gn(R.length),z=new DataView(R.buffer,0,R.length),bn=R.length-10,B=0):c===512&&(B=B+7&2147483640),t=B,s.useSelfDescribedHeader&&(z.setUint32(B,3654940416),B+=3),a=s.structuredClone?new Map:null,s.bundleStrings&&typeof o!=`string`?(V=[],V.size=1/0):V=null,n=s.structures,n){if(n.uninitialized){let e=s.getShared()||{};s.structures=n=e.structures||[],s.sharedVersion=e.version;let t=s.sharedValues=e.packedValues;if(t){m={};for(let e=0,n=t.length;e<n;e++)m[t[e]]=e}}let e=n.length;if(e>l&&!u&&(e=l),!n.transitions){n.transitions=Object.create(null);for(let t=0;t<e;t++){let e=n[t];if(!e)continue;let r,i=n.transitions;for(let n=0,a=e.length;n<a;n++){i[Sn]===void 0&&(i[Sn]=t);let a=e[n];r=i[a],r||=i[a]=Object.create(null),i=r}i[Sn]=t|1048576}}u||(n.nextId=e)}if(r&&=!1,i=n||[],f=m,e.pack){let t=new Map;if(t.values=[],t.encoder=s,t.maxValues=e.maxPrivatePackedValues||(m?16:1/0),t.objectMap=m||!1,t.samplingPackedValues=d,kn(o,t),t.values.length>0){R[B++]=216,R[B++]=51,En(4);let e=t.values;v(e),En(0),En(0),f=Object.create(m||null);for(let t=0,n=e.length;t<n;t++)f[e[t]]=t}}yn=c&Vn;try{if(yn)return;if(v(o),V&&Pn(t,v),s.offset=B,a&&a.idsToInsert){B+=a.idsToInsert.length*2,B>bn&&b(B),s.offset=B;let e=Nn(R.subarray(t,B),a.idsToInsert);return a=null,e}return c&512?(R.start=t,R.end=B,R):R.subarray(t,B)}finally{if(n){if(_<10&&_++,n.length>l&&(n.length=l),g>1e4)n.transitions=null,_=0,g=0,h.length>0&&(h=[]);else if(h.length>0&&!u){for(let e=0,t=h.length;e<t;e++)h[e][Sn]=void 0;h=[]}}if(r&&s.saveShared){s.structures.length>l&&(s.structures=s.structures.slice(0,l));let e=R.subarray(t,B);return s.updateSharedData()===!1?s.encode(o):e}c&1024&&(B=t)}},this.findCommonStringsToPack=()=>(d=new Map,m||=Object.create(null),e=>{let t=e&&e.threshold||4,n=this.pack?e.maxPrivatePackedValues||16:0;p||=this.sharedValues=[];for(let[e,i]of d)i.count>t&&(m[e]=n++,p.push(e),r=!0);for(;this.saveShared&&this.updateSharedData()===!1;);d=null});let v=n=>{B>bn&&(R=b(B));var r=typeof n,i;if(r===`string`){if(f){let t=f[n];if(t>=0){t<16?R[B++]=t+224:(R[B++]=198,t&1?v(15-t>>1):v(t-16>>1));return}if(d&&!e.pack){let e=d.get(n);e?e.count++:d.set(n,{count:1})}}let r=n.length;if(V&&r>=4&&r<1024){if((V.size+=r)>61440){let e,n=(V[0]?V[0].length*3+V[1].length:0)+10;B+n>bn&&(R=b(B+n)),R[B++]=217,R[B++]=223,R[B++]=249,R[B++]=V.position?132:130,R[B++]=26,e=B-t,B+=4,V.position&&Pn(t,v),V=[``,``],V.size=0,V.position=e}let e=xn.test(n);V[+!e]+=n,R[B++]=e?206:207,v(r);return}let a;a=r<32?1:r<256?2:r<65536?3:5;let s=r*3;if(B+s>bn&&(R=b(B+s)),r<64||!o){let e,t,o,s=B+a;for(e=0;e<r;e++)t=n.charCodeAt(e),t<128?R[s++]=t:t<2048?(R[s++]=t>>6|192,R[s++]=t&63|128):(t&64512)==55296&&((o=n.charCodeAt(e+1))&64512)==56320?(t=65536+((t&1023)<<10)+(o&1023),e++,R[s++]=t>>18|240,R[s++]=t>>12&63|128,R[s++]=t>>6&63|128,R[s++]=t&63|128):(R[s++]=t>>12|224,R[s++]=t>>6&63|128,R[s++]=t&63|128);i=s-B-a}else i=o(n,B+a,s);i<24?R[B++]=96|i:i<256?(a<2&&R.copyWithin(B+2,B+1,B+1+i),R[B++]=120,R[B++]=i):i<65536?(a<3&&R.copyWithin(B+3,B+2,B+2+i),R[B++]=121,R[B++]=i>>8,R[B++]=i&255):(a<5&&R.copyWithin(B+5,B+3,B+3+i),R[B++]=122,z.setUint32(B,i),B+=4),B+=i}else if(r===`number`){if(!this.alwaysUseFloat&&n>>>0===n)n<24?R[B++]=n:n<256?(R[B++]=24,R[B++]=n):n<65536?(R[B++]=25,R[B++]=n>>8,R[B++]=n&255):(R[B++]=26,z.setUint32(B,n),B+=4);else if(!this.alwaysUseFloat&&n>>0===n)n>=-24?R[B++]=31-n:n>=-256?(R[B++]=56,R[B++]=~n):n>=-65536?(R[B++]=57,z.setUint16(B,~n),B+=2):(R[B++]=58,z.setUint32(B,~n),B+=4);else{let e;if((e=this.useFloat32)>0&&n<4294967296&&n>=-2147483648){R[B++]=250,z.setFloat32(B,n);let t;if(e<4||(t=n*sn[(R[B]&127)<<1|R[B+1]>>7])>>0===t){B+=4;return}B--}R[B++]=251,z.setFloat64(B,n),B+=8}}else if(r===`object`){if(!n)R[B++]=246;else{if(a){let e=a.get(n);if(e){if(R[B++]=216,R[B++]=29,R[B++]=25,!e.references){let t=a.idsToInsert||(a.idsToInsert=[]);e.references=[],t.push(e)}e.references.push(B-t),B+=2;return}a.set(n,{offset:B-t})}let e=n.constructor;if(e===Object)y(n);else if(e===Array){i=n.length,i<24?R[B++]=128|i:En(i);for(let e=0;e<i;e++)v(n[e])}else if(e===Map){if((this.mapsAsObjects?this.useTag259ForMaps!==!1:this.useTag259ForMaps)&&(R[B++]=217,R[B++]=1,R[B++]=3),i=n.size,i<24?R[B++]=160|i:i<256?(R[B++]=184,R[B++]=i):i<65536?(R[B++]=185,R[B++]=i>>8,R[B++]=i&255):(R[B++]=186,z.setUint32(B,i),B+=4),s.keyMap)for(let[e,t]of n)v(s.encodeKey(e)),v(t);else for(let[e,t]of n)v(e),v(t)}else{for(let e=0,t=fn.length;e<t;e++){let t=pn[e];if(n instanceof t){let t=fn[e],r=t.tag;r??=t.getTag&&t.getTag.call(this,n),r<24?R[B++]=192|r:r<256?(R[B++]=216,R[B++]=r):r<65536?(R[B++]=217,R[B++]=r>>8,R[B++]=r&255):r>-1&&(R[B++]=218,z.setUint32(B,r),B+=4),t.encode.call(this,n,v,b);return}}if(n[Symbol.iterator]){if(yn){let e=Error(`Iterable should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}R[B++]=159;for(let e of n)v(e);R[B++]=255;return}if(n[Symbol.asyncIterator]||On(n)){let e=Error(`Iterable/blob should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}if(this.useToJSON&&n.toJSON){let e=n.toJSON();if(e!==n)return v(e)}y(n)}}}else if(r===`boolean`)R[B++]=n?245:244;else if(r===`bigint`){if(n<BigInt(1)<<BigInt(64)&&n>=0)R[B++]=27,z.setBigUint64(B,n);else if(n>-(BigInt(1)<<BigInt(64))&&n<0)R[B++]=59,z.setBigUint64(B,-n-BigInt(1));else if(this.largeBigIntToFloat)R[B++]=251,z.setFloat64(B,Number(n));else{n>=BigInt(0)?R[B++]=194:(R[B++]=195,n=BigInt(-1)-n);let e=[];for(;n;)e.push(Number(n&BigInt(255))),n>>=BigInt(8);Mn(new Uint8Array(e.reverse()),b);return}B+=8}else if(r===`undefined`)R[B++]=247;else throw Error(`Unknown type: `+r)},y=this.useRecords===!1?this.variableMapSize?e=>{let t=Object.keys(e),n=Object.values(e),r=t.length;if(r<24?R[B++]=160|r:r<256?(R[B++]=184,R[B++]=r):r<65536?(R[B++]=185,R[B++]=r>>8,R[B++]=r&255):(R[B++]=186,z.setUint32(B,r),B+=4),s.keyMap)for(let e=0;e<r;e++)v(s.encodeKey(t[e])),v(n[e]);else for(let e=0;e<r;e++)v(t[e]),v(n[e])}:e=>{R[B++]=185;let n=B-t;B+=2;let r=0;if(s.keyMap)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(s.encodeKey(t)),v(e[t]),r++);else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(t),v(e[t]),r++);R[n+++t]=r>>8,R[n+t]=r&255}:(e,t)=>{let n,a=i.transitions||(i.transitions=Object.create(null)),o=0,s=0,c,u;if(this.keyMap){u=Object.keys(e).map(e=>this.encodeKey(e)),s=u.length;for(let e=0;e<s;e++){let t=u[e];n=a[t],n||(n=a[t]=Object.create(null),o++),a=n}}else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(n=a[t],n||(a[Sn]&1048576&&(c=a[Sn]&65535),n=a[t]=Object.create(null),o++),a=n,s++);let d=a[Sn];if(d!==void 0)d&=65535,R[B++]=217,R[B++]=d>>8|224,R[B++]=d&255;else if(u||=a.__keys__||(a.__keys__=Object.keys(e)),c===void 0?(d=i.nextId++,d||(d=0,i.nextId=1),d>=256&&(i.nextId=(d=l)+1)):d=c,i[d]=u,d<l){R[B++]=217,R[B++]=d>>8|224,R[B++]=d&255,a=i.transitions;for(let e=0;e<s;e++)(a[Sn]===void 0||a[Sn]&1048576)&&(a[Sn]=d),a=a[u[e]];a[Sn]=d|1048576,r=!0}else{if(a[Sn]=d,z.setUint32(B,3655335680),B+=3,o&&(g+=_*o),h.length>=256-l&&(h.shift()[Sn]=void 0),h.push(a),En(s+2),v(57344+d),v(u),t)return;for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t]);return}if(s<24?R[B++]=128|s:En(s),!t)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t])},b=e=>{let n;if(e>16777216){if(e-t>vn)throw Error(`Encoded buffer would be larger than maximum buffer size`);n=Math.min(vn,Math.round(Math.max((e-t)*(e>67108864?1.25:2),4194304)/4096)*4096)}else n=(Math.max(e-t<<2,R.length-1)>>12)+1<<12;let r=new gn(n);return z=new DataView(r.buffer,0,n),R.copy?R.copy(r,0,t,e):r.set(R.slice(t,e)),B-=t,t=0,bn=r.length-10,R=r},x=100,S=1e3;this.encodeAsIterable=function(e,t){return T(e,t,C)},this.encodeAsAsyncIterable=function(e,t){return T(e,t,te)};function*C(e,n,r){let i=e.constructor;if(i===Object){let t=s.useRecords!==!1;t?y(e,!0):wn(Object.keys(e).length,160);for(let r in e){let i=e[r];t||v(r),i&&typeof i==`object`?n[r]?yield*C(i,n[r]):yield*w(i,n,r):v(i)}}else if(i===Array){let r=e.length;En(r);for(let i=0;i<r;i++){let r=e[i];r&&(typeof r==`object`||B-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r)}}else if(e[Symbol.iterator]&&!e.buffer){R[B++]=159;for(let r of e)r&&(typeof r==`object`||B-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r);R[B++]=255}else On(e)?(wn(e.size,64),yield R.subarray(t,B),yield e,ee()):e[Symbol.asyncIterator]?(R[B++]=159,yield R.subarray(t,B),yield e,ee(),R[B++]=255):v(e);r&&B>t?yield R.subarray(t,B):B-t>x&&(yield R.subarray(t,B),ee())}function*w(e,n,r){let i=B-t;try{v(e),B-t>x&&(yield R.subarray(t,B),ee())}catch(a){if(a.iteratorNotHandled)n[r]={},B=t+i,yield*C.call(this,e,n[r]);else throw a}}function ee(){x=S,s.encode(null,Vn)}function T(e,t,n){return x=t&&t.chunkThreshold?S=t.chunkThreshold:100,e&&typeof e==`object`?(s.encode(null,Vn),n(e,s.iterateProperties||={},!0)):[s.encode(e)]}async function*te(e,t){for(let n of C(e,t,!0)){let e=n.constructor;if(e===_n||e===Uint8Array)yield n;else if(On(n)){let e=n.stream().getReader(),t;for(;!(t=await e.read()).done;)yield t.value}else if(n[Symbol.asyncIterator])for await(let e of n)ee(),e?yield*te(e,t.async||={}):yield s.encode(e);else yield n}}}useBuffer(e){R=e,z=new DataView(R.buffer,R.byteOffset,R.byteLength),B=0}clearSharedData(){this.structures&&=[],this.sharedValues&&=void 0}updateSharedData(){let e=this.sharedVersion||0;this.sharedVersion=e+1;let t=this.structures.slice(0),n=new Tn(t,this.sharedValues,this.sharedVersion),r=this.saveShared(n,t=>(t&&t.version||0)==e);return r===!1?(n=this.getShared()||{},this.structures=n.structures||[],this.sharedValues=n.packedValues,this.sharedVersion=n.version,this.structures.nextId=this.structures.length):t.forEach((e,t)=>this.structures[t]=e),r}};function wn(e,t){e<24?R[B++]=t|e:e<256?(R[B++]=t|24,R[B++]=e):e<65536?(R[B++]=t|25,R[B++]=e>>8,R[B++]=e&255):(R[B++]=t|26,z.setUint32(B,e),B+=4)}var Tn=class{constructor(e,t,n){this.structures=e,this.packedValues=t,this.version=n}};function En(e){e<24?R[B++]=128|e:e<256?(R[B++]=152,R[B++]=e):e<65536?(R[B++]=153,R[B++]=e>>8,R[B++]=e&255):(R[B++]=154,z.setUint32(B,e),B+=4)}const Dn=typeof Blob>`u`?function(){}:Blob;function On(e){if(e instanceof Dn)return!0;let t=e[Symbol.toStringTag];return t===`Blob`||t===`File`}function kn(e,t){switch(typeof e){case`string`:if(e.length>3){if(t.objectMap[e]>-1||t.values.length>=t.maxValues)return;let n=t.get(e);if(n)++n.count==2&&t.values.push(e);else if(t.set(e,{count:1}),t.samplingPackedValues){let n=t.samplingPackedValues.get(e);n?n.count++:t.samplingPackedValues.set(e,{count:1})}}break;case`object`:if(e){if(e instanceof Array)for(let n=0,r=e.length;n<r;n++)kn(e[n],t);else{let r=!t.encoder.useRecords;for(var n in e)e.hasOwnProperty(n)&&(r&&kn(n,t),kn(e[n],t))}}break;case`function`:console.log(e)}}const An=new Uint8Array(new Uint16Array([1]).buffer)[0]==1;pn=[Date,Set,Error,RegExp,Gt,ArrayBuffer,Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?function(){}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?function(){}:BigInt64Array,Float32Array,Float64Array,Tn],fn=[{tag:1,encode(e,t){let n=e.getTime()/1e3;(this.useTimestamp32||e.getMilliseconds()===0)&&n>=0&&n<4294967296?(R[B++]=26,z.setUint32(B,n),B+=4):(R[B++]=251,z.setFloat64(B,n),B+=8)}},{tag:258,encode(e,t){t(Array.from(e))}},{tag:27,encode(e,t){t([e.name,e.message])}},{tag:27,encode(e,t){t([`RegExp`,e.source,e.flags])}},{getTag(e){return e.tag},encode(e,t){t(e.value)}},{encode(e,t,n){Mn(e,n)}},{getTag(e){if(e.constructor===Uint8Array&&(this.tagUint8Array||hn&&this.tagUint8Array!==!1))return 64},encode(e,t,n){Mn(e,n)}},jn(68,1),jn(69,2),jn(70,4),jn(71,8),jn(72,1),jn(77,2),jn(78,4),jn(79,8),jn(85,4),jn(86,8),{encode(e,t){let n=e.packedValues||[],r=e.structures||[];if(n.values.length>0){R[B++]=216,R[B++]=51,En(4);let e=n.values;t(e),En(0),En(0),packedObjectMap=Object.create(sharedPackedObjectMap||null);for(let t=0,n=e.length;t<n;t++)packedObjectMap[e[t]]=t}if(r){z.setUint32(B,3655335424),B+=3;let n=r.slice(0);n.unshift(57344),n.push(new Gt(e.version,1399353956)),t(n)}else t(new Gt(e.version,1399353956))}}];function jn(e,t){return!An&&t>1&&(e-=4),{tag:e,encode:function(e,t){let n=e.byteLength,r=e.byteOffset||0,i=e.buffer||e;t(hn?mn.from(i,r,n):new Uint8Array(i,r,n))}}}function Mn(e,t){let n=e.byteLength;n<24?R[B++]=64+n:n<256?(R[B++]=88,R[B++]=n):n<65536?(R[B++]=89,R[B++]=n>>8,R[B++]=n&255):(R[B++]=90,z.setUint32(B,n),B+=4),B+n>=R.length&&t(B+n),R.set(e.buffer?e:new Uint8Array(e),B),B+=n}function Nn(e,t){let n,r=t.length*2,i=e.length-r;t.sort((e,t)=>e.offset>t.offset?1:-1);for(let n=0;n<t.length;n++){let r=t[n];r.id=n;for(let t of r.references)e[t++]=n>>8,e[t]=n&255}for(;n=t.pop();){let t=n.offset;e.copyWithin(t+r,t,i),r-=2;let a=t+r;e[a++]=216,e[a++]=28,i=t}return e}function Pn(e,t){z.setUint32(V.position+e,B-V.position-e+1);let n=V;V=null,t(n[0]),t(n[1])}let Fn=new Cn({useRecords:!1});const In=Fn.encode;Fn.encodeAsIterable,Fn.encodeAsAsyncIterable;const{NEVER:Ln,ALWAYS:Rn,DECIMAL_ROUND:zn,DECIMAL_FIT:Bn}=un,Vn=2048;if(process.env.CBOR_NATIVE_ACCELERATION_DISABLED===void 0||process.env.CBOR_NATIVE_ACCELERATION_DISABLED.toLowerCase()!==`true`){let t;try{t=typeof e==`function`?e(`cbor-extract`):qe(import.meta.url)(`cbor-extract`),t&&Lt(t.extractStrings)}catch{}}var Hn=a();const Un=`5.1.0`,Wn=T(`@workflow/world-vercel//httpPools`,1,()=>({dispatcher:void 0,queueDispatcher:void 0,streamDispatcher:void 0,streamCloseDispatcher:void 0,nodeHttpAgents:void 0})),Gn={connections:8,keepAliveTimeout:1e4},Kn=3e5,qn=3e5,Jn={...Gn,allowH2:!1,pipelining:1},Yn=()=>oe(`WORKFLOW_VERCEL_QUEUE_TIMEOUT_MS`,3e4,{integer:!0,min:5e3,max:12e4});function Xn(){let e=Yn();return{...Jn,connections:oe(`WORKFLOW_VERCEL_QUEUE_CONNECTIONS`,64,{integer:!0,min:1,max:1024}),headersTimeout:e,bodyTimeout:e}}const Zn=Hn.DecoratorHandler;function Qn(e){class t extends Zn{#e=!1;#t;#n;constructor(t){super(t),this.#n=setTimeout(()=>{this.#e=!0,this.#r()},e),this.#n.unref?.()}#r(){this.#t?.abort(Error(`Queue request exceeded its ${e}ms deadline`))}onRequestStart(e,t){this.#t=e,super.onRequestStart(e,t),this.#e&&this.#r()}onResponseEnd(e,t){clearTimeout(this.#n),super.onResponseEnd(e,t)}onResponseError(e,t){clearTimeout(this.#n),super.onResponseError(e,t)}}return e=>(n,r)=>e(n,new t(r))}const $n=6e4,er={...Gn,headersTimeout:$n,bodyTimeout:$n,allowH2:!0,pipelining:100,initialWindowSize:4194304,connectionWindowSize:16777216},tr={...Gn,headersTimeout:$n,bodyTimeout:$n,allowH2:!1,pipelining:1},nr={...Gn,allowH2:!0,pipelining:1},rr={retryAfter:!0,statusCodes:[500,502,503,504]},ir={...rr,errorCodes:[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`,`ERR_HTTP2_STREAM_ERROR`]},ar={retryAfter:!0,methods:[`PUT`],statusCodes:[429]},or={retryAfter:!0,methods:[`PUT`],statusCodes:[429,500,502,503,504]};function sr(){return process.env.WORKFLOW_H2_MULTIPLEX!==`0`}function cr(e){if(!e||typeof e!=`object`||Array.isArray(e))return NaN;let t=e,n=t[`content-length`]??t[`Content-Length`];return typeof n==`string`||typeof n==`number`?Number(n):NaN}function lr(e){return t=>(n,r)=>{let i=n.body,a=!!i&&typeof i!=`string`&&!Buffer.isBuffer(i)&&typeof i[Symbol.asyncIterator]==`function`,o=cr(n.headers);return a?!(o>=0)||o>1048576?e?e.dispatch(n,r):t({...n,idempotent:!0},r):((async()=>{try{let e=[];for await(let t of i)e.push(Buffer.from(t));t({...n,body:Buffer.concat(e),idempotent:!0},r)}catch(e){r.onError?.(e)}})(),!0):t({...n,idempotent:!0},r)}}const ur=new Set([`UND_ERR_INFO`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`ERR_HTTP2_GOAWAY_SESSION`,`ERR_HTTP2_INVALID_SESSION`,`ERR_HTTP2_SESSION_ERROR`,`ERR_HTTP2_STREAM_ERROR`]);function dr(e){let t=e;for(let e=0;t&&e<8;e++){let e=t.code;if(typeof e==`string`&&ur.has(e))return!0;t=t.cause}return!1}function fr(e,t){let n,r=0,i=0;function a(e){let t=setTimeout(()=>{Promise.resolve(e.close?.()).catch(()=>void 0)},5e3),n=setTimeout(()=>{Promise.resolve(e.destroy?.()).catch(()=>void 0)},6e4);t.unref?.(),n.unref?.()}return{get(){return n??=e(),n},note(e,o){if(!n||e!==n)return;if(o===void 0){r=0;return}if(!dr(o)||(r++,r<3))return;let s=Date.now();if(s-i<5e3)return;i=s,r=0;let c=n;n=void 0,console.warn(`[workflow] ${t}: rebuilding connection pool after 3 consecutive transport failures`),a(c)}}}const pr=T(`@workflow/world-vercel//eventsDispatcherRecycler@${Un}`,1,()=>fr(()=>Cr(),`events transport`));function mr(e,t){pr.note(e,t)}function hr(e,t){return e?.dispatcher?e.dispatcher:_e()?void 0:t()}function gr(e){if(!e?.dispatcher&&_e())return Wn.nodeHttpAgents??=s({maxSockets:Gn.connections,keepAliveMs:Gn.keepAliveTimeout}),Wn.nodeHttpAgents}function _r(e){return hr(e,kr)}function vr(e){return hr(e,Or)}function yr(e){return hr(e,()=>pr.get())}function br(e){return hr(e,Ar)}function xr(e){return hr(e,jr)}function Sr(e,t){return new Hn.RetryAgent(new Hn.Agent(e),t)}function Cr(e){let t=sr(),n=new Hn.RetryAgent(new Hn.Agent({...t?er:tr,...e}),ir);if(!t||!wr(n))return n;let r=new Hn.RetryAgent(new Hn.Agent({...tr,...e}),ir);return Tr(n,n.compose(lr(r)),r)}function wr(e){return typeof e.compose==`function`}function Tr(e,t,n){return new Proxy(t,{get:(t,r)=>{if(r!==`close`&&r!==`destroy`)return t[r];let i=e[r].bind(e);if(!n)return i;let a=n[r].bind(n);return async(...e)=>{await Promise.all([i(...e),a(...e)])}}})}function Er(e,t){return new Hn.RetryAgent(new Hn.Agent({...nr,...t}),e)}function Dr(){let e=new Hn.Agent(Xn());return new Hn.RetryAgent(wr(e)?e.compose(Qn(Yn())):e,rr)}function Or(){return Wn.queueDispatcher??=Dr(),Wn.queueDispatcher}function kr(){return Wn.dispatcher??=Sr(Jn,rr),Wn.dispatcher}function Ar(){return Wn.streamDispatcher??=Er(ar),Wn.streamDispatcher}function jr(){return Wn.streamCloseDispatcher??=Er(or),Wn.streamCloseDispatcher}const Mr=T(`@workflow/world-vercel//telemetry`,1,()=>({apiPromise:null,tracerPromise:null}));async function Nr(){return Mr.apiPromise||=import(`../../@opentelemetry/api/index.js`).catch(e=>(typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`)&&console.warn(`[workflow] @opentelemetry/api unavailable — world-vercel spans disabled:`,e instanceof Error?e.message:e),null)),Mr.apiPromise}function Pr(){return typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`)}let Fr=!1;function Ir(e,t){if(!Fr&&Pr()){Fr=!0;try{let n=globalThis[Symbol.for(`opentelemetry.js.api.1`)],r=e.trace.getTracerProvider(),i=r.getDelegate?.()??r,a=t.startSpan(`workflow.otel.probe.world_vercel`);console.warn(`[workflow:otel-diag] world-vercel`,JSON.stringify({globalRegistrationVersion:n?.version??null,providerCtor:r?.constructor?.name??null,delegateCtor:i?.constructor?.name??null,tracerCtor:t?.constructor?.name??null,probeCtor:a?.constructor?.name??null,probeRecording:a.isRecording()})),a.end()}catch(e){console.warn(`[workflow:otel-diag] world-vercel failed:`,e instanceof Error?e.message:e)}}}async function Lr(){return Mr.tracerPromise||=Nr().then(e=>{if(!e)return null;let t=e.trace.getTracer(`workflow`);return Ir(e,t),t}),Mr.tracerPromise}async function Rr(e,...t){let[n,r]=await Promise.all([Lr(),Nr()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function zr(e){let t=await Nr();if(t)return t.SpanKind[e]}async function Br(e){for(let[t,n]of Object.entries(await Vr()))e.set(t,n)}async function Vr(){let e=await Nr();if(!e)return{};let t={};return e.propagation.inject(e.context.active(),t),t}function H(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Hr=H(`http.request.method`),Ur=H(`url.full`),Wr=H(`server.address`),Gr=H(`server.port`),Kr=H(`http.response.status_code`),qr=H(`error.type`),Jr=H(`network.protocol.name`),Yr=H(`workflow.world.parse.format`),Xr=H(`peer.service`),Zr=H(`rpc.system`),Qr=H(`rpc.service`),$r=H(`rpc.method`),ei=H(`workflow.run.id`),ti=H(`step.id`),ni=H(`workflow.stream.name`),ri=H(`workflow.stream.operation`),ii=H(`workflow.stream.start_index`),ai=H(`workflow.events.transport`),oi=H(`workflow.http.transport`),si=H(`workflow.event.type`),ci=H(`workflow.step_start.mode`),li=H(`workflow.step_start.owner_stamped`),ui=H(`workflow.client.version`),di=H(`step.stso_ms`),fi=H(`step.latency_optimizations`),pi=H(`workflow.events.ws.url`),mi=H(`workflow.events.ws.req_id`),hi=H(`workflow.events.ws.request_parts`),gi=H(`workflow.events.ws.reply_parts`),_i=H(`workflow.events.ws.reconnect_attempt`),vi=new Set([`UND_ERR_INFO`,`UND_ERR_REQ_RETRY`,`UND_ERR_SOCKET`,`UND_ERR_CONNECT`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_CLOSED`,`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`EAI_AGAIN`,`EPIPE`,`ETIMEDOUT`]);function yi(e){let t=e;for(let e=0;t&&e<8;e++){let e=t.code;if(typeof e==`string`&&vi.has(e))return e;t=t.cause}}function bi(e){let{protocol:t,username:n,password:r}=new URL(e);if(t!==`http:`&&t!==`https:`)throw TypeError(`Unsupported URL protocol ${t}; expected http: or https:`);if(n||r)throw TypeError(`HTTP(S) URLs with embedded credentials are unsupported`)}const xi=new Set([`ERR_INVALID_URL`,`ERR_INVALID_ARG_TYPE`,`ERR_INVALID_ARG_VALUE`,`ERR_INVALID_CHAR`,`ERR_INVALID_HTTP_TOKEN`,`ERR_HTTP_INVALID_HEADER_VALUE`,`ERR_UNESCAPED_CHARACTERS`,`UND_ERR_INVALID_ARG`,`UND_ERR_NOT_SUPPORTED`]);function Si(e){let t=yi(e);if(t)return t;let n,r,i=e;for(let e=0;i&&e<8;e++){let{code:e,name:t,message:a}=i;if(t===`Error`&&a===`bad port`&&e===void 0)return;if(typeof e==`string`&&e){if(xi.has(e))return;n??=e}typeof t==`string`&&t&&(r=t),i=i.cause}return n??r??`unknown`}const Ci=()=>oe(`WORKFLOW_REQUEST_TIMEOUT_MS`,6e4,{integer:!0,min:1e4,max:12e4}),wi=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`),Ti=[`x-vercel-id`,`x-vercel-error`,`x-vercel-mitigated`];function Ei(e){return Ti.flatMap(t=>{let n=e.get(t);return n?[`${t}=${n}`]:[]})}function Di(e){let t=Ei(e);return t.length>0?` (${t.join(`; `)})`:``}function Oi(e,t,n,r){if(!wi)return;let i=Ei(n.headers),a=i.length>0?`; ${i.join(`; `)}`:``;console.debug(`[workflow:world-vercel:http] ${e} ${t} -> ${n.status} (${r}ms${a})`)}function ki(e,t,n){if(!process.env.DEBUG)return;let r=Array.from(n.entries()).filter(([e])=>e.toLowerCase()!==`authorization`).map(([e,t])=>`-H "${e}: ${t}"`).join(` `);console.error(`Failed to fetch, reproduce with:\ncurl -X ${e} ${r} "${t}"`)}function Ai(e){if(!e)return;let t=parseInt(e,10);return Number.isNaN(t)?void 0:t}function ji(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}function Mi(e,t,n={}){let{retryAfter:r,code:i,url:a,mitigated:o,details:s}=n;if(e===409&&i===`hook-force-claimed`){let e=s&&typeof s==`object`?s.claimedBy:void 0;return new Ee(``,typeof e?.runId==`string`?e.runId:`unknown`,typeof e?.hookId==`string`?e.hookId:void 0)}if(e===409)return new De(t);if(e===410){if(i===`stream-expired`){let e=s&&typeof s==`object`?s:void 0,n=typeof e?.expiredAt==`string`?new Date(e.expiredAt):void 0;return new Ae(t,typeof e?.runId==`string`?e.runId:void 0,typeof e?.streamId==`string`?e.streamId:void 0,n&&!Number.isNaN(n.getTime())?n:void 0)}return new Ce(t)}return e===412?new Te(t,{retryAfter:r,details:s}):e===425?new Se(t,{retryAfter:r}):e===429?Ni(e,o)?new D(`${t} (x-vercel-mitigated=challenge)`,{url:a,status:e,code:`TRANSPORT`,retryAfter:r}):new je(t,{retryAfter:r}):new D(t,{url:a,status:e,code:i,retryAfter:r})}function Ni(e,t){return e===429&&t===`challenge`}async function Pi(e){return e?.token??process.env.VERCEL_TOKEN??await(0,dt.getVercelOidcToken)().catch(()=>null)}function Fi(e){try{let t=new URL(e),n=t.protocol===`https:`||t.protocol===`wss:`;return{serverAddress:t.hostname,serverPort:t.port?parseInt(t.port,10):n?443:80}}catch{return{}}}function Ii(e){let{method:t,url:n,peerService:r}=e,{serverAddress:i,serverPort:a}=Fi(n);return{...Hr(t),...Ur(n),...i?Wr(i):{},...a?Gr(a):{},...Xr(r),...Zr(`http`),...Qr(r)}}async function Li(e,t){let{method:n,url:r,peerService:i=`workflow-server`,spanName:a,attributes:o}=e;return Rr(a??`http ${n}`,{kind:await zr(`CLIENT`)},async e=>{if(a&&wi&&e){let t=e.spanContext();console.warn(`[workflow:otel-diag] span-open`,JSON.stringify({spanName:a,traceId:t.traceId,spanId:t.spanId,recording:e.isRecording()}))}return e?.setAttributes(Ii({method:n,url:r,peerService:i})),o&&e?.setAttributes(o),t(e)})}function Ri(e,t){e?.setAttributes({...Kr(t)}),(t<200||t>=300)&&e?.setAttributes({...qr(`HTTP ${t}`)})}async function zi(e){let{method:t,url:n,headers:r,body:a,dispatcher:o,peerService:s,timeoutMs:c=Ci(),signal:l,injectTraceContext:u=!0,cacheBust:d=!0,logLabel:f,buildError:p,spanName:m,attributes:h,durationAttribute:g,onTransportOutcome:_,deferTransportSuccessUntilBody:v=!1,onRequestDispatched:y,transportErrorCode:b=`TRANSPORT`}=e,x=f??n;return bi(n),Li({method:t,url:n,peerService:s,spanName:m,attributes:h},async e=>{u&&await Br(r),d&&r.set(`X-Request-Time`,Date.now().toString());let s=c==null?void 0:AbortSignal.timeout(c),f=l&&s?AbortSignal.any([l,s]):l??s,m=o?void 0:gr();e?.setAttributes({...oi(m?`node-http`:`undici`)});let h=Date.now(),S;try{let e=m?i(n,{method:t,headers:r,body:a,signal:f,agents:m,headersTimeoutMs:Kn,bodyTimeoutMs:qn}):fetch(n,{method:t,headers:r,body:a,signal:f,dispatcher:o});y?.(),S=await e}catch(r){let i=Date.now()-h;if(_?.(r),r instanceof Error&&(r.name===`TimeoutError`||r.name===`AbortError`)){let a=`${t} ${x} timed out after ${i}ms`,o=b===`STREAM_ERROR`?`STREAM_ERROR`:`TIMEOUT`,s=o===`STREAM_ERROR`?new E(a,{url:n,cause:r}):new D(a,{url:n,code:o,cause:r});throw e?.setAttributes({...qr(o)}),e?.recordException?.(s),s}let a=Si(r);if(a){let o=`${t} ${x} transport failure after ${i}ms (${a})`,s=b===`STREAM_ERROR`?`STREAM_ERROR`:`TRANSPORT`,c=s===`STREAM_ERROR`?new E(o,{url:n,cause:r}):new D(o,{url:n,code:s,cause:r});throw e?.setAttributes({...qr(s)}),e?.recordException?.(c),c}throw r}let C=Date.now()-h;if(S.ok&&!v&&_?.(void 0,S),Oi(t,x,S,C),Ri(e,S.status),g&&e?.setAttributes({[g]:C}),!S.ok){if(ki(t,n,r),p){let r;try{r=await p(S)}catch(r){let i=yi(r);if(i){_?.(r,S);let a=`${t} ${x} response body transport failure (${i})`,o=b===`STREAM_ERROR`?new E(a,{url:n,cause:r}):new D(a,{url:n,code:`TRANSPORT`,cause:r});throw e?.setAttributes({...qr(b)}),e?.recordException?.(o),o}throw _?.(void 0,S),r}throw _?.(void 0,S),e?.recordException?.(r),r}let i=``;try{i=await S.text(),_?.(void 0,S)}catch(e){_?.(e,S)}let a=Mi(S.status,`${t} ${x} -> HTTP ${S.status}: ${S.statusText}${i?` ${i}`:``}${Di(S.headers)}`,{url:n,retryAfter:Ai(S.headers.get(`Retry-After`))});throw e?.recordException?.(a),a}return S})}const Bi=new Set([`GET`,`HEAD`]),Vi=()=>process.env.VERCEL_WORKFLOW_SERVER_URL||``,Hi=()=>process.env.WORKFLOW_TEST_LIMIT_OVERRIDES?.trim()||``;function Ui(e){return e}const Wi=(...e)=>e.filter(Boolean).join(` `),Gi=()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;return e?`@workflow/world-vercel/${Un} node-${process.version} ${$e.platform()} (${$e.arch()}) ${e}`:`@workflow/world-vercel/${Un} node-${process.version} ${$e.platform()} (${$e.arch()})`},Ki=e=>{let t=e?.projectConfig,n=Vi()||`https://vercel-workflow.com`,r=process.env.WORKFLOW_VERCEL_BACKEND_URL,i=!!(t?.projectId&&t?.teamId);return{baseUrl:i?r||`https://api.vercel.com/v1/workflow`:`${n}/api`,usingProxy:i}},qi=e=>{let t=e?.projectConfig;return t?t.environment||`production`:process.env.VERCEL_TARGET_ENV||process.env.VERCEL_ENV||void 0},Ji=(e,t)=>{let n=e?.projectConfig,r=new Headers(e?.headers);r.set(`User-Agent`,Wi(Gi(),r.get(`User-Agent`)));let i=Hi();i&&r.set(`x-workflow-test-limit-overrides`,i),n&&(r.set(`x-vercel-environment`,qi(e)),n.projectId&&r.set(`x-vercel-project-id`,n.projectId),n.teamId&&r.set(`x-vercel-team-id`,n.teamId));let a=Vi();return a&&t.usingProxy&&r.set(`x-vercel-workflow-api-url`,a),r};async function U(e){let{baseUrl:t,usingProxy:n}=Ki(e),r=Ji(e,{usingProxy:n});if(n){if(!e?.token)throw Error(`world-vercel: api-workflow proxy requested (${t}) but no Vercel auth token was provided. Pass one as \`config.token\` (the SDK reads it from \`WORKFLOW_VERCEL_AUTH_TOKEN\`).`);r.set(`Authorization`,`Bearer ${e.token}`)}else{let t;try{t=await(0,dt.getVercelOidcToken)()}catch{}let n=e?.token??t;n&&r.set(`Authorization`,`Bearer ${n}`),t&&r.set(`x-vercel-trusted-oidc-idp-token`,t)}return{baseUrl:t,headers:r,usingProxy:n}}async function W({endpoint:e,options:t={},config:n={},schema:r,data:a,onResponse:o,retryConnectTimeout:s=!1}){let c=(t.method||`GET`).toUpperCase(),{baseUrl:l,headers:u}=await U(n),d=`${l}${e}`;return bi(d),Rr(`http ${c}`,{kind:await zr(`CLIENT`)},async l=>{l?.setAttributes(Ii({method:c,url:d,peerService:`workflow-server`})),u.set(`Accept`,`application/cbor`),await Br(u);let f;a!==void 0&&(u.set(`Content-Type`,`application/cbor`),f=In(a));let p=Bi.has(c),m,h=``;for(let r=0;;r++){u.set(`X-Request-Time`,Date.now().toString());let a=AbortSignal.timeout(Ci()),g=t.signal?AbortSignal.any([t.signal,a]):a,_=gr(n),v=_?void 0:new Request(d,{...t,body:f,headers:u,signal:g}),y=_?void 0:_r(n);l?.setAttributes({...oi(_?`node-http`:`undici`)});let b=Date.now(),x;try{x=_?await i(d,{method:c,headers:u,body:f,signal:g,agents:_,headersTimeoutMs:Kn,bodyTimeoutMs:qn}):await fetch(v,{dispatcher:y})}catch(t){let n=Date.now()-b;if(t instanceof Error&&(t.name===`TimeoutError`||t.name===`AbortError`)){let r=new D(`${c} ${e} timed out after ${n}ms`,{url:d,code:`TIMEOUT`,cause:t});throw l?.setAttributes({...qr(`TIMEOUT`)}),l?.recordException?.(r),r}let i=Si(t);if(i){if(s&&p&&i===`UND_ERR_CONNECT_TIMEOUT`&&r===0){await new Promise(e=>setTimeout(e,100));continue}let a=new D(`${c} ${e} transport failure after ${n}ms (${i})`,{url:d,code:`TRANSPORT`,cause:t});throw l?.setAttributes({...qr(`TRANSPORT`)}),l?.recordException?.(a),a}throw t}let S=Date.now()-b;if(h=Di(x.headers),Oi(c,e,x,S),l?.setAttributes({...Kr(x.status)}),!x.ok){let t=await Xi(x).then(e=>e.data).catch(()=>({})),n=t.code??t.error;ki(c,d,u);let r=Ai(x.headers.get(`Retry-After`)),i=(t.message||`${c} ${e} -> HTTP ${x.status}: ${x.statusText}`)+h,a=Mi(x.status,i,{url:d,code:n,retryAfter:r,mitigated:x.headers.get(`x-vercel-mitigated`),details:t.details});throw l?.setAttributes({...qr(n||`HTTP ${x.status}`)}),l?.recordException?.(a),a}o?.(x);try{m=await Rr(`world.parse`,async e=>{let t=await Xi(x),n=(x.headers.get(`Content-Type`)||``).includes(`application/cbor`);return e?.setAttributes({...Yr(n?`cbor`:`json`)}),t});break}catch(t){if(p&&r<2){let n=100*2**r;l?.setAttributes({...qr(`PARSE_ERROR_RETRYING`)}),wi&&console.debug(`[workflow:world-vercel:http] ${c} ${e} body parse failed (attempt ${r+1}/3); retrying in ${n}ms: ${t}`),await new Promise(e=>setTimeout(e,n));continue}let n=x.headers.get(`Content-Type`)||`unknown`;throw new D(`Failed to parse response body for ${c} ${e}${h} (Content-Type: ${n}):\n\n${t}`,{url:d,code:`PARSE_ERROR`,cause:t})}}return await Rr(`world.validate`,async()=>{let t=r.safeParse(m.data);if(!t.success){let n=t.error.issues.map(e=>` ${e.path.length>0?e.path.join(`.`):`<root>`}: ${e.message}`).join(`
1
+ import{a as e,r as t,s as n,t as r}from"../../_chunks/workflow/rolldown-runtime-B_knIduE.js";import{i,n as a,o,t as s}from"../../_chunks/workflow/undici-D-ILjOKD.js";import{$ as c,A as l,B as u,C as d,E as f,F as p,I as m,K as h,M as g,N as _,O as v,P as y,R as b,S as x,U as S,V as C,W as w,Z as ee,_t as T,c as te,ct as ne,dt as re,g as ie,h as ae,ht as oe,it as se,j as ce,k as le,l as ue,m as de,nt as fe,o as pe,pt as me,r as he,rt as ge,v as _e,x as ve,y as ye,z as be}from"../../_chunks/workflow/dist-CyBgVS7g.js";import{A as xe,_ as E,b as Se,f as Ce,j as D,k as we,l as Te,o as Ee,r as De,s as Oe,t as ke,v as Ae,y as je}from"../../_chunks/workflow/dist-T5NnW-0k.js";import{a as Me,i as Ne,n as Pe,o as Fe,r as Ie,s as Le,t as Re}from"../../_chunks/workflow/run-id-Ct9AjQDR.js";import{i as ze,r as Be,t as Ve}from"../../_chunks/workflow/token-util-Bla5Z0G9.js";import{n as He,t as Ue}from"../../_chunks/workflow/wrapper-Dq4OeGmJ.js";import*as We from"#compiled/zod/index.js";import Ge,{z as O}from"#compiled/zod/index.js";import{randomUUID as Ke}from"crypto";import{createRequire as qe}from"module";import*as Je from"path";import{webcrypto as Ye}from"node:crypto";import{inspect as Xe}from"node:util";import{AsyncLocalStorage as Ze}from"node:async_hooks";import Qe from"node:assert/strict";import $e from"node:os";import*as et from"fs";import tt from"assert/strict";import*as nt from"net";var rt=r(((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})})),it=r(((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,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),at=r(((e,t)=>{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:()=>p,getVercelOidcTokenSync:()=>m}),t.exports=l(u);var d=rt(),f=it();async function p(e){let t=``,r;try{t=m()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>n(ut())),await import(`../../_chunks/workflow/token-Cv2GYj9A.js`).then(e=>n(e.default))]);(!t||i(r(t),e?.expirationBufferMs))&&(await a(e),t=m())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
2
+ ${e.message}`),t?new f.VercelOidcTokenError(t):e}return t}function m(){let e=(0,d.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. Do you have the OIDC option enabled in the Vercel project settings?`);return e}0&&(t.exports={getVercelOidcToken:p,getVercelOidcTokenSync:m})})),ot=r(((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:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),st=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(e(`path`)),h=d(e(`fs`)),g=d(e(`os`)),_=it();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),ct=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(e(`fs`)),h=d(e(`path`)),g=ut();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),lt=r(((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,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=e(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),ut=r(((t,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>ee,getTokenPayload:()=>ne,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>re,loadToken:()=>te,saveToken:()=>T}),n.exports=f(p);var m=d(e(`path`)),h=d(e(`fs`)),g=it(),_=st(),v=ct(),y=lt(),b=ot();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function ee(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function T(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function te(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function ne(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function re(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:ee,getTokenPayload:ne,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:re,loadToken:te,saveToken:T})})),dt=r(((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:()=>f.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>f.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>u.getVercelOidcTokenSync,getVercelToken:()=>p.getVercelToken}),t.exports=c(l);var u=at(),d=rt(),f=ot(),p=ut();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})}))();let ft;try{ft=new TextDecoder}catch{}let k,pt,A=0;const mt=[],ht=57337,gt={};let _t=11281e4,vt=1681e4,yt=mt,bt=0,j={},M,xt,St=0,Ct=0,N,wt,P=[],Tt=[],Et,F,Dt,Ot={useRecords:!1,mapsAsObjects:!0},kt=!1,At=2;try{Function(``)}catch{At=1/0}var jt=class e{constructor(e){if(e&&((e.keyMap||e._keyMap)&&!e.useRecords&&(e.useRecords=!1,e.mapsAsObjects=!0),e.useRecords===!1&&e.mapsAsObjects===void 0&&(e.mapsAsObjects=!0),e.getStructures&&(e.getShared=e.getStructures),e.getShared&&!e.structures&&((e.structures=[]).uninitialized=!0),e.keyMap)){this.mapKey=new Map;for(let[t,n]of Object.entries(e.keyMap))this.mapKey.set(n,t)}Object.assign(this,e)}decodeKey(e){return this.keyMap&&this.mapKey.get(e)||e}encodeKey(e){return this.keyMap&&this.keyMap.hasOwnProperty(e)?this.keyMap[e]:e}encodeKeys(e){if(!this._keyMap)return e;let t=new Map;for(let[n,r]of Object.entries(e))t.set(this._keyMap.hasOwnProperty(n)?this._keyMap[n]:n,r);return t}decodeKeys(e){if(!this._keyMap||e.constructor.name!=`Map`)return e;if(!this._mapKey){this._mapKey=new Map;for(let[e,t]of Object.entries(this._keyMap))this._mapKey.set(t,e)}let t={};return e.forEach((e,n)=>t[Ft(this._mapKey.has(n)?this._mapKey.get(n):n)]=e),t}mapDecode(e,t){let n=this.decode(e);if(this._keyMap)switch(n.constructor.name){case`Array`:return n.map(e=>this.decodeKeys(e))}return n}decode(t,n){if(k)return an(()=>(on(),this?this.decode(t,n):e.prototype.decode.call(Ot,t,n)));pt=n>-1?n:t.length,A=0,bt=0,Ct=0,xt=null,yt=mt,N=null,k=t;try{F=t.dataView||=new DataView(t.buffer,t.byteOffset,t.byteLength)}catch(e){throw k=null,t instanceof Uint8Array?e:Error(`Source must be a Uint8Array or Buffer but was a `+(t&&typeof t==`object`?t.constructor.name:typeof t))}if(this instanceof e){if(j=this,Et=this.sharedValues&&(this.pack?Array(this.maxPrivatePackedValues||16).concat(this.sharedValues):this.sharedValues),this.structures)return M=this.structures,Mt();(!M||M.length>0)&&(M=[])}else j=Ot,(!M||M.length>0)&&(M=[]),Et=null;return Mt()}decodeMultiple(e,t){let n,r=0;try{let i=e.length;kt=!0;let a=this?this.decode(e,i):cn.decode(e,i);if(t){if(t(a)===!1)return;for(;A<i;)if(r=A,t(Mt())===!1)return}else{for(n=[a];A<i;)r=A,n.push(Mt());return n}}catch(e){throw e.lastPosition=r,e.values=n,e}finally{kt=!1,on()}}};function Mt(){try{let e=I();if(N){if(A>=N.postBundlePosition){let e=Error(`Unexpected bundle position`);throw e.incomplete=!0,e}A=N.postBundlePosition,N=null}if(A==pt)M=null,k=null,wt&&=null;else if(A>pt){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}else if(!kt)throw Error(`Data read, but end of buffer not reached`);return e}catch(e){throw on(),(e instanceof RangeError||e.message.startsWith(`Unexpected end of buffer`))&&(e.incomplete=!0),e}}function I(){let e=k[A++],t=e>>5;if(e&=31,e>23)switch(e){case 24:e=k[A++];break;case 25:if(t==7)return Wt();e=F.getUint16(A),A+=2;break;case 26:if(t==7){let e=F.getFloat32(A);if(j.useFloat32>2){let t=sn[(k[A]&127)<<1|k[A+1]>>7];return A+=4,(t*e+(e>0?.5:-.5)>>0)/t}return A+=4,e}e=F.getUint32(A),A+=4;break;case 27:if(t==7){let e=F.getFloat64(A);return A+=8,e}if(t>1){if(F.getUint32(A)>0)throw Error(`JavaScript does not support arrays, maps, or strings with length over 4294967295`);e=F.getUint32(A+4)}else j.int64AsNumber?(e=F.getUint32(A)*4294967296,e+=F.getUint32(A+4)):e=F.getBigUint64(A);A+=8;break;case 31:switch(t){case 2:case 3:throw Error(`Indefinite length not supported for byte or text strings`);case 4:let e=[],n,r=0;for(;(n=I())!=gt;){if(r>=_t)throw Error(`Array length exceeds ${_t}`);e[r++]=n}return t==4?e:t==3?e.join(``):Buffer.concat(e);case 5:let i;if(j.mapsAsObjects){let e={},t=0;if(j.keyMap)for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Property count exceeds ${vt}`);e[Ft(j.decodeKey(i))]=I()}else for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Property count exceeds ${vt}`);e[Ft(i)]=I()}return e}{Dt&&=(j.mapsAsObjects=!0,!1);let e=new Map;if(j.keyMap){let t=0;for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Map size exceeds ${vt}`);e.set(j.decodeKey(i),I())}}else{let t=0;for(;(i=I())!=gt;){if(t++>=vt)throw Error(`Map size exceeds ${vt}`);e.set(i,I())}}return e}case 7:return gt;default:throw Error(`Invalid major type for indefinite length `+t)}default:throw Error(`Unknown token `+e)}switch(t){case 0:return e;case 1:return~e;case 2:return Vt(e);case 3:if(Ct>=A)return xt.slice(A-St,(A+=e)-St);if(Ct==0&&pt<140&&e<32){let t=e<16?Bt(e):zt(e);if(t!=null)return t}return It(e);case 4:if(e>=_t)throw Error(`Array length exceeds ${_t}`);let t=Array(e);for(let n=0;n<e;n++)t[n]=I();return t;case 5:if(e>=vt)throw Error(`Map size exceeds ${_t}`);if(j.mapsAsObjects){let t={};if(j.keyMap)for(let n=0;n<e;n++)t[Ft(j.decodeKey(I()))]=I();else for(let n=0;n<e;n++)t[Ft(I())]=I();return t}{Dt&&=(j.mapsAsObjects=!0,!1);let t=new Map;if(j.keyMap)for(let n=0;n<e;n++)t.set(j.decodeKey(I()),I());else for(let n=0;n<e;n++)t.set(I(),I());return t}case 6:if(e>=ht){let t=M[e&8191];if(t)return t.read||(t.read=Pt(t)),t.read();if(e<65536){if(e==57343){let e=nn(),t=I(),n=I();Kt(t,n);let r={};if(j.keyMap)for(let t=2;t<e;t++){let e=j.decodeKey(n[t-2]);r[Ft(e)]=I()}else for(let t=2;t<e;t++){let e=n[t-2];r[Ft(e)]=I()}return r}if(e==57342){let e=nn(),t=I();for(let n=2;n<e;n++)Kt(t++,I());return I()}if(e==ht)return tn();if(j.getShared&&(rn(),t=M[e&8191],t))return t.read||(t.read=Pt(t)),t.read()}}let n=P[e];if(n)return n.handlesRead?n(I):n(I());{let t=I();for(let n=0;n<Tt.length;n++){let r=Tt[n](e,t);if(r!==void 0)return r}return new Gt(t,e)}case 7:switch(e){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;default:let t=(Et||Xt())[e];if(t!==void 0)return t;throw Error(`Unknown token `+e)}default:if(isNaN(e)){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}throw Error(`Unknown CBOR token `+e)}}const Nt=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Pt(e){if(!e)throw Error(`Structure is required in record definition`);function t(){let e=k[A++];if(e&=31,e>23)switch(e){case 24:e=k[A++];break;case 25:e=F.getUint16(A),A+=2;break;case 26:e=F.getUint32(A),A+=4;break;default:throw Error(`Expected array header, but got `+k[A-1])}let t=this.compiledReader;for(;t;){if(t.propertyCount===e)return t(I);t=t.next}if(this.slowReads++>=At){let n=this.length==e?this:this.slice(0,e);return t=j.keyMap?Function(`r`,`return {`+n.map(e=>j.decodeKey(e)).map(e=>Nt.test(e)?Ft(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`):Function(`r`,`return {`+n.map(e=>Nt.test(e)?Ft(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`),this.compiledReader&&(t.next=this.compiledReader),t.propertyCount=e,this.compiledReader=t,t(I)}let n={};if(j.keyMap)for(let t=0;t<e;t++)n[Ft(j.decodeKey(this[t]))]=I();else for(let t=0;t<e;t++)n[Ft(this[t])]=I();return n}return e.slowReads=0,t}function Ft(e){if(typeof e==`string`)return e===`__proto__`?`__proto_`:e;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return e.toString();if(e==null)return e+``;throw Error(`Invalid property name type `+typeof e)}let It=Rt;function Lt(e){It=t(1);function t(t){return function(t){let n=yt[bt++];if(n==null){if(N)return Rt(t);let r=e(A,pt,t,k);if(typeof r==`string`)n=r,yt=mt;else if(yt=r,bt=1,Ct=1,n=yt[0],n===void 0)throw Error(`Unexpected end of buffer`)}let r=n.length;return r<=t?(A+=t,n):(xt=n,St=A,Ct=A+r,A+=t,n.slice(0,t))}}}function Rt(e){let t;if(e<16&&(t=Bt(e)))return t;if(e>64&&ft)return ft.decode(k.subarray(A,A+=e));let n=A+e,r=[];for(t=``;A<n;){let e=k[A++];if(!(e&128))r.push(e);else if((e&224)==192){let t=k[A++]&63;r.push((e&31)<<6|t)}else if((e&240)==224){let t=k[A++]&63,n=k[A++]&63;r.push((e&31)<<12|t<<6|n)}else if((e&248)==240){let t=k[A++]&63,n=k[A++]&63,i=k[A++]&63,a=(e&7)<<18|t<<12|n<<6|i;a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a)}else r.push(e);r.length>=4096&&(t+=L.apply(String,r),r.length=0)}return r.length>0&&(t+=L.apply(String,r)),t}let L=String.fromCharCode;function zt(e){let t=A,n=Array(e);for(let r=0;r<e;r++){let e=k[A++];if((e&128)>0){A=t;return}n[r]=e}return L.apply(String,n)}function Bt(e){if(e<4){if(e<2){if(e===0)return``;{let e=k[A++];if((e&128)>1){--A;return}return L(e)}}{let t=k[A++],n=k[A++];if((t&128)>0||(n&128)>0){A-=2;return}if(e<3)return L(t,n);let r=k[A++];if((r&128)>0){A-=3;return}return L(t,n,r)}}{let t=k[A++],n=k[A++],r=k[A++],i=k[A++];if((t&128)>0||(n&128)>0||(r&128)>0||(i&128)>0){A-=4;return}if(e<6){if(e===4)return L(t,n,r,i);{let e=k[A++];if((e&128)>0){A-=5;return}return L(t,n,r,i,e)}}if(e<8){let a=k[A++],o=k[A++];if((a&128)>0||(o&128)>0){A-=6;return}if(e<7)return L(t,n,r,i,a,o);let s=k[A++];if((s&128)>0){A-=7;return}return L(t,n,r,i,a,o,s)}{let a=k[A++],o=k[A++],s=k[A++],c=k[A++];if((a&128)>0||(o&128)>0||(s&128)>0||(c&128)>0){A-=8;return}if(e<10){if(e===8)return L(t,n,r,i,a,o,s,c);{let e=k[A++];if((e&128)>0){A-=9;return}return L(t,n,r,i,a,o,s,c,e)}}if(e<12){let l=k[A++],u=k[A++];if((l&128)>0||(u&128)>0){A-=10;return}if(e<11)return L(t,n,r,i,a,o,s,c,l,u);let d=k[A++];if((d&128)>0){A-=11;return}return L(t,n,r,i,a,o,s,c,l,u,d)}{let l=k[A++],u=k[A++],d=k[A++],f=k[A++];if((l&128)>0||(u&128)>0||(d&128)>0||(f&128)>0){A-=12;return}if(e<14){if(e===12)return L(t,n,r,i,a,o,s,c,l,u,d,f);{let e=k[A++];if((e&128)>0){A-=13;return}return L(t,n,r,i,a,o,s,c,l,u,d,f,e)}}{let p=k[A++],m=k[A++];if((p&128)>0||(m&128)>0){A-=14;return}if(e<15)return L(t,n,r,i,a,o,s,c,l,u,d,f,p,m);let h=k[A++];if((h&128)>0){A-=15;return}return L(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}}}}}function Vt(e){return j.copyBuffers?Uint8Array.prototype.slice.call(k,A,A+=e):k.subarray(A,A+=e)}let Ht=new Float32Array(1),Ut=new Uint8Array(Ht.buffer,0,4);function Wt(){let e=k[A++],t=k[A++],n=(e&127)>>2;if(n===31)return t||e&3?NaN:e&128?-1/0:1/0;if(n===0){let n=((e&3)<<8|t)/(1<<24);return e&128?-n:n}return Ut[3]=e&128|(n>>1)+56,Ut[2]=(e&7)<<5|t>>3,Ut[1]=t<<5,Ut[0]=0,Ht[0]}Array(4096);var Gt=class{constructor(e,t){this.value=e,this.tag=t}};P[0]=e=>new Date(e),P[1]=e=>new Date(Math.round(e*1e3)),P[2]=e=>{let t=BigInt(0);for(let n=0,r=e.byteLength;n<r;n++)t=BigInt(e[n])+(t<<BigInt(8));return t},P[3]=e=>BigInt(-1)-P[2](e),P[4]=e=>+(e[1]+`e`+e[0]),P[5]=e=>e[1]*Math.exp(e[0]*Math.log(2));const Kt=(e,t)=>{e-=57344;let n=M[e];n&&n.isShared&&((M.restoreStructures||(M.restoreStructures=[]))[e]=n),M[e]=t,t.read=Pt(t)};P[105]=e=>{let t=e.length,n=e[1];Kt(e[0],n);let r={};for(let i=2;i<t;i++){let t=n[i-2];r[Ft(t)]=e[i]}return r},P[14]=e=>N?N[0].slice(N.position0,N.position0+=e):new Gt(e,14),P[15]=e=>N?N[1].slice(N.position1,N.position1+=e):new Gt(e,15);let qt={Error,RegExp};P[27]=e=>(qt[e[0]]||Error)(e[1],e[2]);const Jt=e=>{if(k[A++]!=132){let e=Error(`Packed values structure must be followed by a 4 element array`);throw k.length<A&&(e.incomplete=!0),e}let t=e();if(!t||!t.length){let e=Error(`Packed values structure must be followed by a 4 element array`);throw e.incomplete=!0,e}return Et=Et?t.concat(Et.slice(t.length)):t,Et.prefixes=e(),Et.suffixes=e(),e()};Jt.handlesRead=!0,P[51]=Jt,P[6]=e=>{if(!Et){if(j.getShared)rn();else return new Gt(e,6)}if(typeof e==`number`)return Et[16+(e>=0?2*e:-2*e-1)];let t=Error(`No support for non-integer packed references yet`);throw e===void 0&&(t.incomplete=!0),t},P[28]=e=>{wt||(wt=new Map,wt.id=0);let t=wt.id++,n=A,r=k[A],i;i=r>>5==4?[]:{};let a={target:i};wt.set(t,a);let o=e();return a.used?(Object.getPrototypeOf(i)!==Object.getPrototypeOf(o)&&(A=n,i=o,wt.set(t,{target:i}),o=e()),Object.assign(i,o)):(a.target=o,o)},P[28].handlesRead=!0,P[29]=e=>{let t=wt.get(e);return t.used=!0,t.target},P[258]=e=>new Set(e),(P[259]=e=>(j.mapsAsObjects&&(j.mapsAsObjects=!1,Dt=!0),e())).handlesRead=!0;function Yt(e,t){return typeof e==`string`?e+t:e instanceof Array?e.concat(t):Object.assign({},e,t)}function Xt(){if(!Et){if(j.getShared)rn();else throw Error(`No packed values available`)}return Et}Tt.push((e,t)=>{if(e>=225&&e<=255)return Yt(Xt().prefixes[e-224],t);if(e>=28704&&e<=32767)return Yt(Xt().prefixes[e-28672],t);if(e>=1879052288&&e<=2147483647)return Yt(Xt().prefixes[e-1879048192],t);if(e>=216&&e<=223)return Yt(t,Xt().suffixes[e-216]);if(e>=27647&&e<=28671)return Yt(t,Xt().suffixes[e-27639]);if(e>=1811940352&&e<=1879048191)return Yt(t,Xt().suffixes[e-1811939328]);if(e==1399353956)return{packedValues:Et,structures:M.slice(0),version:t};if(e==55799)return t});const Zt=new Uint8Array(new Uint16Array([1]).buffer)[0]==1,Qt=[Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?{name:`BigUint64Array`}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?{name:`BigInt64Array`}:BigInt64Array,Float32Array,Float64Array],$t=[64,68,69,70,71,72,77,78,79,85,86];for(let e=0;e<Qt.length;e++)en(Qt[e],$t[e]);function en(e,t){let n=`get`+e.name.slice(0,-5),r;typeof e==`function`?r=e.BYTES_PER_ELEMENT:e=null;for(let i=0;i<2;i++){if(!i&&r==1)continue;let a=r==2?1:r==4?2:r==8?3:0;P[i?t:t-4]=r==1||i==Zt?n=>{if(!e)throw Error(`Could not find typed array for code `+t);return!j.copyBuffers&&(r===1||r===2&&!(n.byteOffset&1)||r===4&&!(n.byteOffset&3)||r===8&&!(n.byteOffset&7))?new e(n.buffer,n.byteOffset,n.byteLength>>a):new e(Uint8Array.prototype.slice.call(n,0).buffer)}:r=>{if(!e)throw Error(`Could not find typed array for code `+t);let o=new DataView(r.buffer,r.byteOffset,r.byteLength),s=r.length>>a,c=new e(s),l=o[n];for(let e=0;e<s;e++)c[e]=l.call(o,e<<a,i);return c}}}function tn(){let e=nn(),t=A+I();for(let t=2;t<e;t++){let e=nn();A+=e}let n=A;return A=t,N=[Rt(nn()),Rt(nn())],N.position0=0,N.position1=0,N.postBundlePosition=A,A=n,I()}function nn(){let e=k[A++]&31;if(e>23)switch(e){case 24:e=k[A++];break;case 25:e=F.getUint16(A),A+=2;break;case 26:e=F.getUint32(A),A+=4}return e}function rn(){if(j.getShared){let e=an(()=>(k=null,j.getShared()))||{},t=e.structures||[];j.sharedVersion=e.version,Et=j.sharedValues=e.packedValues,M===!0?j.structures=M=t:M.splice.apply(M,[0,t.length].concat(t))}}function an(e){let t=pt,n=A,r=bt,i=St,a=Ct,o=xt,s=yt,c=wt,l=N,u=new Uint8Array(k.slice(0,pt)),d=M,f=j,p=kt,m=e();return pt=t,A=n,bt=r,St=i,Ct=a,xt=o,yt=s,wt=c,N=l,k=u,kt=p,M=d,j=f,F=new DataView(k.buffer,k.byteOffset,k.byteLength),m}function on(){k=null,wt=null,M=null}const sn=Array(147);for(let e=0;e<256;e++)sn[e]=+(`1e`+Math.floor(45.15-e*.30103));let cn=new jt({useRecords:!1});const ln=cn.decode;cn.decodeMultiple;const un={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4};let dn;try{dn=new TextEncoder}catch{}let fn,pn;const mn=typeof globalThis==`object`&&globalThis.Buffer,hn=mn!==void 0,gn=hn?mn.allocUnsafeSlow:Uint8Array,_n=hn?mn:Uint8Array,vn=hn?4294967296:2144337920;let yn,R,z,B=0,bn,V=null;const xn=/[\u0080-\uFFFF]/,Sn=Symbol(`record-id`);var Cn=class extends jt{constructor(e){super(e),this.offset=0;let t,n,r,i,a;e||={};let o=_n.prototype.utf8Write?function(e,t,n){return R.utf8Write(e,t,n)}:dn&&dn.encodeInto?function(e,t){return dn.encodeInto(e,R.subarray(t)).written}:!1,s=this,c=e.structures||e.saveStructures,l=e.maxSharedStructures;if(l??=c?128:0,l>8190)throw Error(`Maximum maxSharedStructure is 8190`);let u=e.sequential;u&&(l=0),this.structures||=[],this.saveStructures&&(this.saveShared=this.saveStructures);let d,f,p=e.sharedValues,m;if(p){m=Object.create(null);for(let e=0,t=p.length;e<t;e++)m[p[e]]=e}let h=[],g=0,_=0;this.mapEncode=function(e,t){if(this._keyMap&&!this._mapped)switch(e.constructor.name){case`Array`:e=e.map(e=>this.encodeKeys(e))}return this.encode(e,t)},this.encode=function(o,c){if(R||(R=new gn(8192),z=new DataView(R.buffer,0,8192),B=0),bn=R.length-10,bn-B<2048?(R=new gn(R.length),z=new DataView(R.buffer,0,R.length),bn=R.length-10,B=0):c===512&&(B=B+7&2147483640),t=B,s.useSelfDescribedHeader&&(z.setUint32(B,3654940416),B+=3),a=s.structuredClone?new Map:null,s.bundleStrings&&typeof o!=`string`?(V=[],V.size=1/0):V=null,n=s.structures,n){if(n.uninitialized){let e=s.getShared()||{};s.structures=n=e.structures||[],s.sharedVersion=e.version;let t=s.sharedValues=e.packedValues;if(t){m={};for(let e=0,n=t.length;e<n;e++)m[t[e]]=e}}let e=n.length;if(e>l&&!u&&(e=l),!n.transitions){n.transitions=Object.create(null);for(let t=0;t<e;t++){let e=n[t];if(!e)continue;let r,i=n.transitions;for(let n=0,a=e.length;n<a;n++){i[Sn]===void 0&&(i[Sn]=t);let a=e[n];r=i[a],r||=i[a]=Object.create(null),i=r}i[Sn]=t|1048576}}u||(n.nextId=e)}if(r&&=!1,i=n||[],f=m,e.pack){let t=new Map;if(t.values=[],t.encoder=s,t.maxValues=e.maxPrivatePackedValues||(m?16:1/0),t.objectMap=m||!1,t.samplingPackedValues=d,kn(o,t),t.values.length>0){R[B++]=216,R[B++]=51,En(4);let e=t.values;v(e),En(0),En(0),f=Object.create(m||null);for(let t=0,n=e.length;t<n;t++)f[e[t]]=t}}yn=c&Vn;try{if(yn)return;if(v(o),V&&Pn(t,v),s.offset=B,a&&a.idsToInsert){B+=a.idsToInsert.length*2,B>bn&&b(B),s.offset=B;let e=Nn(R.subarray(t,B),a.idsToInsert);return a=null,e}return c&512?(R.start=t,R.end=B,R):R.subarray(t,B)}finally{if(n){if(_<10&&_++,n.length>l&&(n.length=l),g>1e4)n.transitions=null,_=0,g=0,h.length>0&&(h=[]);else if(h.length>0&&!u){for(let e=0,t=h.length;e<t;e++)h[e][Sn]=void 0;h=[]}}if(r&&s.saveShared){s.structures.length>l&&(s.structures=s.structures.slice(0,l));let e=R.subarray(t,B);return s.updateSharedData()===!1?s.encode(o):e}c&1024&&(B=t)}},this.findCommonStringsToPack=()=>(d=new Map,m||=Object.create(null),e=>{let t=e&&e.threshold||4,n=this.pack?e.maxPrivatePackedValues||16:0;p||=this.sharedValues=[];for(let[e,i]of d)i.count>t&&(m[e]=n++,p.push(e),r=!0);for(;this.saveShared&&this.updateSharedData()===!1;);d=null});let v=n=>{B>bn&&(R=b(B));var r=typeof n,i;if(r===`string`){if(f){let t=f[n];if(t>=0){t<16?R[B++]=t+224:(R[B++]=198,t&1?v(15-t>>1):v(t-16>>1));return}if(d&&!e.pack){let e=d.get(n);e?e.count++:d.set(n,{count:1})}}let r=n.length;if(V&&r>=4&&r<1024){if((V.size+=r)>61440){let e,n=(V[0]?V[0].length*3+V[1].length:0)+10;B+n>bn&&(R=b(B+n)),R[B++]=217,R[B++]=223,R[B++]=249,R[B++]=V.position?132:130,R[B++]=26,e=B-t,B+=4,V.position&&Pn(t,v),V=[``,``],V.size=0,V.position=e}let e=xn.test(n);V[+!e]+=n,R[B++]=e?206:207,v(r);return}let a;a=r<32?1:r<256?2:r<65536?3:5;let s=r*3;if(B+s>bn&&(R=b(B+s)),r<64||!o){let e,t,o,s=B+a;for(e=0;e<r;e++)t=n.charCodeAt(e),t<128?R[s++]=t:t<2048?(R[s++]=t>>6|192,R[s++]=t&63|128):(t&64512)==55296&&((o=n.charCodeAt(e+1))&64512)==56320?(t=65536+((t&1023)<<10)+(o&1023),e++,R[s++]=t>>18|240,R[s++]=t>>12&63|128,R[s++]=t>>6&63|128,R[s++]=t&63|128):(R[s++]=t>>12|224,R[s++]=t>>6&63|128,R[s++]=t&63|128);i=s-B-a}else i=o(n,B+a,s);i<24?R[B++]=96|i:i<256?(a<2&&R.copyWithin(B+2,B+1,B+1+i),R[B++]=120,R[B++]=i):i<65536?(a<3&&R.copyWithin(B+3,B+2,B+2+i),R[B++]=121,R[B++]=i>>8,R[B++]=i&255):(a<5&&R.copyWithin(B+5,B+3,B+3+i),R[B++]=122,z.setUint32(B,i),B+=4),B+=i}else if(r===`number`){if(!this.alwaysUseFloat&&n>>>0===n)n<24?R[B++]=n:n<256?(R[B++]=24,R[B++]=n):n<65536?(R[B++]=25,R[B++]=n>>8,R[B++]=n&255):(R[B++]=26,z.setUint32(B,n),B+=4);else if(!this.alwaysUseFloat&&n>>0===n)n>=-24?R[B++]=31-n:n>=-256?(R[B++]=56,R[B++]=~n):n>=-65536?(R[B++]=57,z.setUint16(B,~n),B+=2):(R[B++]=58,z.setUint32(B,~n),B+=4);else{let e;if((e=this.useFloat32)>0&&n<4294967296&&n>=-2147483648){R[B++]=250,z.setFloat32(B,n);let t;if(e<4||(t=n*sn[(R[B]&127)<<1|R[B+1]>>7])>>0===t){B+=4;return}B--}R[B++]=251,z.setFloat64(B,n),B+=8}}else if(r===`object`){if(!n)R[B++]=246;else{if(a){let e=a.get(n);if(e){if(R[B++]=216,R[B++]=29,R[B++]=25,!e.references){let t=a.idsToInsert||(a.idsToInsert=[]);e.references=[],t.push(e)}e.references.push(B-t),B+=2;return}a.set(n,{offset:B-t})}let e=n.constructor;if(e===Object)y(n);else if(e===Array){i=n.length,i<24?R[B++]=128|i:En(i);for(let e=0;e<i;e++)v(n[e])}else if(e===Map){if((this.mapsAsObjects?this.useTag259ForMaps!==!1:this.useTag259ForMaps)&&(R[B++]=217,R[B++]=1,R[B++]=3),i=n.size,i<24?R[B++]=160|i:i<256?(R[B++]=184,R[B++]=i):i<65536?(R[B++]=185,R[B++]=i>>8,R[B++]=i&255):(R[B++]=186,z.setUint32(B,i),B+=4),s.keyMap)for(let[e,t]of n)v(s.encodeKey(e)),v(t);else for(let[e,t]of n)v(e),v(t)}else{for(let e=0,t=fn.length;e<t;e++){let t=pn[e];if(n instanceof t){let t=fn[e],r=t.tag;r??=t.getTag&&t.getTag.call(this,n),r<24?R[B++]=192|r:r<256?(R[B++]=216,R[B++]=r):r<65536?(R[B++]=217,R[B++]=r>>8,R[B++]=r&255):r>-1&&(R[B++]=218,z.setUint32(B,r),B+=4),t.encode.call(this,n,v,b);return}}if(n[Symbol.iterator]){if(yn){let e=Error(`Iterable should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}R[B++]=159;for(let e of n)v(e);R[B++]=255;return}if(n[Symbol.asyncIterator]||On(n)){let e=Error(`Iterable/blob should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}if(this.useToJSON&&n.toJSON){let e=n.toJSON();if(e!==n)return v(e)}y(n)}}}else if(r===`boolean`)R[B++]=n?245:244;else if(r===`bigint`){if(n<BigInt(1)<<BigInt(64)&&n>=0)R[B++]=27,z.setBigUint64(B,n);else if(n>-(BigInt(1)<<BigInt(64))&&n<0)R[B++]=59,z.setBigUint64(B,-n-BigInt(1));else if(this.largeBigIntToFloat)R[B++]=251,z.setFloat64(B,Number(n));else{n>=BigInt(0)?R[B++]=194:(R[B++]=195,n=BigInt(-1)-n);let e=[];for(;n;)e.push(Number(n&BigInt(255))),n>>=BigInt(8);Mn(new Uint8Array(e.reverse()),b);return}B+=8}else if(r===`undefined`)R[B++]=247;else throw Error(`Unknown type: `+r)},y=this.useRecords===!1?this.variableMapSize?e=>{let t=Object.keys(e),n=Object.values(e),r=t.length;if(r<24?R[B++]=160|r:r<256?(R[B++]=184,R[B++]=r):r<65536?(R[B++]=185,R[B++]=r>>8,R[B++]=r&255):(R[B++]=186,z.setUint32(B,r),B+=4),s.keyMap)for(let e=0;e<r;e++)v(s.encodeKey(t[e])),v(n[e]);else for(let e=0;e<r;e++)v(t[e]),v(n[e])}:e=>{R[B++]=185;let n=B-t;B+=2;let r=0;if(s.keyMap)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(s.encodeKey(t)),v(e[t]),r++);else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(t),v(e[t]),r++);R[n+++t]=r>>8,R[n+t]=r&255}:(e,t)=>{let n,a=i.transitions||(i.transitions=Object.create(null)),o=0,s=0,c,u;if(this.keyMap){u=Object.keys(e).map(e=>this.encodeKey(e)),s=u.length;for(let e=0;e<s;e++){let t=u[e];n=a[t],n||(n=a[t]=Object.create(null),o++),a=n}}else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(n=a[t],n||(a[Sn]&1048576&&(c=a[Sn]&65535),n=a[t]=Object.create(null),o++),a=n,s++);let d=a[Sn];if(d!==void 0)d&=65535,R[B++]=217,R[B++]=d>>8|224,R[B++]=d&255;else if(u||=a.__keys__||(a.__keys__=Object.keys(e)),c===void 0?(d=i.nextId++,d||(d=0,i.nextId=1),d>=256&&(i.nextId=(d=l)+1)):d=c,i[d]=u,d<l){R[B++]=217,R[B++]=d>>8|224,R[B++]=d&255,a=i.transitions;for(let e=0;e<s;e++)(a[Sn]===void 0||a[Sn]&1048576)&&(a[Sn]=d),a=a[u[e]];a[Sn]=d|1048576,r=!0}else{if(a[Sn]=d,z.setUint32(B,3655335680),B+=3,o&&(g+=_*o),h.length>=256-l&&(h.shift()[Sn]=void 0),h.push(a),En(s+2),v(57344+d),v(u),t)return;for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t]);return}if(s<24?R[B++]=128|s:En(s),!t)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t])},b=e=>{let n;if(e>16777216){if(e-t>vn)throw Error(`Encoded buffer would be larger than maximum buffer size`);n=Math.min(vn,Math.round(Math.max((e-t)*(e>67108864?1.25:2),4194304)/4096)*4096)}else n=(Math.max(e-t<<2,R.length-1)>>12)+1<<12;let r=new gn(n);return z=new DataView(r.buffer,0,n),R.copy?R.copy(r,0,t,e):r.set(R.slice(t,e)),B-=t,t=0,bn=r.length-10,R=r},x=100,S=1e3;this.encodeAsIterable=function(e,t){return T(e,t,C)},this.encodeAsAsyncIterable=function(e,t){return T(e,t,te)};function*C(e,n,r){let i=e.constructor;if(i===Object){let t=s.useRecords!==!1;t?y(e,!0):wn(Object.keys(e).length,160);for(let r in e){let i=e[r];t||v(r),i&&typeof i==`object`?n[r]?yield*C(i,n[r]):yield*w(i,n,r):v(i)}}else if(i===Array){let r=e.length;En(r);for(let i=0;i<r;i++){let r=e[i];r&&(typeof r==`object`||B-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r)}}else if(e[Symbol.iterator]&&!e.buffer){R[B++]=159;for(let r of e)r&&(typeof r==`object`||B-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r);R[B++]=255}else On(e)?(wn(e.size,64),yield R.subarray(t,B),yield e,ee()):e[Symbol.asyncIterator]?(R[B++]=159,yield R.subarray(t,B),yield e,ee(),R[B++]=255):v(e);r&&B>t?yield R.subarray(t,B):B-t>x&&(yield R.subarray(t,B),ee())}function*w(e,n,r){let i=B-t;try{v(e),B-t>x&&(yield R.subarray(t,B),ee())}catch(a){if(a.iteratorNotHandled)n[r]={},B=t+i,yield*C.call(this,e,n[r]);else throw a}}function ee(){x=S,s.encode(null,Vn)}function T(e,t,n){return x=t&&t.chunkThreshold?S=t.chunkThreshold:100,e&&typeof e==`object`?(s.encode(null,Vn),n(e,s.iterateProperties||={},!0)):[s.encode(e)]}async function*te(e,t){for(let n of C(e,t,!0)){let e=n.constructor;if(e===_n||e===Uint8Array)yield n;else if(On(n)){let e=n.stream().getReader(),t;for(;!(t=await e.read()).done;)yield t.value}else if(n[Symbol.asyncIterator])for await(let e of n)ee(),e?yield*te(e,t.async||={}):yield s.encode(e);else yield n}}}useBuffer(e){R=e,z=new DataView(R.buffer,R.byteOffset,R.byteLength),B=0}clearSharedData(){this.structures&&=[],this.sharedValues&&=void 0}updateSharedData(){let e=this.sharedVersion||0;this.sharedVersion=e+1;let t=this.structures.slice(0),n=new Tn(t,this.sharedValues,this.sharedVersion),r=this.saveShared(n,t=>(t&&t.version||0)==e);return r===!1?(n=this.getShared()||{},this.structures=n.structures||[],this.sharedValues=n.packedValues,this.sharedVersion=n.version,this.structures.nextId=this.structures.length):t.forEach((e,t)=>this.structures[t]=e),r}};function wn(e,t){e<24?R[B++]=t|e:e<256?(R[B++]=t|24,R[B++]=e):e<65536?(R[B++]=t|25,R[B++]=e>>8,R[B++]=e&255):(R[B++]=t|26,z.setUint32(B,e),B+=4)}var Tn=class{constructor(e,t,n){this.structures=e,this.packedValues=t,this.version=n}};function En(e){e<24?R[B++]=128|e:e<256?(R[B++]=152,R[B++]=e):e<65536?(R[B++]=153,R[B++]=e>>8,R[B++]=e&255):(R[B++]=154,z.setUint32(B,e),B+=4)}const Dn=typeof Blob>`u`?function(){}:Blob;function On(e){if(e instanceof Dn)return!0;let t=e[Symbol.toStringTag];return t===`Blob`||t===`File`}function kn(e,t){switch(typeof e){case`string`:if(e.length>3){if(t.objectMap[e]>-1||t.values.length>=t.maxValues)return;let n=t.get(e);if(n)++n.count==2&&t.values.push(e);else if(t.set(e,{count:1}),t.samplingPackedValues){let n=t.samplingPackedValues.get(e);n?n.count++:t.samplingPackedValues.set(e,{count:1})}}break;case`object`:if(e){if(e instanceof Array)for(let n=0,r=e.length;n<r;n++)kn(e[n],t);else{let r=!t.encoder.useRecords;for(var n in e)e.hasOwnProperty(n)&&(r&&kn(n,t),kn(e[n],t))}}break;case`function`:console.log(e)}}const An=new Uint8Array(new Uint16Array([1]).buffer)[0]==1;pn=[Date,Set,Error,RegExp,Gt,ArrayBuffer,Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?function(){}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?function(){}:BigInt64Array,Float32Array,Float64Array,Tn],fn=[{tag:1,encode(e,t){let n=e.getTime()/1e3;(this.useTimestamp32||e.getMilliseconds()===0)&&n>=0&&n<4294967296?(R[B++]=26,z.setUint32(B,n),B+=4):(R[B++]=251,z.setFloat64(B,n),B+=8)}},{tag:258,encode(e,t){t(Array.from(e))}},{tag:27,encode(e,t){t([e.name,e.message])}},{tag:27,encode(e,t){t([`RegExp`,e.source,e.flags])}},{getTag(e){return e.tag},encode(e,t){t(e.value)}},{encode(e,t,n){Mn(e,n)}},{getTag(e){if(e.constructor===Uint8Array&&(this.tagUint8Array||hn&&this.tagUint8Array!==!1))return 64},encode(e,t,n){Mn(e,n)}},jn(68,1),jn(69,2),jn(70,4),jn(71,8),jn(72,1),jn(77,2),jn(78,4),jn(79,8),jn(85,4),jn(86,8),{encode(e,t){let n=e.packedValues||[],r=e.structures||[];if(n.values.length>0){R[B++]=216,R[B++]=51,En(4);let e=n.values;t(e),En(0),En(0),packedObjectMap=Object.create(sharedPackedObjectMap||null);for(let t=0,n=e.length;t<n;t++)packedObjectMap[e[t]]=t}if(r){z.setUint32(B,3655335424),B+=3;let n=r.slice(0);n.unshift(57344),n.push(new Gt(e.version,1399353956)),t(n)}else t(new Gt(e.version,1399353956))}}];function jn(e,t){return!An&&t>1&&(e-=4),{tag:e,encode:function(e,t){let n=e.byteLength,r=e.byteOffset||0,i=e.buffer||e;t(hn?mn.from(i,r,n):new Uint8Array(i,r,n))}}}function Mn(e,t){let n=e.byteLength;n<24?R[B++]=64+n:n<256?(R[B++]=88,R[B++]=n):n<65536?(R[B++]=89,R[B++]=n>>8,R[B++]=n&255):(R[B++]=90,z.setUint32(B,n),B+=4),B+n>=R.length&&t(B+n),R.set(e.buffer?e:new Uint8Array(e),B),B+=n}function Nn(e,t){let n,r=t.length*2,i=e.length-r;t.sort((e,t)=>e.offset>t.offset?1:-1);for(let n=0;n<t.length;n++){let r=t[n];r.id=n;for(let t of r.references)e[t++]=n>>8,e[t]=n&255}for(;n=t.pop();){let t=n.offset;e.copyWithin(t+r,t,i),r-=2;let a=t+r;e[a++]=216,e[a++]=28,i=t}return e}function Pn(e,t){z.setUint32(V.position+e,B-V.position-e+1);let n=V;V=null,t(n[0]),t(n[1])}let Fn=new Cn({useRecords:!1});const In=Fn.encode;Fn.encodeAsIterable,Fn.encodeAsAsyncIterable;const{NEVER:Ln,ALWAYS:Rn,DECIMAL_ROUND:zn,DECIMAL_FIT:Bn}=un,Vn=2048;if(process.env.CBOR_NATIVE_ACCELERATION_DISABLED===void 0||process.env.CBOR_NATIVE_ACCELERATION_DISABLED.toLowerCase()!==`true`){let t;try{t=typeof e==`function`?e(`cbor-extract`):qe(import.meta.url)(`cbor-extract`),t&&Lt(t.extractStrings)}catch{}}var Hn=s();const Un=`5.2.0`,Wn=T(`@workflow/world-vercel//httpPools`,1,()=>({dispatcher:void 0,queueDispatcher:void 0,streamDispatcher:void 0,streamCloseDispatcher:void 0,nodeHttpAgents:void 0})),Gn={connections:8,keepAliveTimeout:1e4},Kn=3e5,qn=3e5,Jn={...Gn,allowH2:!1,pipelining:1},Yn=()=>oe(`WORKFLOW_VERCEL_QUEUE_TIMEOUT_MS`,3e4,{integer:!0,min:5e3,max:12e4});function Xn(){let e=Yn();return{...Jn,connections:oe(`WORKFLOW_VERCEL_QUEUE_CONNECTIONS`,64,{integer:!0,min:1,max:1024}),headersTimeout:e,bodyTimeout:e}}const Zn=Hn.DecoratorHandler;function Qn(e){class t extends Zn{#e=!1;#t;#n;constructor(t){super(t),this.#n=setTimeout(()=>{this.#e=!0,this.#r()},e),this.#n.unref?.()}#r(){this.#t?.abort(Error(`Queue request exceeded its ${e}ms deadline`))}onRequestStart(e,t){this.#t=e,super.onRequestStart(e,t),this.#e&&this.#r()}onResponseEnd(e,t){clearTimeout(this.#n),super.onResponseEnd(e,t)}onResponseError(e,t){clearTimeout(this.#n),super.onResponseError(e,t)}}return e=>(n,r)=>e(n,new t(r))}const $n=6e4,er={...Gn,headersTimeout:$n,bodyTimeout:$n,allowH2:!0,pipelining:100,initialWindowSize:4194304,connectionWindowSize:16777216},tr={...Gn,headersTimeout:$n,bodyTimeout:$n,allowH2:!1,pipelining:1},nr={...Gn,allowH2:!0,pipelining:1},rr={retryAfter:!0,statusCodes:[500,502,503,504]},ir={...rr,errorCodes:[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`,`ERR_HTTP2_STREAM_ERROR`]},ar={retryAfter:!0,methods:[`PUT`],statusCodes:[429]},or={retryAfter:!0,methods:[`PUT`],statusCodes:[429,500,502,503,504]};function sr(){return process.env.WORKFLOW_H2_MULTIPLEX!==`0`}function cr(e){if(!e||typeof e!=`object`||Array.isArray(e))return NaN;let t=e,n=t[`content-length`]??t[`Content-Length`];return typeof n==`string`||typeof n==`number`?Number(n):NaN}function lr(e){return t=>(n,r)=>{let i=n.body,a=!!i&&typeof i!=`string`&&!Buffer.isBuffer(i)&&typeof i[Symbol.asyncIterator]==`function`,o=cr(n.headers);return a?!(o>=0)||o>1048576?e?e.dispatch(n,r):t({...n,idempotent:!0},r):((async()=>{try{let e=[];for await(let t of i)e.push(Buffer.from(t));t({...n,body:Buffer.concat(e),idempotent:!0},r)}catch(e){r.onError?.(e)}})(),!0):t({...n,idempotent:!0},r)}}const ur=new Set([`UND_ERR_INFO`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`ERR_HTTP2_GOAWAY_SESSION`,`ERR_HTTP2_INVALID_SESSION`,`ERR_HTTP2_SESSION_ERROR`,`ERR_HTTP2_STREAM_ERROR`]);function dr(e){let t=e;for(let e=0;t&&e<8;e++){let e=t.code;if(typeof e==`string`&&ur.has(e))return!0;t=t.cause}return!1}function fr(e,t){let n,r=0,i=0;function a(e){let t=setTimeout(()=>{Promise.resolve(e.close?.()).catch(()=>void 0)},5e3),n=setTimeout(()=>{Promise.resolve(e.destroy?.()).catch(()=>void 0)},6e4);t.unref?.(),n.unref?.()}return{get(){return n??=e(),n},note(e,o){if(!n||e!==n)return;if(o===void 0){r=0;return}if(!dr(o)||(r++,r<3))return;let s=Date.now();if(s-i<5e3)return;i=s,r=0;let c=n;n=void 0,console.warn(`[workflow] ${t}: rebuilding connection pool after 3 consecutive transport failures`),a(c)}}}const pr=T(`@workflow/world-vercel//eventsDispatcherRecycler@${Un}`,1,()=>fr(()=>Cr(),`events transport`));function mr(e,t){pr.note(e,t)}function hr(e,t){return e?.dispatcher?e.dispatcher:_e()?void 0:t()}function gr(e){if(!e?.dispatcher&&_e())return Wn.nodeHttpAgents??=a({maxSockets:Gn.connections,keepAliveMs:Gn.keepAliveTimeout}),Wn.nodeHttpAgents}function _r(e){return hr(e,kr)}function vr(e){return hr(e,Or)}function yr(e){return hr(e,()=>pr.get())}function br(e){return hr(e,Ar)}function xr(e){return hr(e,jr)}function Sr(e,t){return new Hn.RetryAgent(new Hn.Agent(e),t)}function Cr(e){let t=sr(),n=new Hn.RetryAgent(new Hn.Agent({...t?er:tr,...e}),ir);if(!t||!wr(n))return n;let r=new Hn.RetryAgent(new Hn.Agent({...tr,...e}),ir);return Tr(n,n.compose(lr(r)),r)}function wr(e){return typeof e.compose==`function`}function Tr(e,t,n){return new Proxy(t,{get:(t,r)=>{if(r!==`close`&&r!==`destroy`)return t[r];let i=e[r].bind(e);if(!n)return i;let a=n[r].bind(n);return async(...e)=>{await Promise.all([i(...e),a(...e)])}}})}function Er(e,t){return new Hn.RetryAgent(new Hn.Agent({...nr,...t}),e)}function Dr(){let e=new Hn.Agent(Xn());return new Hn.RetryAgent(wr(e)?e.compose(Qn(Yn())):e,rr)}function Or(){return Wn.queueDispatcher??=Dr(),Wn.queueDispatcher}function kr(){return Wn.dispatcher??=Sr(Jn,rr),Wn.dispatcher}function Ar(){return Wn.streamDispatcher??=Er(ar),Wn.streamDispatcher}function jr(){return Wn.streamCloseDispatcher??=Er(or),Wn.streamCloseDispatcher}const Mr=T(`@workflow/world-vercel//telemetry`,1,()=>({apiPromise:null,tracerPromise:null}));async function Nr(){return Mr.apiPromise||=import(`../../@opentelemetry/api/index.js`).catch(e=>(typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`)&&console.warn(`[workflow] @opentelemetry/api unavailable — world-vercel spans disabled:`,e instanceof Error?e.message:e),null)),Mr.apiPromise}function Pr(){return typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`)}let Fr=!1;function Ir(e,t){if(!Fr&&Pr()){Fr=!0;try{let n=globalThis[Symbol.for(`opentelemetry.js.api.1`)],r=e.trace.getTracerProvider(),i=r.getDelegate?.()??r,a=t.startSpan(`workflow.otel.probe.world_vercel`);console.warn(`[workflow:otel-diag] world-vercel`,JSON.stringify({globalRegistrationVersion:n?.version??null,providerCtor:r?.constructor?.name??null,delegateCtor:i?.constructor?.name??null,tracerCtor:t?.constructor?.name??null,probeCtor:a?.constructor?.name??null,probeRecording:a.isRecording()})),a.end()}catch(e){console.warn(`[workflow:otel-diag] world-vercel failed:`,e instanceof Error?e.message:e)}}}async function Lr(){return Mr.tracerPromise||=Nr().then(e=>{if(!e)return null;let t=e.trace.getTracer(`workflow`);return Ir(e,t),t}),Mr.tracerPromise}async function Rr(e,...t){let[n,r]=await Promise.all([Lr(),Nr()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function zr(e){let t=await Nr();if(t)return t.SpanKind[e]}async function Br(e){for(let[t,n]of Object.entries(await Vr()))e.set(t,n)}async function Vr(){let e=await Nr();if(!e)return{};let t={};return e.propagation.inject(e.context.active(),t),t}function H(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Hr=H(`http.request.method`),Ur=H(`url.full`),Wr=H(`server.address`),Gr=H(`server.port`),Kr=H(`http.response.status_code`),qr=H(`error.type`),Jr=H(`network.protocol.name`),Yr=H(`workflow.world.parse.format`),Xr=H(`peer.service`),Zr=H(`rpc.system`),Qr=H(`rpc.service`),$r=H(`rpc.method`),ei=H(`workflow.run.id`),ti=H(`step.id`),ni=H(`workflow.stream.name`),ri=H(`workflow.stream.operation`),ii=H(`workflow.stream.start_index`),ai=H(`workflow.events.transport`),oi=H(`workflow.http.transport`),si=H(`workflow.event.type`),ci=H(`workflow.step_start.mode`),li=H(`workflow.step_start.owner_stamped`),ui=H(`workflow.client.version`),di=H(`step.stso_ms`),fi=H(`step.latency_optimizations`),pi=H(`workflow.events.ws.url`),mi=H(`workflow.events.ws.req_id`),hi=H(`workflow.events.ws.request_parts`),gi=H(`workflow.events.ws.reply_parts`),_i=H(`workflow.events.ws.reconnect_attempt`),vi=new Set([`UND_ERR_INFO`,`UND_ERR_REQ_RETRY`,`UND_ERR_SOCKET`,`UND_ERR_CONNECT`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_CLOSED`,`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`EAI_AGAIN`,`EPIPE`,`ETIMEDOUT`]);function yi(e){let t=e;for(let e=0;t&&e<8;e++){let e=t.code;if(typeof e==`string`&&vi.has(e))return e;t=t.cause}}function bi(e){let{protocol:t,username:n,password:r}=new URL(e);if(t!==`http:`&&t!==`https:`)throw TypeError(`Unsupported URL protocol ${t}; expected http: or https:`);if(n||r)throw TypeError(`HTTP(S) URLs with embedded credentials are unsupported`)}const xi=new Set([`ERR_INVALID_URL`,`ERR_INVALID_ARG_TYPE`,`ERR_INVALID_ARG_VALUE`,`ERR_INVALID_CHAR`,`ERR_INVALID_HTTP_TOKEN`,`ERR_HTTP_INVALID_HEADER_VALUE`,`ERR_UNESCAPED_CHARACTERS`,`UND_ERR_INVALID_ARG`,`UND_ERR_NOT_SUPPORTED`]);function Si(e){let t=yi(e);if(t)return t;let n,r,i=e;for(let e=0;i&&e<8;e++){let{code:e,name:t,message:a}=i;if(t===`Error`&&a===`bad port`&&e===void 0)return;if(typeof e==`string`&&e){if(xi.has(e))return;n??=e}typeof t==`string`&&t&&(r=t),i=i.cause}return n??r??`unknown`}const Ci=()=>oe(`WORKFLOW_REQUEST_TIMEOUT_MS`,6e4,{integer:!0,min:1e4,max:12e4}),wi=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`),Ti=[`x-vercel-id`,`x-vercel-error`,`x-vercel-mitigated`];function Ei(e){return Ti.flatMap(t=>{let n=e.get(t);return n?[`${t}=${n}`]:[]})}function Di(e){let t=Ei(e);return t.length>0?` (${t.join(`; `)})`:``}function Oi(e,t,n,r){if(!wi)return;let i=Ei(n.headers),a=i.length>0?`; ${i.join(`; `)}`:``;console.debug(`[workflow:world-vercel:http] ${e} ${t} -> ${n.status} (${r}ms${a})`)}function ki(e,t,n){if(!process.env.DEBUG)return;let r=Array.from(n.entries()).filter(([e])=>e.toLowerCase()!==`authorization`).map(([e,t])=>`-H "${e}: ${t}"`).join(` `);console.error(`Failed to fetch, reproduce with:\ncurl -X ${e} ${r} "${t}"`)}function Ai(e){if(!e)return;let t=parseInt(e,10);return Number.isNaN(t)?void 0:t}function ji(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}function Mi(e,t,n={}){let{retryAfter:r,code:i,url:a,mitigated:o,details:s}=n;if(e===409&&i===`hook-force-claimed`){let e=s&&typeof s==`object`?s.claimedBy:void 0;return new Ee(``,typeof e?.runId==`string`?e.runId:`unknown`,typeof e?.hookId==`string`?e.hookId:void 0)}if(e===409)return new De(t);if(e===410){if(i===`stream-expired`){let e=s&&typeof s==`object`?s:void 0,n=typeof e?.expiredAt==`string`?new Date(e.expiredAt):void 0;return new Ae(t,typeof e?.runId==`string`?e.runId:void 0,typeof e?.streamId==`string`?e.streamId:void 0,n&&!Number.isNaN(n.getTime())?n:void 0)}return new Ce(t)}return e===412?new Te(t,{retryAfter:r,details:s}):e===425?new Se(t,{retryAfter:r}):e===429?Ni(e,o)?new D(`${t} (x-vercel-mitigated=challenge)`,{url:a,status:e,code:`TRANSPORT`,retryAfter:r}):new je(t,{retryAfter:r}):new D(t,{url:a,status:e,code:i,retryAfter:r})}function Ni(e,t){return e===429&&t===`challenge`}async function Pi(e){return e?.token??process.env.VERCEL_TOKEN??await(0,dt.getVercelOidcToken)().catch(()=>null)}function Fi(e){try{let t=new URL(e),n=t.protocol===`https:`||t.protocol===`wss:`;return{serverAddress:t.hostname,serverPort:t.port?parseInt(t.port,10):n?443:80}}catch{return{}}}function Ii(e){let{method:t,url:n,peerService:r}=e,{serverAddress:i,serverPort:a}=Fi(n);return{...Hr(t),...Ur(n),...i?Wr(i):{},...a?Gr(a):{},...Xr(r),...Zr(`http`),...Qr(r)}}async function Li(e,t){let{method:n,url:r,peerService:i=`workflow-server`,spanName:a,attributes:o}=e;return Rr(a??`http ${n}`,{kind:await zr(`CLIENT`)},async e=>{if(a&&wi&&e){let t=e.spanContext();console.warn(`[workflow:otel-diag] span-open`,JSON.stringify({spanName:a,traceId:t.traceId,spanId:t.spanId,recording:e.isRecording()}))}return e?.setAttributes(Ii({method:n,url:r,peerService:i})),o&&e?.setAttributes(o),t(e)})}function Ri(e,t){e?.setAttributes({...Kr(t)}),(t<200||t>=300)&&e?.setAttributes({...qr(`HTTP ${t}`)})}async function zi(e){let{method:t,url:n,headers:r,body:a,dispatcher:o,peerService:s,timeoutMs:c=Ci(),signal:l,injectTraceContext:u=!0,cacheBust:d=!0,logLabel:f,buildError:p,spanName:m,attributes:h,durationAttribute:g,onTransportOutcome:_,deferTransportSuccessUntilBody:v=!1,onRequestDispatched:y,transportErrorCode:b=`TRANSPORT`}=e,x=f??n;return bi(n),Li({method:t,url:n,peerService:s,spanName:m,attributes:h},async e=>{u&&await Br(r),d&&r.set(`X-Request-Time`,Date.now().toString());let s=c==null?void 0:AbortSignal.timeout(c),f=l&&s?AbortSignal.any([l,s]):l??s,m=o?void 0:gr();e?.setAttributes({...oi(m?`node-http`:`undici`)});let h=Date.now(),S;try{let e=m?i(n,{method:t,headers:r,body:a,signal:f,agents:m,headersTimeoutMs:Kn,bodyTimeoutMs:qn}):fetch(n,{method:t,headers:r,body:a,signal:f,dispatcher:o});y?.(),S=await e}catch(r){let i=Date.now()-h;if(_?.(r),r instanceof Error&&(r.name===`TimeoutError`||r.name===`AbortError`)){let a=`${t} ${x} timed out after ${i}ms`,o=b===`STREAM_ERROR`?`STREAM_ERROR`:`TIMEOUT`,s=o===`STREAM_ERROR`?new E(a,{url:n,cause:r}):new D(a,{url:n,code:o,cause:r});throw e?.setAttributes({...qr(o)}),e?.recordException?.(s),s}let a=Si(r);if(a){let o=`${t} ${x} transport failure after ${i}ms (${a})`,s=b===`STREAM_ERROR`?`STREAM_ERROR`:`TRANSPORT`,c=s===`STREAM_ERROR`?new E(o,{url:n,cause:r}):new D(o,{url:n,code:s,cause:r});throw e?.setAttributes({...qr(s)}),e?.recordException?.(c),c}throw r}let C=Date.now()-h;if(S.ok&&!v&&_?.(void 0,S),Oi(t,x,S,C),Ri(e,S.status),g&&e?.setAttributes({[g]:C}),!S.ok){if(ki(t,n,r),p){let r;try{r=await p(S)}catch(r){let i=yi(r);if(i){_?.(r,S);let a=`${t} ${x} response body transport failure (${i})`,o=b===`STREAM_ERROR`?new E(a,{url:n,cause:r}):new D(a,{url:n,code:`TRANSPORT`,cause:r});throw e?.setAttributes({...qr(b)}),e?.recordException?.(o),o}throw _?.(void 0,S),r}throw _?.(void 0,S),e?.recordException?.(r),r}let i=``;try{i=await S.text(),_?.(void 0,S)}catch(e){_?.(e,S)}let a=Mi(S.status,`${t} ${x} -> HTTP ${S.status}: ${S.statusText}${i?` ${i}`:``}${Di(S.headers)}`,{url:n,retryAfter:Ai(S.headers.get(`Retry-After`))});throw e?.recordException?.(a),a}return S})}const Bi=new Set([`GET`,`HEAD`]),Vi=()=>process.env.VERCEL_WORKFLOW_SERVER_URL||``,Hi=()=>process.env.WORKFLOW_TEST_LIMIT_OVERRIDES?.trim()||``;function Ui(e){return e}const Wi=(...e)=>e.filter(Boolean).join(` `),Gi=()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;return e?`@workflow/world-vercel/${Un} node-${process.version} ${$e.platform()} (${$e.arch()}) ${e}`:`@workflow/world-vercel/${Un} node-${process.version} ${$e.platform()} (${$e.arch()})`},Ki=e=>{let t=e?.projectConfig,n=Vi()||`https://vercel-workflow.com`,r=process.env.WORKFLOW_VERCEL_BACKEND_URL,i=!!(t?.projectId&&t?.teamId);return{baseUrl:i?r||`https://api.vercel.com/v1/workflow`:`${n}/api`,usingProxy:i}},qi=e=>{let t=e?.projectConfig;return t?t.environment||`production`:process.env.VERCEL_TARGET_ENV||process.env.VERCEL_ENV||void 0},Ji=(e,t)=>{let n=e?.projectConfig,r=new Headers(e?.headers);r.set(`User-Agent`,Wi(Gi(),r.get(`User-Agent`)));let i=Hi();i&&r.set(`x-workflow-test-limit-overrides`,i),n&&(r.set(`x-vercel-environment`,qi(e)),n.projectId&&r.set(`x-vercel-project-id`,n.projectId),n.teamId&&r.set(`x-vercel-team-id`,n.teamId));let a=Vi();return a&&t.usingProxy&&r.set(`x-vercel-workflow-api-url`,a),r};async function U(e){let{baseUrl:t,usingProxy:n}=Ki(e),r=Ji(e,{usingProxy:n});if(n){if(!e?.token)throw Error(`world-vercel: api-workflow proxy requested (${t}) but no Vercel auth token was provided. Pass one as \`config.token\` (the SDK reads it from \`WORKFLOW_VERCEL_AUTH_TOKEN\`).`);r.set(`Authorization`,`Bearer ${e.token}`)}else{let t;try{t=await(0,dt.getVercelOidcToken)()}catch{}let n=e?.token??t;n&&r.set(`Authorization`,`Bearer ${n}`),t&&r.set(`x-vercel-trusted-oidc-idp-token`,t)}return{baseUrl:t,headers:r,usingProxy:n}}async function W({endpoint:e,options:t={},config:n={},schema:r,data:a,onResponse:o,retryConnectTimeout:s=!1}){let c=(t.method||`GET`).toUpperCase(),{baseUrl:l,headers:u}=await U(n),d=`${l}${e}`;return bi(d),Rr(`http ${c}`,{kind:await zr(`CLIENT`)},async l=>{l?.setAttributes(Ii({method:c,url:d,peerService:`workflow-server`})),u.set(`Accept`,`application/cbor`),await Br(u);let f;a!==void 0&&(u.set(`Content-Type`,`application/cbor`),f=In(a));let p=Bi.has(c),m,h=``;for(let r=0;;r++){u.set(`X-Request-Time`,Date.now().toString());let a=AbortSignal.timeout(Ci()),g=t.signal?AbortSignal.any([t.signal,a]):a,_=gr(n),v=_?void 0:new Request(d,{...t,body:f,headers:u,signal:g}),y=_?void 0:_r(n);l?.setAttributes({...oi(_?`node-http`:`undici`)});let b=Date.now(),x;try{x=_?await i(d,{method:c,headers:u,body:f,signal:g,agents:_,headersTimeoutMs:Kn,bodyTimeoutMs:qn}):await fetch(v,{dispatcher:y})}catch(t){let n=Date.now()-b;if(t instanceof Error&&(t.name===`TimeoutError`||t.name===`AbortError`)){let r=new D(`${c} ${e} timed out after ${n}ms`,{url:d,code:`TIMEOUT`,cause:t});throw l?.setAttributes({...qr(`TIMEOUT`)}),l?.recordException?.(r),r}let i=Si(t);if(i){if(s&&p&&i===`UND_ERR_CONNECT_TIMEOUT`&&r===0){await new Promise(e=>setTimeout(e,100));continue}let a=new D(`${c} ${e} transport failure after ${n}ms (${i})`,{url:d,code:`TRANSPORT`,cause:t});throw l?.setAttributes({...qr(`TRANSPORT`)}),l?.recordException?.(a),a}throw t}let S=Date.now()-b;if(h=Di(x.headers),Oi(c,e,x,S),l?.setAttributes({...Kr(x.status)}),!x.ok){let t=await Xi(x).then(e=>e.data).catch(()=>({})),n=t.code??t.error;ki(c,d,u);let r=Ai(x.headers.get(`Retry-After`)),i=(t.message||`${c} ${e} -> HTTP ${x.status}: ${x.statusText}`)+h,a=Mi(x.status,i,{url:d,code:n,retryAfter:r,mitigated:x.headers.get(`x-vercel-mitigated`),details:t.details});throw l?.setAttributes({...qr(n||`HTTP ${x.status}`)}),l?.recordException?.(a),a}o?.(x);try{m=await Rr(`world.parse`,async e=>{let t=await Xi(x),n=(x.headers.get(`Content-Type`)||``).includes(`application/cbor`);return e?.setAttributes({...Yr(n?`cbor`:`json`)}),t});break}catch(t){if(p&&r<2){let n=100*2**r;l?.setAttributes({...qr(`PARSE_ERROR_RETRYING`)}),wi&&console.debug(`[workflow:world-vercel:http] ${c} ${e} body parse failed (attempt ${r+1}/3); retrying in ${n}ms: ${t}`),await new Promise(e=>setTimeout(e,n));continue}let n=x.headers.get(`Content-Type`)||`unknown`;throw new D(`Failed to parse response body for ${c} ${e}${h} (Content-Type: ${n}):\n\n${t}`,{url:d,code:`PARSE_ERROR`,cause:t})}}return await Rr(`world.validate`,async()=>{let t=r.safeParse(m.data);if(!t.success){let n=t.error.issues.map(e=>` ${e.path.length>0?e.path.join(`.`):`<root>`}: ${e.message}`).join(`
3
3
  `),r=process.env.DEBUG?`\n\nResponse context: ${m.getDebugContext()}`:``;throw new D(`Schema validation failed for ${c} ${e}${h}:\n${n}${r}`,{url:d,code:`SCHEMA_VALIDATION`,cause:t.error})}return t.data})})}function Yi(e){let t=Xe(e,{depth:3,maxArrayLength:10,breakLength:120});return t.length>500?`${t.slice(0,500)}...`:t}async function Xi(e){let t=e.headers.get(`Content-Type`)||``;if(t.includes(`application/cbor`)){let n=await e.arrayBuffer(),r=ln(new Uint8Array(n));return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.byteLength} bytes (CBOR), preview: ${Yi(r)}`}}let n=await e.text(),r=JSON.parse(n);return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.length} bytes, preview: ${Yi(r)}`}}function G(e,t,n){return new D(`${e}: ${t} ${n}`,{code:`INVALID_ARGUMENT`,field:t})}const Zi=`[01234567][0123456789ABCDEFGHJKMNPQRSTVWXYZ]{25}`,Qi=RegExp(`^wrun_${Zi}$`),$i=RegExp(`^(?:step|hook|wait|attr)_${Zi}$`),ea=RegExp(`^evnt_${Zi}$`),ta=RegExp(`^step_${Zi}$`),na=RegExp(`^hook_${Zi}$`),ra=RegExp(`^wait_${Zi}$`);function ia(e,t,n){if(!Number.isInteger(t)||t<1||t>n)throw G(e,`pagination.limit`,`must be an integer between 1 and ${n} (received ${t})`)}function aa(e,t){if(!Qi.test(t))throw G(e,`runId`,`must be a workflow run id ('wrun_' followed by a ULID), received ${JSON.stringify(t)}`)}function oa(e,t){if(!$i.test(t))throw G(e,`correlationId`,`must be a step, hook, wait, or attribute id, received ${JSON.stringify(t)}`)}function sa(e,t){if(!ea.test(t))throw G(e,`eventId`,`must be an event id ('evnt_' followed by a ULID), received ${JSON.stringify(t)}`)}function ca(e,t){if(!ta.test(t))throw G(e,`stepId`,`must be a step id ('step_' followed by a ULID), received ${JSON.stringify(t)}`)}function la(e,t){if(!na.test(t))throw G(e,`hookId`,`must be a hook id ('hook_' followed by a ULID), received ${JSON.stringify(t)}`)}function ua(e,t){if(!ra.test(t))throw G(e,`waitId`,`must be a wait id ('wait_' followed by a ULID), received ${JSON.stringify(t)}`)}function da(e,t){let n=Object.entries(t);if(n.length>8)throw G(e,`attributes`,`may filter by at most 8 pairs (received ${n.length})`);for(let[t,r]of n){if(!fe.safeParse(t).success)throw G(e,`attributes`,`key must be 1 to 256 characters, received ${t.length} in ${JSON.stringify(t)}`);if(!ge.safeParse(r).success)throw G(e,`attributes`,`value for ${JSON.stringify(t)} must be at most 256 UTF-8 bytes (received ${new TextEncoder().encode(r).length})`)}}function fa(e,t,n){if(t===void 0&&n===void 0)return;if(t===void 0||n===void 0)throw G(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 G(e,`startTime`,`must be a parseable datetime, received ${JSON.stringify(t)}`);if(!Number.isFinite(i))throw G(e,`endTime`,`must be a parseable datetime, received ${JSON.stringify(n)}`);if(r>i)throw G(e,`startTime`,`must be before or equal to endTime (received startTime=${JSON.stringify(t)}, endTime=${JSON.stringify(n)})`)}function pa(e,t,n,r){n?.limit!==void 0&&(ia(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 ma(e){let t=e.toString();return t?`?${t}`:``}function ha(e,t){let n=[...new Set(t)];if(n.length===0)throw G(e,`eventIds`,`must contain at least one id`);if(n.length>100)throw G(e,`eventIds`,`must contain at most 100 unique ids (received ${n.length})`);for(let t of n)sa(e,t);return n}function ga(e,t,n){fa(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)),pa(e,t,n.pagination,100)}function _a(e){return{runs:{get(t){return aa(`analytics.runs.get`,t),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}`,config:e,schema:g})},list(t={}){fa(`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&&(da(`analytics.runs.list`,t.attributes),n.set(`attributes`,JSON.stringify(t.attributes))),pa(`analytics.runs.list`,n,t.pagination,100),W({endpoint:`/v2/analytics/runs${ma(n)}`,config:e,schema:de(g)})}},attributes:{list(t={}){let n=new URLSearchParams;return ga(`analytics.attributes.list`,n,t),W({endpoint:`/v2/analytics/attributes${ma(n)}`,config:e,schema:de(le)})}},steps:{get(t,n){return aa(`analytics.steps.get`,t),ca(`analytics.steps.get`,n),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/steps/${encodeURIComponent(n)}`,config:e,schema:_})},list(t){aa(`analytics.steps.list`,t.runId);let n=new URLSearchParams;return pa(`analytics.steps.list`,n,t.pagination,v),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/steps${ma(n)}`,config:e,schema:de(_)})}},events:{get(t,n){return aa(`analytics.events.get`,t),sa(`analytics.events.get`,n),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/events/${encodeURIComponent(n)}`,config:e,schema:l})},getMany(t,n){return aa(`analytics.events.getMany`,t),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/events/get-many`,options:{method:`POST`},data:{eventIds:ha(`analytics.events.getMany`,n)},config:e,schema:l.array()})},list(t){aa(`analytics.events.list`,t.runId);let n=new URLSearchParams;return t.eventType&&n.set(`eventType`,t.eventType),t.correlationId!==void 0&&(oa(`analytics.events.list`,t.correlationId),n.set(`correlationId`,t.correlationId)),pa(`analytics.events.list`,n,t.pagination,v),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/events${ma(n)}`,config:e,schema:de(l)})},listByCorrelationId(t){aa(`analytics.events.listByCorrelationId`,t.runId),oa(`analytics.events.listByCorrelationId`,t.correlationId);let n=new URLSearchParams;return n.set(`correlationId`,t.correlationId),pa(`analytics.events.listByCorrelationId`,n,t.pagination,v),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/events${ma(n)}`,config:e,schema:de(l)})}},hooks:{get(t,n){la(`analytics.hooks.get`,t);let r=new URLSearchParams;return n?.runId!==void 0&&(aa(`analytics.hooks.get`,n.runId),r.set(`runId`,n.runId)),W({endpoint:`/v2/analytics/hooks/${encodeURIComponent(t)}${ma(r)}`,config:e,schema:ce})},list(t){aa(`analytics.hooks.list`,t.runId);let n=new URLSearchParams;return n.set(`runId`,t.runId),pa(`analytics.hooks.list`,n,t.pagination,100),W({endpoint:`/v2/analytics/hooks${ma(n)}`,config:e,schema:de(ce)})}},waits:{get(t,n){return aa(`analytics.waits.get`,t),ua(`analytics.waits.get`,n),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/waits/${encodeURIComponent(n)}`,config:e,schema:y})},list(t){aa(`analytics.waits.list`,t.runId);let n=new URLSearchParams;return t.status&&n.set(`status`,t.status),pa(`analytics.waits.list`,n,t.pagination,v),W({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/waits${ma(n)}`,config:e,schema:de(y)})}}}}const va=T(`@workflow/world-vercel//runIdFactory`,1,()=>({ulid:me(),lastRunId:void 0}));function ya(e){let t=Le(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 Fe(t)}function ba(e){return typeof e!=`string`||e===``||e===`unknown`?null:Object.hasOwn(Ne,e)?e:null}function xa(e){return ba(e?.region)??ba(process.env.VERCEL_REGION)??`iad1`}function Sa(e){let t=xa(e),n=Ne[t],r=Pe(va.ulid(),n);if(va.lastRunId!==void 0)for(;r<=va.lastRunId;)r=Pe(ya(va.lastRunId),n);return va.lastRunId=r,r}function Ca(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{let e=Re(t);return e.tagged&&e.region?e.region:Ie}catch{return null}}function wa(e){let t=e.runId;return typeof t!=`string`||t.length===0?null:{region:Ca(t)}}const Ta=O.object({ref:O.string().min(1),byteSize:O.number().int().nonnegative().optional()});async function Ea(e,t,n){let{baseUrl:r,headers:i}=await U(n),a=`${r}/v4/runs/${encodeURIComponent(e)}/dynamic-code?workflowName=${encodeURIComponent(t.workflowName)}`,o=new Headers(i);o.set(`Content-Type`,`application/octet-stream`),o.set(`Accept`,`application/json`),o.set(`Content-Length`,String(t.code.byteLength));let s=await zi({method:`POST`,url:a,headers:o,body:t.code,dispatcher:yr(n),logLabel:`uploadDynamicWorkflowCode`});return Ta.parse(await s.json()).ref}var Da=class extends Error{status;constructor(e,t){super(e),this.name=`RunKeyFetchError`,this.status=t}};async function Oa(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 Ye.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),i=new TextEncoder().encode(`${t}|${n}`),a=await Ye.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:i},r,256);return new Uint8Array(a)}async function ka(e,t,n,r){let i=await Pi({token:r?.token});if(!i)throw Error(`Cannot fetch run key: no OIDC token or VERCEL_TOKEN available`);let a=new URLSearchParams({projectId:t,runId:n});r?.teamId&&a.set(`teamId`,r.teamId);let o=await(await zi({method:`GET`,url:`https://api.vercel.com/v1/workflow/run-key/${e}?${a}`,headers:new Headers({Authorization:`Bearer ${i}`}),dispatcher:_r({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 Da(`Failed to fetch run key for ${n} (deployment ${e}): HTTP ${t.status} ${t.statusText}${r?` — ${r}`:``}`,t.status)}})).json(),s=We.compile(We.object({key:We.string().nullable()})).safeParse(o);if(!s.success)throw Error(`Invalid response from Vercel API: expected { key: string | null }. Zod error: ${s.error.message}`);if(s.data.key!==null)return Buffer.from(s.data.key,`base64`)}function Aa(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?Oa(t,e,c):void 0}if(l)return ka(l,e,c,{token:n,teamId:t,dispatcher:r})}}const ja=2048;function Ma(e){let t;try{t=JSON.stringify(e)}catch(e){throw new xe(`Dynamic workflow execution context must be JSON serializable.`,{cause:e})}let n=new TextEncoder().encode(t).byteLength;if(n>2048)throw new xe(`Dynamic workflow execution context is ${n} bytes, exceeding the ${ja}-byte limit, so no run was created. Each step binding counts its alias and its step ID, which comes from the step's file path and function name and is usually the longer of the two; the \`exportName\` counts too. Bind fewer steps through \`experimental_dynamic.steps\`, or shorten the aliases, the step files' paths or names, or the \`exportName\`.`)}async function Na(){let{getDeadline:e}=await import(`../../_chunks/workflow/functions-CKkqf9V6.js`).then(e=>n(e.default,1));return e()}const Pa={peerService:`workflow-server`,rpcSystem:`http`,rpcService:`workflow-server`},Fa={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},Ia=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function La(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 Ra(e,t){return typeof e[t]==`string`?e[t]:void 0}function za(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function Ba(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 Va(e,t,n){let r=`${e}.${t}`,i={},a=Fa[r],o=a===void 0?Ia.has(r)?za(n[0]):void 0:Ra(n,a);if(o&&Object.assign(i,ei(o)),r===`world.steps.get`){let e=Ra(n,1);e&&Object.assign(i,ti(e))}return i}function Ha(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=La(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 Rr(n,{kind:await zr(`CLIENT`)},async o=>{o?.setAttributes({...Xr(Pa.peerService),...Zr(Pa.rpcSystem),...Qr(Pa.rpcService),...$r(n),...Va(e,a,t),...r});let s=await i(...t),c=Ba(s);return c&&o?.setAttributes(ei(c)),s})}}return n}var K=class extends Error{constructor(e){super(e),this.name=`MultipartParseError`}};function Ua(e){let t=new TextEncoder().encode(e);return(e,n=0)=>Buffer.prototype.indexOf.call(e,t,n)}function Wa(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 Ga(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 Ka(e){let t=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!t)throw new K(`No boundary found in Content-Type header`);return t[1]??t[2]}var qa=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*Ja(e,t){if(!e.body)throw new K(`Response body is null`);let n=e.headers.get(`content-type`);if(!n)throw new K(`Missing Content-Type header`);yield*new Ya(Ka(n),t).parseStream(e.body)}var Ya=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=Ua(`--${e}`),this.openingBoundaryLength=2+e.length,this.findBoundary=Ua(`\r
4
4
  --${e}`),this.findPartialTailBoundary=Wa(`\r
5
5
  --${e}`),this.boundaryLength=4+e.length,this.findDoubleNewline=Ua(`\r
6
6
  \r
7
7
  `),this.maxHeaderSize=t.maxHeaderSize??65536,this.maxBoundaryBuffer=t.maxBoundaryBuffer??8192}async*parseStream(e){let t=e.getReader(),n=new qa,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 K(`Invalid multipart stream: missing initial boundary`):new K(`Unexpected end of stream`);break}if(!(i instanceof Uint8Array))throw new K(`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 K(`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 K(`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 K(`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 K(`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 K(`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 K(`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 K(`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 K(`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 K(`Header buffer limit exceeded: ${t.length} > ${this.maxHeaderSize}`);this.buffer=t;break}let i=this.findDoubleNewline(e,n),a=4;if(i===-1&&(i=Ua(`
8
8
 
9
- `)(e,n),a=2),i===-1){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new K(`Headers too large: ${t.length} > ${this.maxHeaderSize} bytes`);this.buffer=t;break}let o=e.subarray(n,i);this.currentHeaders=Ga(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 K(`Initial chunk too large for boundary detection: ${e.length} > ${this.maxBoundaryBuffer}`);this.buffer=e;break}if(this.findOpeningBoundary(e)!==0)throw new K(`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 Xa=(e,t,n)=>{let r=e instanceof RegExp?Za(e,n):e,i=t instanceof RegExp?Za(t,n):t,a=r!==null&&i!=null&&Qa(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)}},Za=(e,t)=>{let n=t.match(e);return n?n[0]:null},Qa=(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},$a=`\0SLASH`+Math.random()+`\0`,eo=`\0OPEN`+Math.random()+`\0`,to=`\0CLOSE`+Math.random()+`\0`,no=`\0COMMA`+Math.random()+`\0`,ro=`\0PERIOD`+Math.random()+`\0`,io=new RegExp($a,`g`),ao=new RegExp(eo,`g`),oo=new RegExp(to,`g`),so=new RegExp(no,`g`),co=new RegExp(ro,`g`),lo=/\\\\/g,uo=/\\{/g,fo=/\\}/g,po=/\\,/g,mo=/\\\./g;function ho(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function go(e){return e.replace(lo,$a).replace(uo,eo).replace(fo,to).replace(po,no).replace(mo,ro)}function _o(e){return e.replace(io,`\\`).replace(ao,`{`).replace(oo,`}`).replace(so,`,`).replace(co,`.`)}function vo(e,t){for(let n=0;n<t.length;n++)e.push(t[n])}function yo(e){let t=[],n=``;for(;;){let r=Xa(`{`,`}`,e);if(!r){let r=e.split(`,`);return r[0]=n+r[0],vo(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 vo(t,s),t;n=s.pop(),vo(t,s),e=o}}function bo(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)),Do(go(e),n,r,i,0,a,!0).map(_o)}function xo(e){return`{`+e+`}`}function So(e){return/^-?0\d/.test(e)}function Co(e,t){return e<=t}function wo(e,t){return e>=t}function To(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 Eo(e,t,n,r){let i=e.split(/\.\./),a=[];if(i[0]===void 0||i[1]===void 0)return a;let o=ho(i[0]),s=ho(i[1]),c=Math.max(i[0].length,i[1].length),l=i.length===3&&i[2]!==void 0?Math.max(Math.abs(ho(i[2])),1):1,u=Co;s<o&&(l*=-1,u=wo);let d=i.some(So),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 Do(e,t,n,r,i,a,o){if(i>r)return[e];let s=[``],c=0,l=!1,u=!0;for(;;){let d=Xa(`{`,`}`,e);if(!d)return To(s,e,[``],t,n,l);let f=d.pre;if(/\$$/.test(f)){if(s=To(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+to+d.post,o=!0;continue}return To(s,f+`{`+d.body+`}`+d.post,[``],t,n,l)}u&&=(l=o&&!h,!1);let _;if(h)_=Eo(d.body,m,t,n);else{let o=yo(d.body);if(o.length===1&&o[0]!==void 0&&(o=Do(o[0],t,n,r,i+1,a,!1).map(xo),o.length===1)){if(s=To(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=Do(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=To(s,f,_,t,n,l&&!d.post.length),!d.post.length)break;e=d.post}return s}const Oo=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},ko={"[: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]},Ao=e=>e.replace(/[[\]\\-]/g,`\\$&`),jo=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Mo=e=>e.join(``),No=(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(ko))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(Ao(d)+`-`+Ao(t)):t===d&&r.push(Ao(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(Ao(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(Ao(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[jo(e),!1,u-n,!1]}let f=`[`+(l?`^`:``)+Mo(r)+`]`,p=`[`+(l?``:`^`)+Mo(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},Po=(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 Fo;const Io=new Set([`!`,`?`,`+`,`*`,`@`]),Lo=e=>Io.has(e),Ro=e=>Lo(e.type),zo=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),Bo=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),Vo=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),Ho=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),Uo=`(?!\\.)`,Wo=new Set([`[`,`.`]),Go=new Set([`..`,`.`]),Ko=new Set(`().*{}+?[]^$\\!`),qo=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Jo=`[^/]+?`;let Yo=0;var Xo=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++Yo;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 Fo&&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 Fo&&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 Fo(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&&Lo(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new Fo(n,t);u=Fo.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new Fo(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&&Lo(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 Fo(n,d);d.push(o),u=Fo.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new Fo(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,Bo)}#m(e,t=zo){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=Vo){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new Fo(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!!Ho.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=Ho.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 Fo(null,void 0,t);return Fo.#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()),!Ro(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`?Fo.#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&&Go.has(this.#r[0]))){let n=Wo,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?Uo:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,Po(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,Po(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?Uo:``)+Jo;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?Uo:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,Po(i),this.#t=!!this.#t,this.#n]}#x(){if(Ro(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+=(Ko.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?Jo:`[^/]*?`,t=!0;continue}if(o=!1,c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=No(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=qo(c)}return[i,Po(e),!!t,a]}};Fo=Xo;const Zo=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),q=(e,t,n={})=>(Oo(t),!n.nocomment&&t.charAt(0)===`#`?!1:new ws(t,n).match(e)),Qo=/^\*+([^+@!?*[(]*)$/,$o=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),es=e=>t=>t.endsWith(e),ts=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),ns=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),rs=/^\*+\.\*+$/,is=e=>!e.startsWith(`.`)&&e.includes(`.`),as=e=>e!==`.`&&e!==`..`&&e.includes(`.`),os=/^\.\*+$/,ss=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),cs=/^\*+$/,ls=e=>e.length!==0&&!e.startsWith(`.`),us=e=>e.length!==0&&e!==`.`&&e!==`..`,ds=/^\?+([^+@!?*[(]*)?$/,fs=([e,t=``])=>{let n=gs([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},ps=([e,t=``])=>{let n=_s([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},ms=([e,t=``])=>{let n=_s([e]);return t?e=>n(e)&&e.endsWith(t):n},hs=([e,t=``])=>{let n=gs([e]);return t?e=>n(e)&&e.endsWith(t):n},gs=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},_s=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},vs=typeof process==`object`&&process?typeof process.env==`object`&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,ys={win32:{sep:`\\`},posix:{sep:`/`}};q.sep=vs===`win32`?ys.win32.sep:ys.posix.sep;const J=Symbol(`globstar **`);q.GLOBSTAR=J,q.filter=(e,t={})=>n=>q(n,e,t);const bs=(e,t={})=>Object.assign({},e,t);q.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return q;let t=q;return Object.assign((n,r,i={})=>t(n,r,bs(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,bs(e,n))}static defaults(n){return t.defaults(bs(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,bs(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,bs(e,r))}},unescape:(n,r={})=>t.unescape(n,bs(e,r)),escape:(n,r={})=>t.escape(n,bs(e,r)),filter:(n,r={})=>t.filter(n,bs(e,r)),defaults:n=>t.defaults(bs(e,n)),makeRe:(n,r={})=>t.makeRe(n,bs(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,bs(e,r)),match:(n,r,i={})=>t.match(n,r,bs(e,i)),sep:t.sep,GLOBSTAR:J})};const xs=(e,t={})=>(Oo(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:bo(e,{max:t.braceExpandMax}));q.braceExpand=xs,q.makeRe=(e,t={})=>new ws(e,t).makeRe(),q.match=(e,t,n={})=>{let r=new ws(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const Ss=/[?*]|[+@!]\(.*?\)|\[|\]/,Cs=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var ws=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){Oo(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||vs,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]===`?`||!Ss.test(e[2]))&&!Ss.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(J)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(J,i),o=t.lastIndexOf(J),[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===J?(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===J)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 xs(this.pattern,this.options)}parse(e){Oo(e);let t=this.options;if(e===`**`)return J;if(e===``)return``;let n,r=null;(n=e.match(cs))?r=t.dot?us:ls:(n=e.match(Qo))?r=(t.nocase?t.dot?ns:ts:t.dot?es:$o)(n[1]):(n=e.match(ds))?r=(t.nocase?t.dot?ps:fs:t.dot?ms:hs)(n):(n=e.match(rs))?r=t.dot?as:is:(n=e.match(os))&&(r=ss);let i=Xo.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`?Cs(e):e===J?J:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e===J&&a!==J&&(a===void 0?i!==void 0&&i!==J?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==J&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=J))});let i=t.filter(e=>e!==J);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 q.defaults(e).Minimatch}};q.AST=Xo,q.Minimatch=ws,q.escape=Zo,q.unescape=Po;var Ts=r(((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})),Es=r(((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})})),Ds=r(((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=Es();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})})),Os=r(((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})})),ks=r(((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=Os();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})})),As=r(((e,t)=>{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}),t.exports=l(u);var d=Ds(),f=ks(),p=ze();async function m(e){let t=``,r;try{t=(0,f.getVercelOidcTokenSync)()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await import(`../../_chunks/workflow/token-util-CddTZ_ef.js`).then(e=>n(e.t())),await import(`../../_chunks/workflow/token-BKeK6DmC.js`).then(e=>n(e.default))]);(!t||i(r(t),e?.expirationBufferMs))&&(await a(e),t=(0,f.getVercelOidcTokenSync)())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
9
+ `)(e,n),a=2),i===-1){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new K(`Headers too large: ${t.length} > ${this.maxHeaderSize} bytes`);this.buffer=t;break}let o=e.subarray(n,i);this.currentHeaders=Ga(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 K(`Initial chunk too large for boundary detection: ${e.length} > ${this.maxBoundaryBuffer}`);this.buffer=e;break}if(this.findOpeningBoundary(e)!==0)throw new K(`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 Xa=(e,t,n)=>{let r=e instanceof RegExp?Za(e,n):e,i=t instanceof RegExp?Za(t,n):t,a=r!==null&&i!=null&&Qa(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)}},Za=(e,t)=>{let n=t.match(e);return n?n[0]:null},Qa=(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},$a=`\0SLASH`+Math.random()+`\0`,eo=`\0OPEN`+Math.random()+`\0`,to=`\0CLOSE`+Math.random()+`\0`,no=`\0COMMA`+Math.random()+`\0`,ro=`\0PERIOD`+Math.random()+`\0`,io=new RegExp($a,`g`),ao=new RegExp(eo,`g`),oo=new RegExp(to,`g`),so=new RegExp(no,`g`),co=new RegExp(ro,`g`),lo=/\\\\/g,uo=/\\{/g,fo=/\\}/g,po=/\\,/g,mo=/\\\./g;function ho(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function go(e){return e.replace(lo,$a).replace(uo,eo).replace(fo,to).replace(po,no).replace(mo,ro)}function _o(e){return e.replace(io,`\\`).replace(ao,`{`).replace(oo,`}`).replace(so,`,`).replace(co,`.`)}function vo(e,t){for(let n=0;n<t.length;n++)e.push(t[n])}function yo(e){let t=[],n=``;for(;;){let r=Xa(`{`,`}`,e);if(!r){let r=e.split(`,`);return r[0]=n+r[0],vo(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 vo(t,s),t;n=s.pop(),vo(t,s),e=o}}function bo(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)),Do(go(e),n,r,i,0,a,!0).map(_o)}function xo(e){return`{`+e+`}`}function So(e){return/^-?0\d/.test(e)}function Co(e,t){return e<=t}function wo(e,t){return e>=t}function To(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 Eo(e,t,n,r){let i=e.split(/\.\./),a=[];if(i[0]===void 0||i[1]===void 0)return a;let o=ho(i[0]),s=ho(i[1]),c=Math.max(i[0].length,i[1].length),l=i.length===3&&i[2]!==void 0?Math.max(Math.abs(ho(i[2])),1):1,u=Co;s<o&&(l*=-1,u=wo);let d=i.some(So),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 Do(e,t,n,r,i,a,o){if(i>r)return[e];let s=[``],c=0,l=!1,u=!0;for(;;){let d=Xa(`{`,`}`,e);if(!d)return To(s,e,[``],t,n,l);let f=d.pre;if(/\$$/.test(f)){if(s=To(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+to+d.post,o=!0;continue}return To(s,f+`{`+d.body+`}`+d.post,[``],t,n,l)}u&&=(l=o&&!h,!1);let _;if(h)_=Eo(d.body,m,t,n);else{let o=yo(d.body);if(o.length===1&&o[0]!==void 0&&(o=Do(o[0],t,n,r,i+1,a,!1).map(xo),o.length===1)){if(s=To(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=Do(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=To(s,f,_,t,n,l&&!d.post.length),!d.post.length)break;e=d.post}return s}const Oo=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},ko={"[: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]},Ao=e=>e.replace(/[[\]\\-]/g,`\\$&`),jo=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Mo=e=>e.join(``),No=(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(ko))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(Ao(d)+`-`+Ao(t)):t===d&&r.push(Ao(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(Ao(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(Ao(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[jo(e),!1,u-n,!1]}let f=`[`+(l?`^`:``)+Mo(r)+`]`,p=`[`+(l?``:`^`)+Mo(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},Po=(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 Fo;const Io=new Set([`!`,`?`,`+`,`*`,`@`]),Lo=e=>Io.has(e),Ro=e=>Lo(e.type),zo=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),Bo=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),Vo=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),Ho=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),Uo=`(?!\\.)`,Wo=new Set([`[`,`.`]),Go=new Set([`..`,`.`]),Ko=new Set(`().*{}+?[]^$\\!`),qo=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Jo=`[^/]+?`;let Yo=0;var Xo=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++Yo;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 Fo&&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 Fo&&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 Fo(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&&Lo(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new Fo(n,t);u=Fo.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new Fo(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&&Lo(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 Fo(n,d);d.push(o),u=Fo.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new Fo(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,Bo)}#m(e,t=zo){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=Vo){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new Fo(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!!Ho.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=Ho.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 Fo(null,void 0,t);return Fo.#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()),!Ro(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`?Fo.#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&&Go.has(this.#r[0]))){let n=Wo,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?Uo:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,Po(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,Po(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?Uo:``)+Jo;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?Uo:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,Po(i),this.#t=!!this.#t,this.#n]}#x(){if(Ro(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+=(Ko.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?Jo:`[^/]*?`,t=!0;continue}if(o=!1,c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=No(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=qo(c)}return[i,Po(e),!!t,a]}};Fo=Xo;const Zo=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),q=(e,t,n={})=>(Oo(t),!n.nocomment&&t.charAt(0)===`#`?!1:new ws(t,n).match(e)),Qo=/^\*+([^+@!?*[(]*)$/,$o=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),es=e=>t=>t.endsWith(e),ts=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),ns=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),rs=/^\*+\.\*+$/,is=e=>!e.startsWith(`.`)&&e.includes(`.`),as=e=>e!==`.`&&e!==`..`&&e.includes(`.`),os=/^\.\*+$/,ss=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),cs=/^\*+$/,ls=e=>e.length!==0&&!e.startsWith(`.`),us=e=>e.length!==0&&e!==`.`&&e!==`..`,ds=/^\?+([^+@!?*[(]*)?$/,fs=([e,t=``])=>{let n=gs([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},ps=([e,t=``])=>{let n=_s([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},ms=([e,t=``])=>{let n=_s([e]);return t?e=>n(e)&&e.endsWith(t):n},hs=([e,t=``])=>{let n=gs([e]);return t?e=>n(e)&&e.endsWith(t):n},gs=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},_s=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},vs=typeof process==`object`&&process?typeof process.env==`object`&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,ys={win32:{sep:`\\`},posix:{sep:`/`}};q.sep=vs===`win32`?ys.win32.sep:ys.posix.sep;const J=Symbol(`globstar **`);q.GLOBSTAR=J,q.filter=(e,t={})=>n=>q(n,e,t);const bs=(e,t={})=>Object.assign({},e,t);q.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return q;let t=q;return Object.assign((n,r,i={})=>t(n,r,bs(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,bs(e,n))}static defaults(n){return t.defaults(bs(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,bs(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,bs(e,r))}},unescape:(n,r={})=>t.unescape(n,bs(e,r)),escape:(n,r={})=>t.escape(n,bs(e,r)),filter:(n,r={})=>t.filter(n,bs(e,r)),defaults:n=>t.defaults(bs(e,n)),makeRe:(n,r={})=>t.makeRe(n,bs(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,bs(e,r)),match:(n,r,i={})=>t.match(n,r,bs(e,i)),sep:t.sep,GLOBSTAR:J})};const xs=(e,t={})=>(Oo(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:bo(e,{max:t.braceExpandMax}));q.braceExpand=xs,q.makeRe=(e,t={})=>new ws(e,t).makeRe(),q.match=(e,t,n={})=>{let r=new ws(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const Ss=/[?*]|[+@!]\(.*?\)|\[|\]/,Cs=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var ws=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){Oo(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||vs,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]===`?`||!Ss.test(e[2]))&&!Ss.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(J)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(J,i),o=t.lastIndexOf(J),[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===J?(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===J)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 xs(this.pattern,this.options)}parse(e){Oo(e);let t=this.options;if(e===`**`)return J;if(e===``)return``;let n,r=null;(n=e.match(cs))?r=t.dot?us:ls:(n=e.match(Qo))?r=(t.nocase?t.dot?ns:ts:t.dot?es:$o)(n[1]):(n=e.match(ds))?r=(t.nocase?t.dot?ps:fs:t.dot?ms:hs)(n):(n=e.match(rs))?r=t.dot?as:is:(n=e.match(os))&&(r=ss);let i=Xo.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`?Cs(e):e===J?J:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e===J&&a!==J&&(a===void 0?i!==void 0&&i!==J?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==J&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=J))});let i=t.filter(e=>e!==J);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 q.defaults(e).Minimatch}};q.AST=Xo,q.Minimatch=ws,q.escape=Zo,q.unescape=Po;var Ts=r(((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})),Es=r(((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})})),Ds=r(((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=Es();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})})),Os=r(((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})})),ks=r(((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=Os();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})})),As=r(((e,t)=>{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}),t.exports=l(u);var d=Ds(),f=ks(),p=ze();async function m(e){let t=``,r;try{t=(0,f.getVercelOidcTokenSync)()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await import(`../../_chunks/workflow/token-util-Bla5Z0G9.js`).then(e=>n(e.t())),await import(`../../_chunks/workflow/token-D5ugC3PI.js`).then(e=>n(e.default))]);(!t||i(r(t),e?.expirationBufferMs))&&(await a(e),t=(0,f.getVercelOidcTokenSync)())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
10
10
  ${e.message}`),t?new p.VercelOidcTokenError(t):e}return e?.audience&&(t=await(0,d.exchangeVercelOidcToken)({token:t,audience:e.audience,jti:e.jti,skipCache:e.skipCache})),t}0&&(t.exports={getVercelOidcToken:m})})),js=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`);t.default=(e,t)=>(0,n.createHash)(e).update(t).digest()})),Y=r((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=js();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)}})),Ms=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.decode=t.encode=t.encodeBase64=t.decodeBase64=void 0;let n=e(`node:buffer`),r=Y();function i(e){let t=e;return t instanceof Uint8Array&&(t=r.decoder.decode(t)),t}t.encode=e=>n.Buffer.from(e).toString(`base64url`),t.decodeBase64=e=>new Uint8Array(n.Buffer.from(e,`base64`)),t.encodeBase64=e=>n.Buffer.from(e).toString(`base64`),t.decode=e=>new Uint8Array(n.Buffer.from(i(e),`base64url`))})),X=r((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)}}})),Ns=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=e(`node:crypto`);Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.randomFillSync}})})),Ps=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bitLength=r;let t=X(),n=Ns();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))})),Fs=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=X(),n=Ps();e.default=(e,r)=>{if(r.length<<3!==(0,n.bitLength)(e))throw new t.JWEInvalid(`Invalid Initialization Vector length`)}})),Is=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:util`);t.default=e=>n.types.isKeyObject(e)})),Ls=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=X(),n=Is();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`)}})),Rs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=e(`node:crypto`).timingSafeEqual})),zs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;let n=e(`node:crypto`),r=Y();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)}})),Bs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isCryptoKey=void 0;let n=e(`node:crypto`),r=e(`node:util`);t.default=n.webcrypto,t.isCryptoKey=e=>r.types.isCryptoKey(e)})),Vs=r((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`Ed25519`:if(!n(e.algorithm,`Ed25519`))throw t(`Ed25519`);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)}})),Hs=r((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)}})),Us=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r;t.default=e=>(r||=new Set((0,n.getCiphers)()),r.has(e))})),Ws=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.types=void 0;let t=Bs(),n=Is();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`)})),Gs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r=Fs(),i=Ls(),a=Y(),o=X(),s=Rs(),c=zs(),l=Bs(),u=Vs(),d=Is(),f=Hs(),p=Us(),m=Ws();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}}t.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`)}}})),Ks=r((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}})),Z=r((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}})),qs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.unwrap=t.wrap=void 0;let n=e(`node:buffer`),r=e(`node:crypto`),i=X(),a=Y(),o=Bs(),s=Vs(),c=Is(),l=Hs(),u=Us(),d=Ws();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`))}t.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())},t.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())}})),Js=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isJWK=n,e.isPrivateJWK=r,e.isPublicJWK=i,e.isSecretJWK=a;let t=Z();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`}})),Ys=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.weakMap=void 0;let n=e(`node:crypto`),r=X(),i=Bs(),a=Is(),o=Hs(),s=Ws(),c=Js();t.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`)}};t.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`)}}})),Xs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ecdhAllowed=void 0,t.deriveKey=p,t.generateEpk=m;let n=e(`node:crypto`),r=e(`node:util`),i=Ys(),a=Y(),o=X(),s=Bs(),c=Vs(),l=Is(),u=Hs(),d=Ws(),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`)}}t.ecdhAllowed=e=>[`P-256`,`P-384`,`P-521`,`X25519`,`X448`].includes((0,i.default)(e))})),Zs=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=X();function n(e){if(!(e instanceof Uint8Array)||e.length<8)throw new t.JWEInvalid(`PBES2 Salt Input must be 8 or more octets`)}})),Qs=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.decrypt=t.encrypt=void 0;let n=e(`node:util`),r=e(`node:crypto`),i=Ns(),a=Y(),o=Ms(),s=qs(),c=Zs(),l=Bs(),u=Vs(),d=Is(),f=Hs(),p=Ws(),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`))}t.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)}},t.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)}})),$s=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`);t.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`)}})),ec=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.decrypt=t.encrypt=void 0;let n=e(`node:crypto`),r=e(`node:util`),i=$s(),a=Bs(),o=Vs(),s=Is(),c=Hs(),l=Ws(),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))}t.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)},t.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)}})),tc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={}})),nc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bitLength=r;let t=X(),n=Ns();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))})),rc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.fromX509=t.fromSPKI=t.fromPKCS8=t.toPKCS8=t.toSPKI=void 0;let n=e(`node:crypto`),r=e(`node:buffer`),i=Bs(),a=Is(),o=Hs(),s=Ws(),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})};t.toSPKI=e=>c(`public`,`spki`,e),t.toPKCS8=e=>c(`private`,`pkcs8`,e),t.fromPKCS8=e=>(0,n.createPrivateKey)({key:r.Buffer.from(e.replace(/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,``),`base64`),type:`pkcs8`,format:`der`}),t.fromSPKI=e=>(0,n.createPublicKey)({key:r.Buffer.from(e.replace(/(?:-----(?:BEGIN|END) PUBLIC KEY-----|\s)/g,``),`base64`),type:`spki`,format:`der`}),t.fromX509=e=>(0,n.createPublicKey)({key:e,type:`spki`,format:`pem`})})),ic=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`);t.default=e=>e.d?(0,n.createPrivateKey)({format:`jwk`,key:e}):(0,n.createPublicKey)({format:`jwk`,key:e})})),ac=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.importSPKI=o,e.importX509=s,e.importPKCS8=c,e.importJWK=l;let t=Ms(),n=rc(),r=ic(),i=X(),a=Z();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(`oth`in e&&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`)}}})),oc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkKeyTypeWithJwk=void 0;let t=Hs(),n=Ws(),r=Js(),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)})),sc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r=Fs(),i=Ls(),a=Y(),o=zs(),s=Bs(),c=Vs(),l=Is(),u=Hs(),d=Ps(),f=X(),p=Us(),m=Ws();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}}t.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`)}}})),cc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.wrap=i,e.unwrap=a;let t=sc(),n=Gs(),r=Ms();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)}})),lc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=qs(),n=Xs(),r=Qs(),i=ec(),a=Ms(),o=tc(),s=X(),c=nc(),l=ac(),u=oc(),d=Z(),f=cc();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})),uc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=X();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})),dc=r((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)}})),fc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.flattenedDecrypt=d;let t=Ms(),n=Gs(),r=X(),i=Ks(),a=Z(),o=lc(),s=Y(),c=nc(),l=uc(),u=dc();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 T;try{T=(0,t.decode)(e.ciphertext)}catch{throw new r.JWEInvalid(`Failed to base64url decode the ciphertext`)}let te={plaintext:await(0,n.default)(g,x,T,S,C,ee)};if(e.protected!==void 0&&(te.protectedHeader=p),e.aad!==void 0)try{te.additionalAuthenticatedData=(0,t.decode)(e.aad)}catch{throw new r.JWEInvalid(`Failed to base64url decode the aad`)}return e.unprotected!==void 0&&(te.sharedUnprotectedHeader=e.unprotected),e.header!==void 0&&(te.unprotectedHeader=e.header),b?{...te,key:d}:te}})),pc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.compactDecrypt=i;let t=fc(),n=X(),r=Y();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}})),mc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generalDecrypt=i;let t=fc(),n=X(),r=Z();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}})),hc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.unprotected=void 0,e.unprotected=Symbol()})),gc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r=Ms(),i=X(),a=Bs(),o=Is(),s=Hs(),c=Ws();t.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`})}})),_c=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.exportSPKI=i,e.exportPKCS8=a,e.exportJWK=o;let t=rc(),n=rc(),r=gc();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)}})),vc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=qs(),n=Xs(),r=Qs(),i=ec(),a=Ms(),o=tc(),s=nc(),c=X(),l=_c(),u=oc(),d=cc();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})),yc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.FlattenedEncrypt=void 0;let t=Ms(),n=hc(),r=sc(),i=vc(),a=X(),o=Ks(),s=Y(),c=uc();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}}})),bc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.GeneralEncrypt=void 0;let t=yc(),n=hc(),r=X(),i=nc(),a=Ks(),o=vc(),s=Ms(),c=uc();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}}})),xc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=X();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`Ed25519`:case`EdDSA`:return;default:throw new t.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}})),Sc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;let n=e(`node:crypto`),r=Ys(),i=X(),a=$s(),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`Ed25519`:if(s!==`ed25519`)throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be ed25519`);break;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}})),Cc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=X();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`)}}})),wc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;let n=e(`node:crypto`),r=Bs(),i=Vs(),a=Hs(),o=Ws(),s=Js();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`))}})),Tc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r=e(`node:util`),i=xc(),a=Cc(),o=Sc(),s=wc(),c=(0,r.promisify)(n.sign);t.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))}})),Ec=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:crypto`),r=e(`node:util`),i=xc(),a=Sc(),o=Tc(),s=wc(),c=(0,r.promisify)(n.verify);t.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}}})),Dc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.flattenedVerify=f;let t=Ms(),n=Ec(),r=X(),i=Y(),a=Ks(),o=Z(),s=oc(),c=uc(),l=dc(),u=Js(),d=ac();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}})),Oc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.compactVerify=i;let t=Dc(),n=X(),r=Y();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}})),kc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generalVerify=i;let t=Dc(),n=X(),r=Z();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}})),Ac=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=e=>Math.floor(e.getTime()/1e3)})),jc=r((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}})),Mc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=X(),n=Y(),r=Ac(),i=jc(),a=Z(),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}})),Nc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.jwtVerify=i;let t=Oc(),n=Mc(),r=X();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}})),Pc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.jwtDecrypt=i;let t=pc(),n=Mc(),r=X();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}})),Fc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CompactEncrypt=void 0;let t=yc();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(`.`)}}})),Ic=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.FlattenedSign=void 0;let t=Ms(),n=Tc(),r=Ks(),i=X(),a=Y(),o=oc(),s=uc();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)),_}}})),Lc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CompactSign=void 0;let t=Ic();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}`}}})),Rc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.GeneralSign=void 0;let t=Ic(),n=X();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}}})),zc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ProduceJWT=void 0;let t=Ac(),n=Z(),r=jc();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}}})),Bc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SignJWT=void 0;let t=Lc(),n=X(),r=Y(),i=zc();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)}}})),Vc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EncryptJWT=void 0;let t=Fc(),n=Y(),r=zc();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)}}})),Hc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.calculateJwkThumbprint=s,e.calculateJwkThumbprintUri=c;let t=js(),n=Ms(),r=X(),i=Y(),a=Z(),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}`}})),Uc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EmbeddedJWK=i;let t=ac(),n=Z(),r=X();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}})),Wc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createLocalJWKSet=u;let t=ac(),n=X(),r=Z();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)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`;break;case`Ed25519`:t=e.crv===`Ed25519`;break;case`EdDSA`:t=e.crv===`Ed25519`||e.crv===`Ed448`}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}})),Gc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0});let n=e(`node:http`),r=e(`node:https`),i=e(`node:events`),a=X(),o=Y();t.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`)}}})),Kc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.experimental_jwksCache=e.jwksCache=void 0,e.createRemoteJWKSet=l;let t=Gc(),n=X(),r=Wc(),i=Z();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.10.0`),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})),qc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.UnsecuredJWT=void 0;let t=Ms(),n=Y(),r=X(),i=Mc(),a=zc();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}}}})),Jc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;let t=Ms();e.encode=t.encode,e.decode=t.decode})),Yc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeProtectedHeader=i;let t=Jc(),n=Y(),r=Z();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`)}}})),Xc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeJwt=a;let t=Jc(),n=Y(),r=Z(),i=X();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}})),Zc=r((t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.generateSecret=s,t.generateKeyPair=c;let n=e(`node:crypto`),r=e(`node:util`),i=Ns(),a=X(),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`Ed25519`:return o(`ed25519`);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`)}}})),Qc=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generateKeyPair=n;let t=Zc();async function n(e,n){return(0,t.generateKeyPair)(e,n)}})),$c=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generateSecret=n;let t=Zc();async function n(e,n){return(0,t.generateSecret)(e,n)}})),el=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=`node:crypto`})),tl=r((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=el().default})),nl=r((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=pc();Object.defineProperty(e,"compactDecrypt",{enumerable:!0,get:function(){return t.compactDecrypt}});var n=fc();Object.defineProperty(e,"flattenedDecrypt",{enumerable:!0,get:function(){return n.flattenedDecrypt}});var r=mc();Object.defineProperty(e,"generalDecrypt",{enumerable:!0,get:function(){return r.generalDecrypt}});var i=bc();Object.defineProperty(e,"GeneralEncrypt",{enumerable:!0,get:function(){return i.GeneralEncrypt}});var a=Oc();Object.defineProperty(e,"compactVerify",{enumerable:!0,get:function(){return a.compactVerify}});var o=Dc();Object.defineProperty(e,"flattenedVerify",{enumerable:!0,get:function(){return o.flattenedVerify}});var s=kc();Object.defineProperty(e,"generalVerify",{enumerable:!0,get:function(){return s.generalVerify}});var c=Nc();Object.defineProperty(e,"jwtVerify",{enumerable:!0,get:function(){return c.jwtVerify}});var l=Pc();Object.defineProperty(e,"jwtDecrypt",{enumerable:!0,get:function(){return l.jwtDecrypt}});var u=Fc();Object.defineProperty(e,"CompactEncrypt",{enumerable:!0,get:function(){return u.CompactEncrypt}});var d=yc();Object.defineProperty(e,"FlattenedEncrypt",{enumerable:!0,get:function(){return d.FlattenedEncrypt}});var f=Lc();Object.defineProperty(e,"CompactSign",{enumerable:!0,get:function(){return f.CompactSign}});var p=Ic();Object.defineProperty(e,"FlattenedSign",{enumerable:!0,get:function(){return p.FlattenedSign}});var m=Rc();Object.defineProperty(e,"GeneralSign",{enumerable:!0,get:function(){return m.GeneralSign}});var h=Bc();Object.defineProperty(e,"SignJWT",{enumerable:!0,get:function(){return h.SignJWT}});var g=Vc();Object.defineProperty(e,"EncryptJWT",{enumerable:!0,get:function(){return g.EncryptJWT}});var _=Hc();Object.defineProperty(e,"calculateJwkThumbprint",{enumerable:!0,get:function(){return _.calculateJwkThumbprint}}),Object.defineProperty(e,"calculateJwkThumbprintUri",{enumerable:!0,get:function(){return _.calculateJwkThumbprintUri}});var v=Uc();Object.defineProperty(e,"EmbeddedJWK",{enumerable:!0,get:function(){return v.EmbeddedJWK}});var y=Wc();Object.defineProperty(e,"createLocalJWKSet",{enumerable:!0,get:function(){return y.createLocalJWKSet}});var b=Kc();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=qc();Object.defineProperty(e,"UnsecuredJWT",{enumerable:!0,get:function(){return x.UnsecuredJWT}});var S=_c();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=ac();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=Yc();Object.defineProperty(e,"decodeProtectedHeader",{enumerable:!0,get:function(){return w.decodeProtectedHeader}});var ee=Xc();Object.defineProperty(e,"decodeJwt",{enumerable:!0,get:function(){return ee.decodeJwt}}),e.errors=X();var T=Qc();Object.defineProperty(e,"generateKeyPair",{enumerable:!0,get:function(){return T.generateKeyPair}});var te=$c();Object.defineProperty(e,"generateSecret",{enumerable:!0,get:function(){return te.generateSecret}}),e.base64url=Jc();var ne=tl();Object.defineProperty(e,"cryptoRuntime",{enumerable:!0,get:function(){return ne.default}})})),rl=r(((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=nl();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})})),il=r(((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=As(),d=ks(),f=Os(),p=rl(),m=Be(),h=Ds(),g=Ve();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,exchangeVercelOidcToken,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken,verifyVercelOidcToken})})),al=n(Ts(),1),ol=il();async function sl(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 cl=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 sl(e);return JSON.parse(t.toString(`utf8`),this.reviver)}},ll=class extends Error{constructor(e){super(`Message ${e} not found`),this.name=`MessageNotFoundError`}},ul=class extends Error{constructor(e,t){super(`Message ${e} not available for processing${t?`: ${t}`:``}`),this.name=`MessageNotAvailableError`}},dl=class extends Error{constructor(e,t){super(`Message ${e} is corrupted: ${t}`),this.name=`MessageCorruptedError`}},fl=class extends ul{retryAfter;constructor(e,t){super(e,t===void 0?`temporarily locked. Try again later.`:`temporarily locked. Retry after ${t} seconds.`),this.name=`MessageLockedError`,this.retryAfter=t}},pl=class extends Error{retryAfter;constructor(e=`Too many requests`,t){super(e),this.name=`TooManyRequestsError`,this.retryAfter=t}},ml=class extends Error{constructor(e=`Missing or invalid authentication token`){super(e),this.name=`UnauthorizedError`}},hl=class extends Error{constructor(e=`Queue environment doesn't match token environment`){super(e),this.name=`ForbiddenError`}},gl=class extends Error{constructor(e){super(e),this.name=`BadRequestError`}},_l=class extends Error{constructor(e){super(e),this.name=`PayloadTooLargeError`}},vl=class extends Error{constructor(e=`Unexpected server error`){super(e),this.name=`InternalServerError`}},yl=class extends Error{constructor(e,t=1,n=10){super(`Invalid limit: ${e}. Limit must be between ${t} and ${n}.`),this.name=`InvalidLimitError`}},bl=class extends Error{constructor(e){super(`Message ${e} has already been processed`),this.name=`MessageAlreadyProcessedError`}},xl=class extends Error{deploymentId;constructor(e,t){super(e),this.name=`ConsumerDiscoveryError`,this.deploymentId=t}},Sl=class extends Error{constructor(e=`Consumer registry not configured`){super(e),this.name=`ConsumerRegistryNotConfiguredError`}},Cl=300,wl=30,Tl=60,El=10,Dl=3e3,Ol=3,kl=250;function Al(e){return Math.min(Tl,Math.max(El,e/5))}var jl=class{client;topicName;consumerGroupName;visibilityTimeout;constructor(e,t,n,r={}){this.client=e,this.topicName=t,this.consumerGroupName=n,this.visibilityTimeout=Math.max(wl,r.visibilityTimeoutSeconds??Cl)}isClientError(e){return e instanceof ul||e instanceof ll||e instanceof gl||e instanceof ml||e instanceof hl}isNetworkError(e){return e instanceof TypeError}async directiveCallWithRetries(e){let t;for(let n=1;n<=Ol;n++)try{return await e()}catch(e){if(t=e,n===Ol)throw e;if(e instanceof pl){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=kl*n,i=r/2+r/2*Math.random();await new Promise(e=>setTimeout(e,i))}throw t}startVisibilityExtension(e,t){let{messageId:n,receiptHandle:r}=e,i=!0,a=!1,o,s=null,c=Al(this.visibilityTimeout)*1e3,l=c;if(t?.visibilityDeadline){let e=t.visibilityDeadline.getTime()-Date.now();l=e>0?Al(e/1e3)*1e3:0}let u=new Promise(e=>{o=e}),d=()=>{a||(a=!0,o())},f=async()=>{if(!i){d();return}try{await this.client.changeVisibility({messageId:n,queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:r,visibilityTimeoutSeconds:this.visibilityTimeout}),i?s=setTimeout(()=>f(),c):d()}catch(e){if(this.isClientError(e)){console.error(`Visibility extension failed with client error for receipt handle ${r} (stopping retries):`,e),d();return}console.error(`Failed to extend visibility for receipt handle ${r} (will retry in ${Dl/1e3}s):`,e),i?s=setTimeout(()=>f(),Dl):d()}};return s=setTimeout(()=>f(),l),async(e=!1)=>{i=!1,s&&=(clearTimeout(s),null),e?await u:d()}}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,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({messageId:e.messageId,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({messageId:e.messageId,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({messageId:e.messageId,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 a of this.client.receiveMessages({queueName:this.topicName,consumerGroup:this.consumerGroupName,visibilityTimeoutSeconds:this.visibilityTimeout,limit:r,cursorFallback:t&&`cursorFallback`in t?t.cursorFallback:void 0}))i++,await this.processMessage(a,e,{retry:n});return i}}get name(){return this.consumerGroupName}get topic(){return this.topicName}},Ml=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&&Kl()&&!this.client.usesLocalBroker()&&Nu(this.topicName,n.messageId,this.client.getRegion(),t?.delaySeconds,t?.retentionSeconds),{messageId:n.messageId}}consumerGroup(e,t){return new jl(this.client,this.topicName,e,t)}get name(){return this.topicName}},Nl=`com.vercel.queue.v1beta`,Pl=`com.vercel.queue.v2beta`;function Fl(e,t){let n=t.slice(0,-1);return e.startsWith(n)}function Il(e){return typeof e==`object`&&!!e}function Ll(e,t){if(!t||!t.includes(`application/cloudevents+json`))throw Error(`Invalid content type: expected 'application/cloudevents+json'`);if(!Il(e)||!e.type||!e.source||!e.id||!Il(e.data))throw Error(`Invalid CloudEvent: missing required fields`);if(e.type!==`com.vercel.queue.v1beta`)throw Error(`Invalid CloudEvent type: expected '${Nl}', 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 Rl(e,t){if(e instanceof Headers)return e.get(t);let n=e[t];return Array.isArray(n)?n[0]??null:n??null}function zl(e){let t=Rl(e,`ce-type`);if(t!==`com.vercel.queue.v2beta`)throw Error(`Invalid CloudEvent type: expected '${Pl}', got '${t}'`);let n=Rl(e,`ce-vqsqueuename`),r=Rl(e,`ce-vqsconsumergroup`),i=Rl(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=Rl(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=Rl(e,`ce-vqsreceipthandle`);if(!c)return s;let l={...s,receiptHandle:c},u=Rl(e,`ce-vqsdeliverycount`);u&&(l.deliveryCount=parseInt(u,10));let d=Rl(e,`ce-vqscreatedat`);d&&(l.createdAt=d);let f=Rl(e,`ce-vqsexpiresat`);f&&(l.expiresAt=f);let p=Rl(e,`content-type`);p&&(l.contentType=p);let m=Rl(e,`ce-vqsvisibilitydeadline`);return m&&(l.visibilityDeadline=m),l}function Bl(e,t){if(Rl(t,`ce-type`)===`com.vercel.queue.v2beta`){let n=zl(t);return`receiptHandle`in n&&(n.parsedPayload=e),n}return Ll(e,Rl(t,`content-type`))}async function Vl(e){if(e.headers.get(`ce-type`)===`com.vercel.queue.v2beta`){let t=zl(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}),Bl(t,n)}async function Hl(e,t,n){let{queueName:r,consumerGroup:i,messageId:a}=t;if(!n?.client)throw Error(`HandleCallbackOptions.client is required`);let o=vd(n.client);t.region&&(o=o.withRegion(t.region));let s=new Ml(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 Q=al.default.cyan(`[queue]`),Ul=al.default.green(`✓`),Wl=al.default.red(`✗`),Gl=al.default.yellow(`↻`);function Kl(){return process.env.NODE_ENV===`development`&&process.env.VERCEL_DEPLOYMENT_ID===void 0}var ql=Symbol.for(`@vercel/queue.devRouteMappings`);function Jl(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 Yl(){let e=globalThis;if(ql in e)return e[ql]??null;try{let t=Je.join(process.cwd(),`vercel.json`);if(!et.existsSync(t))return e[ql]=null,null;let n=JSON.parse(et.readFileSync(t,`utf-8`));if(!n.functions)return e[ql]=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(`${Q} Unsupported trigger type "${n.type}" for topic "${n.topic}" in ${e}. Use "queue/v2beta" instead.`);continue}r.push({filePath:e,topic:n.topic,consumer:Jl(e),retryAfterSeconds:n.retryAfterSeconds})}}return e[ql]=r.length>0?r:null,e[ql]}catch(t){return console.warn(`${Q} Failed to read vercel.json:`,t),e[ql]=null,null}}function Xl(e){let t=Yl();return t?t.filter(t=>t.topic.includes(`*`)?Fl(e,t.topic):t.topic===e):[]}function Zl(e,t){return Xl(e).find(e=>e.consumer===t)?.retryAfterSeconds}function Ql(e){return/^src\/(app|pages|server)\//.test(e)?e.slice(4):null}function $l(e,t){return e===t||q(e,t)}function eu(e){let t=Yl();if(!t)return[];let n=process.cwd(),r;try{r=Je.relative(n,e)}catch{return[]}let i=r.replace(/\\/g,`/`),a=Ql(i);return t.filter(e=>$l(i,e.filePath)||a!==null&&$l(a,e.filePath))}function tu(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 nu;function ru(){if(nu)return nu;try{let e=typeof __dirname<`u`?__dirname:Je.dirname(new URL(import.meta.url).pathname);nu=Je.resolve(e,`..`)}catch{nu=``}return nu}function iu(){let e=Error().stack;if(!e)return null;let t=e.split(`
11
11
  `).slice(1),n=ru();for(let e of t){let t=tu(e);if(!t)continue;let r=Je.isAbsolute(t)?t:Je.resolve(process.cwd(),t),i;try{i=et.realpathSync(r)}catch{i=r}if(!(n&&i.startsWith(n)))return i}return null}var au=Symbol.for(`@vercel/queue.devHandlerRegistry`);function ou(){let e=globalThis;return e[au]||(e[au]=new Map),e[au]}function su(e,t,n,r){let i=eu(Je.isAbsolute(e)?e:Je.resolve(process.cwd(),e));if(i.length===0)return!1;let a=ou();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 cu(e,t,n,r){if(vd(t).usesLocalBroker?.())return;let i=r??iu();if(!i){console.warn(`${Q} Could not determine caller file path for handler registration.`);return}if(!su(i,e,t,n)){let e=Yl();if(e&&e.length>0)return;let t=process.cwd(),n;try{n=Je.relative(t,i).replace(/\\/g,`/`)}catch{n=i}console.warn(`${Q} handleCallback() in ${n} has no matching experimentalTriggers in vercel.json. This handler won't receive messages.
12
12
 
@@ -42,4 +42,4 @@ To fix this, either:
42
42
  - Deploy to Vercel (OIDC tokens are provisioned automatically)
43
43
  - Provide a token explicitly: \`new QueueClient({ token: '...' })\`
44
44
 
45
- Cause: ${t}`)}}buildUrl(e,...t){let n=encodeURIComponent(e),r=t.map(e=>encodeURIComponent(e)),i=r.length>0?`/`+r.join(`/`):``,a=sd(this.baseUrl.pathname);return`${this.baseUrl.origin}${a}${ld}/${n}${i}`}async fetch(e,t){let n=t.method||`GET`;if(Qu()){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.8.0`),t.headers.set(`Vqs-Client-Ts`,new Date().toISOString());let r=this.dispatcher?{...t,dispatcher:this.dispatcher}:t,i=await fetch(e,r);if(Qu()){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=Lu(this.telemetry,i);return Gu(n,async e=>{await Hu(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 td(t);if(t.status===502&&t.headers.get(`Vqs-Error-Code`)===`consumer_discovery_failed`)throw new xl(e.message||`Consumer discovery failed`,o);nd(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=Iu(r.map(e=>({headers:this.buildMessageHeaders(e,t.contentType),body:()=>t.serialize(e.payload)})));a.set(`Content-Type`,s.contentType);let c=Lu(this.telemetry,i);return Gu(n,async()=>{try{await Hu(a,c);let e=await this.fetch(this.buildUrl(n,`batch`),{method:`POST`,body:s.body,headers:a,duplex:`half`});e.ok||nd(await td(e),`send message batch`);let{results:t}=await e.json();if(t.length!==r.length)throw new vl(`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,cursorFallback:o}=e;if(a!==void 0&&(a<1||a>10))throw new yl(a);let s=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});i!==void 0&&s.set(`Vqs-Visibility-Timeout-Seconds`,i.toString()),a!==void 0&&s.set(`Vqs-Max-Messages`,a.toString()),o!==void 0&&s.set(`Vqs-Cursor-Fallback`,o);let c=this.getConsumeDeploymentId();c&&s.set(`Vqs-Deployment-Id`,c);let l=await this.fetch(this.buildUrl(n,`consumer`,r),{method:`POST`,headers:s});if(l.status===204){await l.text();return}l.ok||nd(await td(l),`receive messages`);for await(let e of Ja(l))try{let n=rd(e.headers);if(!n){console.warn(`Missing required queue headers in multipart part`),await $u(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 $u(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 td(c);if(c.status===404)throw new ll(i);if(c.status===409)throw e.originalMessageId?new ul(i,`This message was a duplicate - use originalMessageId: ${e.originalMessageId}`):new fl(i,ed(c.headers.get(`Retry-After`)));if(c.status===410)throw new bl(i);nd(e,`receive message by ID`)}for await(let e of Ja(c)){let n=rd(e.headers);if(!n)throw await $u(e.payload),new dl(i,`Missing required queue headers in response`);let r=await t.deserialize(e.payload);return{message:{...n,payload:r}}}throw new ll(i)}async acknowledgeMessage(e){let{messageId:t,queueName:n,consumerGroup:r,receiptHandle:i}=e,a=new Headers({Authorization:`Bearer ${await this.getToken()}`,...this.customHeaders}),o=this.getConsumeDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=await this.fetch(this.buildUrl(n,`consumer`,r,`lease`,i),{method:`DELETE`,headers:a});if(!s.ok){let e=await td(s);if(s.status===404)throw new ll(t);if(s.status===409)throw new ul(t,e.message||`Invalid receipt handle, message not in correct state, or already processed`);nd(e,`acknowledge message`,`Missing or invalid receipt handle`)}return await s.text(),{acknowledged:!0}}async changeVisibility(e){let{messageId:t,queueName:n,consumerGroup:r,receiptHandle:i,visibilityTimeoutSeconds:a}=e,o=new Headers({Authorization:`Bearer ${await this.getToken()}`,"Content-Type":`application/json`,...this.customHeaders}),s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r,`lease`,i),{method:`PATCH`,headers:o,body:JSON.stringify({visibilityTimeoutSeconds:a})});if(!c.ok){let e=await td(c);if(c.status===404)throw new ll(t);if(c.status===409)throw new ul(t,e.message||`Invalid receipt handle, message not in correct state, or already processed`);nd(e,`change visibility`,`Missing receipt handle or invalid visibility timeout`)}return await c.text(),{success:!0}}},dd=new WeakMap,fd=Symbol.for(`@vercel/queue.apiClient`);function pd(e,t){dd.set(e,t),Object.defineProperty(e,fd,{value:t,writable:!1,enumerable:!1,configurable:!1})}function md(e){let t=dd.get(e);if(t)return t;let n=e[fd];if(typeof n==`object`&&n){let t=n;return dd.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 hd(e){return`request`in e?e.request:e}function gd(e){return e instanceof bl||e instanceof Error&&e.name===`MessageAlreadyProcessedError`?`already_processed`:e instanceof ul||e instanceof Error&&e.name===`MessageNotAvailableError`?`not_available`:null}function _d(e,t){return console.debug(`Queue callback skipped (${e}) for message ${t??`<unknown>`}: the message was already handled or is no longer available to this consumer.`),{status:`skipped`,reason:e,...t===void 0?{}:{messageId:t}}}function vd(e){return md(e)}var yd=`iad1`;function bd(e){return e||process.env.VERCEL_REGION||(Kl()||console.warn(`[QueueClient] Region not detected \u2014 defaulting to "${yd}". On Vercel this is set automatically via VERCEL_REGION. To silence this warning, pass region explicitly: new QueueClient({ region: "iad1" })`),yd)}var xd=class{constructor(e={}){let t=bd(e.region);pd(this,new ud({...e,region:t}))}send=async(e,t,n)=>{let r=md(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&&Kl()&&!r.usesLocalBroker()&&Nu(e,i.messageId,r.getRegion(),n?.delaySeconds,n?.retentionSeconds),{messageId:i.messageId}};experimental_sendBatch=async(e,t,n)=>{let r=md(this),i=await r.sendBatch({queueName:e,messages:t,telemetry:n?.telemetry});if(!Kl()||r.usesLocalBroker())return i;let a=r.getRegion();for(let[n,r]of i.entries()){if(r.status!==`sent`)continue;let i=t[n];tt(i),Nu(e,r.messageId,a,i.delaySeconds,i.retentionSeconds)}return i};handleCallback=(e,t)=>{Kl()&&!md(this).usesLocalBroker()&&cu(e,this,t);let n=Lu(md(this).getTelemetry?.());return async r=>{let i=hd(r);if(Kl()&&!md(this).usesLocalBroker()&&i.headers.get(`x-vercel-queue-prime`)===`1`){let n=i.headers.get(`x-vercel-queue-prime-file`);return n&&cu(e,this,t,n),Response.json({status:`primed`})}let a;try{a=await Vl(i);let r=a;return await Yu(i.headers,()=>Hl(e,r,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),Response.json({status:`success`})}catch(e){let t=gd(e);return t?Response.json(_d(t,a?.messageId)):(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)=>{Kl()&&!md(this).usesLocalBroker()&&cu(e,this,t);let n=Lu(md(this).getTelemetry?.());return async(r,i)=>{if(r.method!==`POST`){i.status(200).end();return}let a=r.headers[`x-vercel-queue-prime`];if(Kl()&&!md(this).usesLocalBroker()&&a===`1`){let n=r.headers[`x-vercel-queue-prime-file`],a=Array.isArray(n)?n[0]:n;a&&cu(e,this,t,a),i.status(200).json({status:`primed`});return}let o;try{o=Bl(r.body,r.headers);let a=o;await Yu(r.headers,()=>Hl(e,a,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),i.status(200).json({status:`success`})}catch(e){let t=gd(e);if(t){i.status(200).json(_d(t,o?.messageId));return}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 Sd(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 Cd(){return process.env.WORKFLOW_EVENTS_TRANSPORT?.trim().toLowerCase()!==`http`}function wd(){let e=process.env.WORKFLOW_EVENTS_TRANSPORT_WS_OVERRIDE_WORKFLOWS;return e?e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0):[]}function Td(e){if(Cd())return!0;if(!e)return!1;let t=e.slice(e.lastIndexOf(`//`)+2);return wd().some(n=>n===e||n===t)}function Ed(){return Cd()||wd().length>0}function Dd(){let e=process.env.WORKFLOW_INTERNAL_EVENTS_TRANSPORT_STRICT;return e===`1`||e===`true`}function Od(){return process.env.WORKFLOW_STREAMS_TRANSPORT===`ws`}function kd(){let e=process.env.VERCEL_QUEUE_TRACE_PROPAGATION?.toLowerCase();return e===`off`||e===`0`||e===`false`}function Ad(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?ve.parse(e.messageId):null}}var jd=class{contentType=`application/cbor`;serialize(e){return Buffer.from(In(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 ln(Buffer.concat(t))}},Md=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())}},Nd=class{contentType=`application/cbor`;serialize(e){return Buffer.from(In(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 ln(r)}catch{return JSON.parse(r.toString())}}};const Pd=new Ze;function Fd(e){let t=Pd.getStore();t?.collectStepIds&&t.stepIds.size<10&&t.stepIds.add(e)}function Id(e,t){if(t.stepIds.size===0)return e;let n=new Headers(e.headers);return n.set(`x-vercel-internal-workflow-step-ids`,JSON.stringify(Array.from(t.stepIds))),new Response(e.body,{headers:n,status:e.status,statusText:e.statusText})}const Ld=O.compile(O.object({payload:x,queueName:d,deploymentId:O.string().optional()})),Rd=Number(process.env.VERCEL_QUEUE_MAX_DELAY_SECONDS||82800);function zd(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 Bd(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,zd(e)??1)}function Vd(e){if(`runId`in e&&typeof e.runId==`string`)return e.runId}function Hd(e){try{return f(e).id}catch{return}}const Ud=(e,t,n)=>{let r;return{open(){e&&Td(t)&&(r=Promise.resolve().then(()=>Ch).then(({openWsChannel:r})=>r(e,n,{workflowName:t})).catch(()=>void 0))},async close(){(await r)?.()}}};function Wd(e){if(!e)return;let t=e.startsWith(`wrun_`)?e.slice(5):e;try{let e=Re(t);return!e.tagged||e.regionId===Ne.unknown?void 0:e.region??void 0}catch{return}}function Gd(e,t){if(Me(t?.region))return t.region;let n=Wd(Vd(e));if(n)return n;let r=process.env.VERCEL_REGION;return Me(r)?r:`iad1`}function Kd(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 qd=/^__([a-z][a-z0-9]*_)?wkf_workflow_/,Jd=T(`@workflow/world-vercel//queueLogLatches`,1,()=>({loggedSequentialReplays:!1}));function Yd(){return process.env.WORKFLOW_SEQUENTIAL_REPLAYS===`1`}function Xd(e,t){return!Yd()||!qd.test(e)?e:(Jd.loggedSequentialReplays||(Jd.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 Zd(e){let{baseUrl:t,usingProxy:n}=Ki(e),r=Ji(e,{usingProxy:n}),i=new jd,a=new Md,o=new Nd,s={dispatcher:vr(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(`${Sd(`Enqueuing a workflow message`)} Callers outside a deployment can instead pass an explicit deploymentId in options.`);return{deploymentId:r,useCbor:(n?.specVersion??8)>=3,region:Gd(t,n),topic:Xd(e,t).replace(/[^A-Za-z0-9-_]/g,`-`),wrapper:{payload:t,queueName:e,deploymentId:n?.deploymentId},sendOptions:{idempotencyKey:n?.idempotencyKey,delaySeconds:n?.delaySeconds,headers:{...Kd(t),...n?.headers}}}},l=e=>new xd({...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?ve.parse(i):null}};return{queue:u,queueBatch:async(e,t)=>{let n=Array(t.length);if(t.length===0)return n;let r=kd()?{}:await Vr(),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]=Ad(a[e])}})),n},createQueueHandler:(t,n)=>{let r=new xd(s).handleCallback(async(t,r)=>{if(!t||!r)return;let i=Pd.getStore(),a=i?.requestId,{payload:o,queueName:s,deploymentId:c}=Ld.parse(t),l=Ud(Vd(o),Hd(s),e),d=!(`stepId`in o&&typeof o.stepId==`string`);l.open();try{let e=()=>n(o,{queueName:s,messageId:ve.parse(r.messageId),attempt:r.deliveryCount,requestId:a}),t=await(i?Pd.run({...i,collectStepIds:d},e):e());if(!(`invoke`in o&&o.invoke===!0)&&typeof t==`object`&&t&&`timeoutSeconds`in t&&typeof t.timeoutSeconds==`number`){let e=t.timeoutSeconds>0?Math.min(t.timeoutSeconds,Rd):void 0;await u(s,o,{deploymentId:c,delaySeconds:e})}}finally{await l.close()}},{retry:(e,{messageId:t,deliveryCount:n})=>{let r=Bd(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={collectStepIds:!1,requestId:e.headers.get(`x-vercel-id`)?.trim()||void 0,stepIds:new Set};return Id(await Pd.run(t,()=>r(e)),t)}},getDeploymentId:async()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;if(!e)throw Error(Sd(`Starting a workflow run`));return e},isDeploymentUnavailableError:e=>e instanceof xl}}const Qd=We.compile(We.object({id:We.string()}));async function $d(e){if(e?.token)return e.token;if(process.env.VERCEL===`1`){let e=await(0,dt.getVercelOidcToken)().catch(()=>null);if(e)return e}return Pi(e)}function ef(e){return async function(){let t=process.env.VERCEL_DEPLOYMENT_ID;if(!t)throw Error(Sd(`Resolving the latest deployment for deploymentId: 'latest'`));let n=await $d(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=await(await zi({method:`GET`,url:`https://api.vercel.com/v1/workflow/resolve-latest-deployment/${encodeURIComponent(t)}${i}`,headers:new Headers({Authorization:`Bearer ${n}`}),dispatcher:_r(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(),o=Qd.safeParse(a);if(!o.success)throw Error(`Invalid response from Vercel API: expected { id: string }. Zod error: ${o.error.message}`);return o.data.id}}var tf=class extends Error{error;constructor(e){super(`Replay event observer failed`,{cause:e}),this.error=e,this.name=`ReplayEventObserverError`}},nf=class extends Error{error;constructor(e){super(`Event log read after a committed write failed`,{cause:e}),this.error=e,this.name=`AfterCommitError`}};const rf=new Set([`step_completed`,`step_retrying`]);function af(e){return rf.has(e)}const of={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`}},sf=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 cf(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(...cf(r.cause,t+1)),n}function lf(e){if(e instanceof tf||De.is(e)||Ee.is(e)||Ce.is(e)||Se.is(e)||je.is(e))return!1;if(D.is(e)||E.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!cf(e).some(e=>[`AbortError`,`ABORT_ERR`,`UND_ERR_ABORTED`,`ERR_HTTP2_STREAM_CANCEL`].includes(e))}return cf(e).some(e=>sf.has(e))}const uf=(e,t)=>new Promise((n,r)=>{if(t?.aborted){r(t.reason);return}let i=()=>{clearTimeout(a),r(t?.reason)},a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},e);t?.addEventListener(`abort`,i,{once:!0})}),df=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`);function ff(e,t){if(!df)return;let n=Object.entries(t).map(([e,t])=>`${e}=${t}`).join(` `);console.debug(`[workflow:world-vercel:event-retry] ${e} ${n}`)}function pf(e){return D.is(e)?e.code??(e.status==null?e.name:`status_${e.status}`):cf(e)[0]??(e instanceof Error?e.name:`unknown`)}async function mf(){try{let e=(await Na())?.getTime();return e!==void 0&&Number.isFinite(e)?e:void 0}catch{return}}function hf(e,t){let n=0,r;return async(i,a)=>{let o=Math.max(1,typeof i.retryAfter==`number`?i.retryAfter:1)*1e3;if(r===void 0){let e=await mf();r={budgetMs:t===`invocation`&&e!==void 0?9e5:3e4,deadlineMs:e}}let s=r.deadlineMs!==void 0&&Date.now()+o>r.deadlineMs-15e3;if(n+o>r.budgetMs||s)throw ff(`throttle retry budget exhausted; surfacing to the queue`,{target:e,budget:t,waitedMs:n,retryAfter:i.retryAfter,outlastsInvocation:s}),i;n+=o,console.warn(`[workflow] Throttled (429) ${e}; retrying in-process in ${o/1e3}s`),await uf(o,a)}}function gf(e,t){return t?.batchIdempotent===void 0&&(t?.afterStepBody===!0||af(e))?`invocation`:`bounded`}function _f(e,t){return t?.batchIdempotent===void 0?e===`hook_received`&&t?.idempotentHookResume===!0||(of[e]?.retryable??!1):t.batchIdempotent}async function vf(e,t,n){let r=_f(t,n),i=hf(`writing ${t} event`,gf(t,n));for(let n=0;;)try{return await e()}catch(e){if(e instanceof nf)throw e;if(je.is(e)){await i(e);continue}if(!r||!lf(e))throw e;if(n>=2)throw ff(`exhausted in-process retries; surfacing for queue redelivery`,{eventType:t,attempts:n+1,error:pf(e)}),e;let a=100*2**n+Math.floor(Math.random()*50);n++,ff(`retrying event POST after transient failure`,{eventType:t,attempt:n,backoffMs:a,error:pf(e)}),await uf(a)}}const yf=`application/vnd.workflow.v4-frames`;var bf=class extends Error{};const xf=O.compile(O.record(O.string(),O.unknown()));function Sf(e,t){let n=new Uint8Array(In(e)),r=new Uint8Array(4+n.byteLength+4+t.byteLength),i=new DataView(r.buffer);return i.setUint32(0,n.byteLength,!1),r.set(n,4),i.setUint32(4+n.byteLength,t.byteLength,!1),r.set(t,4+n.byteLength+4),r}function Cf(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.byteLength<4)throw Error(`ws frame shorter than the meta length prefix`);let n=4+t.getUint32(0,!1);if(e.byteLength<n+4)throw Error(`ws frame too short for meta + body length prefix`);let r=ln(e.subarray(4,n));if(typeof r!=`object`||!r||Array.isArray(r))throw Error(`ws frame meta must be a CBOR map`);let i=n+4,a=i+t.getUint32(n,!1);if(e.byteLength!==a)throw Error(e.byteLength<a?`ws frame shorter than its declared body length`:`ws frame has ${e.byteLength-a} trailing bytes`);return{meta:r,body:e.subarray(i,a)}}async function*wf(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():Ef(e.getReader()),n=new Uint8Array,r=async e=>{if(n.byteLength>=e)return!0;let r=[n],i=n.byteLength;for(;i<e;){let e;try{e=await t.next()}catch(e){throw new bf(`decodeFrames: source stream failed`,{cause:e})}if(e.done)return!1;e.value.byteLength!==0&&(r.push(e.value),i+=e.value.byteLength)}n=new Uint8Array(i);let a=0;for(let e of r)n.set(e,a),a+=e.byteLength;return!0},i=e=>{let t=n.subarray(0,e);return n=n.subarray(e),t};try{for(;;){if(!await r(4))return;let e=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),!await r(e))throw new bf(`decodeFrames: truncated meta block`);let t=xf.parse(ln(i(e)));if(!await r(4))throw new bf(`decodeFrames: truncated body length`);let a=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),a>0&&!await r(a))throw new bf(`decodeFrames: truncated body bytes`);if(yield{meta:t,body:n.slice(0,a)},i(a),t._end===1)return}}finally{Tf(()=>t.return?.())}}function Tf(e){try{Promise.resolve(e()).catch(()=>{})}catch{}}async function*Ef(e){try{for(;;){let{done:t,value:n}=await e.read();if(t)return;n&&(yield n)}}finally{Tf(()=>e.cancel())}}const Df=`gzip`,Of=`zstd`,kf=new TextDecoder,Af=new Set([`devl`,`encr`,Df,Of]);function jf(){try{return globalThis.process?.getBuiltinModule?.(`node:zlib`)}catch{return}}function Mf(e){return!(e instanceof Uint8Array)||e.byteLength<4?null:kf.decode(e.subarray(0,4))}function Nf(e){let t=Mf(e);return t!==null&&Af.has(t)}function Pf(e,t){let n=jf(),r=e===Of?n?.zstdDecompressSync:n?.gunzipSync;if(!r)throw new D(`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 Ff(e){let t=Mf(e);return t!==Of&&t!==Df?e:Pf(t,e.subarray(4))}function If(e){try{return Ff(e)}catch(e){throw D.is(e)?e:new D(`Stored dynamic workflow code could not be decompressed.`,{code:`WORLD_CONTRACT_ERROR`,cause:e})}}function Lf(e){return{...e,input:Ff(e.input),output:Ff(e.output),error:Ff(e.error),...e.dynamicWorkflowCode===void 0?{}:{dynamicWorkflowCode:If(e.dynamicWorkflowCode)}}}function Rf(e){return{...e,input:Ff(e.input),output:Ff(e.output),error:Ff(e.error)}}function zf(e){return{...e,metadata:Ff(e.metadata)}}const Bf=O.compile(m.omit({error:!0}).extend({error:O.union([ee,O.any()]).optional(),errorRef:O.any().optional()})),Vf=O.compile(Bf.omit({input:!0,output:!0}).extend({inputRef:O.any().optional(),outputRef:O.any().optional(),input:O.instanceof(Uint8Array).optional(),output:O.instanceof(Uint8Array).optional()}));function Hf(e){let{error:t,errorRef:n,...r}=e,i={...r},a=t??n;return a!=null&&(i.error=a),i}function Uf(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...Rf(Hf(r)),input:void 0,output:void 0}}return Rf(Hf(e))}async function Wf(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=await W({endpoint:`/v2/runs/${encodeURIComponent(n)}/steps${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:de(o===`lazy`?Vf:Bf)});return{...c,data:c.data.map(e=>Uf(e,i))}}async function Gf(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();return Uf(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}/steps/${encodeURIComponent(t)}${s?`?${s}`:``}`,options:{method:`GET`},config:r,schema:a===`lazy`?Vf:Bf}),i)}async function Kf(e,t,n,r,i){let a=yr(n),o=await zi({method:t.method,url:e,headers:t.headers,body:t.body,dispatcher:a,attributes:i,onTransportOutcome:e=>mr(a,e),deferTransportSuccessUntilBody:!0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r,buildError:async t=>cp(t.status,ji(t.headers),new Uint8Array(await t.arrayBuffer()),r,e)});if(!o.body)return mr(a),o;let s=o.body.getReader(),c=new ReadableStream({async pull(t){try{let e=await s.read();e.done?(mr(a),t.close()):t.enqueue(e.value)}catch(n){mr(a,n);let i=Si(n);t.error(i?new E(`v4 ${r}: response stream transport failure (${i})`,{cause:n,url:e}):n)}},cancel(e){return mr(a),s.cancel(e)}});return new Response(c,{status:o.status,statusText:o.statusText,headers:o.headers})}const qf=`x-wf-event-id`,Jf=`x-wf-max-events`;function Yf(e,t,n){return`${e}/v4/runs/${encodeURIComponent(t)}/events/${encodeURIComponent(n)}`}const Xf=Symbol(`omitted event payload`),Zf=O.compile(O.preprocess(e=>{if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=e,n=typeof t.eventType==`string`?c(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]:Xf}}},S).transform(e=>{let t=c(e.eventType);if(!t||!(`eventData`in e))return e;let n=e.eventData;if(typeof n!=`object`||!n||Array.isArray(n)||n[t]!==Xf)return e;let r={...n};return delete r[t],{...e,eventData:r}})),Qf=O.compile(O.object({event:Zf,run:C.optional(),step:Bf.transform(Hf).optional(),hook:ye.optional(),wait:p.optional(),stepCreated:O.literal(!0).optional(),maxEvents:O.number().int().positive().optional()})),$f=O.compile(O.union([O.object({events:O.array(Zf),cursor:O.string().nullable(),hasMore:O.boolean()}),O.object({events:O.undefined().optional(),cursor:O.undefined().optional(),hasMore:O.undefined().optional()})])),$=O.compile(Qf.and($f)),ep={run_created:O.compile(Qf.extend({run:C}).and($f)),run_started:O.compile(Qf.extend({run:C.and(O.object({startedAt:O.coerce.date()}))}).and($f)),step_started:O.compile(Qf.extend({step:Bf.extend({startedAt:O.coerce.date()}).transform(e=>({...Hf(e),startedAt:e.startedAt}))}).and($f)),run_completed:$,run_failed:$,run_cancelled:$,attr_set:$,step_created:$,step_completed:$,step_failed:$,step_retrying:$,hook_created:$,hook_received:$,hook_disposed:$,hook_conflict:$,wait_created:$,wait_completed:$,noop:$},tp=O.compile(O.coerce.number().int().positive()),np=O.compile(O.object({_end:O.literal(1),next:O.string().optional(),hasMore:O.boolean()})),rp=O.compile(O.object({_error:O.literal(1),code:O.string(),message:O.string().optional()})),ip=new Set([`run_failed`,`step_failed`,`step_retrying`]);function ap(e){if(Nf(e))return e;try{let t=ae.safeParse(ln(e.slice()));return t.success?t.data:e}catch{return e}}function op({meta:e,body:t}){let n=w.parse(e.eventType);if(t.byteLength===0)return Zf.parse(e);let r=c(n);return Qe(r,`Event type ${n} cannot carry a payload body`),Qe(e.eventData&&typeof e.eventData==`object`),Zf.parse({...e,eventData:{...e.eventData,[r]:ip.has(n)?ap(t):t}})}function sp(e){let t={eventType:e.eventType,specVersion:e.specVersion};return e.executorSpecVersion!==void 0&&(t.executorSpecVersion=e.executorSpecVersion),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.eventsRemoteRefBehavior!==void 0&&(t.eventsRemoteRefBehavior=e.eventsRemoteRefBehavior),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.hookForce!==void 0&&(t.hookForce=e.hookForce),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.dynamicWorkflowCode!==void 0&&(t.dynamicWorkflowCode=e.dynamicWorkflowCode),e.dynamicWorkflowCodeRef!==void 0&&(t.dynamicWorkflowCodeRef=e.dynamicWorkflowCodeRef),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 cp(e,t,n,r,i){let a=`v4 ${r} failed: HTTP ${e}`,o,s,{record:c,text:l}=lp(n,Tp(t,`content-type`));c?(typeof c.message==`string`&&(a=c.message),typeof c.code==`string`?o=c.code:typeof c.error==`string`&&(o=c.error),e===412&&(s=up(c)),e===409&&o===`hook-force-claimed`&&(s={claimedBy:c.claimedBy})):l&&(a+=` ${l}`);let u=Ai(Tp(t,`retry-after`));return Mi(e,a,{retryAfter:u,code:o,url:i,mitigated:Tp(t,`x-vercel-mitigated`),...s===void 0?{}:{details:s}})}function lp(e,t){if(typeof e!=`string`&&t?.includes(`application/cbor`)){try{let t=ln(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 up(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`||dp(e))return;let r=Zf.safeParse(e);if(!r.success)return;t.push(r.data)}return{events:t,...typeof e.cursor==`string`?{cursor:e.cursor}:{}}}function dp(e){let t=e.eventType;if(typeof t!=`string`)return!1;let n=c(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 fp(e,t,n){let{baseUrl:r,headers:i}=await U(n),a=new Headers(i);a.set(`Content-Type`,`application/octet-stream`),t===`event-stream`&&a.set(`Accept`,yf);let o=Sf(sp(e),e.payload??new Uint8Array);return Kf(Yf(r,e.runId,e.eventType),{method:`POST`,headers:a,body:o},n,`createEvent`,{...ai(`http`),...si(e.eventType),...ui(`@workflow/world-vercel/${Un}`),...e.eventType===`step_started`?{...ci(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...li(e.ownerMessageId!==void 0)}:{},...e.stso===void 0?{}:di(e.stso),...e.optimizations===void 0?{}:fi(e.optimizations)})}const pp=new Set([`step_completed`]);function mp(e){if(Dd()&&Cd()&&pp.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 hp(e,t){if(Ed()){let n=await Cp(e,t);if(n)return gp(n,e.eventType);mp(e.eventType)}let n=await fp(e,`materialized`,t);if(n.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))throw new D(`v4 createEvent: unexpected event page`,{code:`SCHEMA_VALIDATION`});return gp(n,e.eventType)}async function gp(e,t){let n;try{n=new Uint8Array(await e.arrayBuffer())}catch(e){throw E.is(e)?e:new D(`v4 createEvent: failed to read response body`,{code:`TRANSPORT`,cause:e})}if(n.byteLength===0)throw new D(`v4 createEvent: empty response body`,{code:`PARSE_ERROR`});let r=O.compile(ep[t].refine(({event:e})=>e.eventType===t||t===`hook_created`&&e.eventType===`hook_conflict`,{path:[`event`,`eventType`]})),i;try{i=ln(n)}catch(e){throw new D(`v4 createEvent: invalid CBOR response body`,{code:`PARSE_ERROR`,cause:e})}let a=r.safeParse(i);if(!a.success)throw new D(`v4 createEvent: invalid response body`,{code:`SCHEMA_VALIDATION`,cause:a.error});return a.data}async function _p(e,t,n){let r=await fp({...e,eventType:`run_started`},`event-stream`,t),i=await Ap(r,e,t,n);if(!i.cursor)throw new D(`v4 createEvent: event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let a=tp.safeParse(r.headers.get(Jf));if(!a.success)throw new D(`v4 createEvent: invalid max-events header`,{code:`SCHEMA_VALIDATION`,cause:a.error});return{...i,maxEvents:a.data}}const vp=O.compile(O.object({status:O.number().int(),error:O.string(),message:O.string()}));async function yp(e,t){Qe(e.events.length>0,`v4 createEventBatch: empty batch`);let{baseUrl:n,headers:r}=await U(t),i=new Headers(r);i.set(`Content-Type`,`application/octet-stream`);let a=e.events.map(e=>Sf(sp(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 Kf(`${n}/v4/runs/${encodeURIComponent(e.runId)}/events/batch`,{method:`POST`,headers:i,body:s},t,`createEventBatch`,{...ai(`http`),"workflow.batch.bytes":s.byteLength,...e.events.some(e=>e.eventType===`step_started`)?{...ci(e.events.some(e=>e.eventType===`step_created`)?`batch_create_claim`:`batch_bare`),...li(e.events.some(e=>e.ownerMessageId!==void 0))}:{}}),u=new Uint8Array(await l.arrayBuffer()),d=u.byteLength>0?ln(u):{};if(!Array.isArray(d.results)||d.results.length!==e.events.length)throw new D(`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=vp.safeParse(t);if(r.success&&r.data.status!==200)return r.data;if(t?.status!==200)throw new D(`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=ep[i].safeParse(t);if(!a.success)throw new D(`v4 createEventBatch: invalid result body at index ${n} (${i})`,{code:`SCHEMA_VALIDATION`,cause:a.error});if(a.data.event.eventType!==i)throw new D(`v4 createEventBatch: result at index ${n} carries a ${a.data.event.eventType} event, expected ${i}`,{code:`SCHEMA_VALIDATION`});return{status:200,...a.data}})}}function bp(e){let t={};return typeof e.eventId==`string`&&(t[qf]=e.eventId),typeof e.retryAfter==`string`&&(t[`retry-after`]=e.retryAfter),typeof e.mitigated==`string`&&(t[`x-vercel-mitigated`]=e.mitigated),t}function xp(e,t){let{replyParts:n=1}=t;n>1&&e?.setAttributes({...gi(n)})}function Sp(e,t){let{status:n}=e.meta;if(typeof n!=`number`)throw new D(`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 Cp(e,t){let{resolveWsTransport:n}=await Promise.resolve().then(()=>Ch),{runId:r}=e,i=n(r,t);if(!i)return;let{transport:a,wsUrl:o}=i,s=`${o}#runs/${encodeURIComponent(r)}/events`;return Li({method:`POST`,url:Yf(Ki(t).baseUrl,r,e.eventType),attributes:{...ai(`ws`),...si(e.eventType),...ui(`@workflow/world-vercel/${Un}`),...e.stso===void 0?{}:di(e.stso),...e.optimizations===void 0?{}:fi(e.optimizations),...e.eventType===`step_started`?{...ci(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...li(e.ownerMessageId!==void 0)}:{},...Jr(`websocket`),...pi(o)}},async t=>{let n=Date.now(),r;try{r=await a.request(n=>(t?.setAttributes({...mi(n)}),Sf({reqId:n,type:`event`,event:sp(e)},e.payload??new Uint8Array)),{onMessages:e=>{e>1&&t?.setAttributes({...hi(e)})}})}catch(e){let n=new D(`POST ${s} transport failure: ${e instanceof Error?e.message:String(e)}`,{url:o,code:`TRANSPORT`,cause:e});throw t?.setAttributes({...qr(`TRANSPORT`)}),t?.recordException?.(n),n}let i=Date.now()-n;xp(t,r);let c=Sp(r,s),l=bp(r.meta),u={get:e=>l[e.toLowerCase()]??null};if(Oi(`POST`,`createEvent`,{status:c,headers:u},i),Ri(t,c),c<200||c>=300){let e=cp(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 wp(e,t,n){let r=await fp({...e,eventType:`hook_received`},`event-stream`,t);if(!r.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))return{kind:`materialized`,result:await gp(r,`hook_received`)};let i=await Ap(r,e,t,n),a=tp.safeParse(r.headers.get(Jf));return{kind:`stream`,...i,canonicalEventId:r.headers.get(qf)??void 0,maxEvents:a.success?a.data:void 0}}function Tp(e,t){let n=e[t];if(typeof n==`string`)return n;if(Array.isArray(n)&&n.length>0)return n[0]}async function Ep(e,t,n,r){let{baseUrl:i,headers:a}=await U(r),o=await Kf(`${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 ${yf}, got ${s??`(none)`}`);let c=o.body;try{for await(let e of wf(c)){if(e.meta._error===1)throw Dp(e.meta,`getEvent`);if(Object.keys(e.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 getEvent: unexpected control frame`);return op(e)}}catch(e){throw e instanceof bf&&E.is(e.cause)?e.cause:e}throw Error(`v4 getEvent: empty frame stream for ${t}`)}function Dp(e,t){let n=rp.safeParse(e);if(!n.success)return new D(`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 ke(`the event log references a payload that no longer exists in storage: ${a}`):new D(`v4 ${t}: stream ended with terminal error "${r}": ${a}`,{code:`WORLD_CONTRACT_ERROR`})}function Op(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 kp(e,t,n){let r=e.headers.get(`content-type`);if(!r?.startsWith(`application/vnd.workflow.v4-frames`))throw new D(`v4 ${t}: expected ${yf}, got ${r??`(none)`}`,{code:`SCHEMA_VALIDATION`});if(!e.body)throw new D(`v4 ${t}: response body is missing`,{code:`TRANSPORT`});let i=[];try{for await(let r of wf(e.body)){if(r.meta._end===1){let e=np.parse(r.meta);return{kind:`complete`,events:i,cursor:e.next??null,hasMore:e.hasMore}}if(r.meta._error===1)throw Dp(r.meta,t);if(Object.keys(r.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 ${t}: unexpected control frame`);let e=op(r);i.push(e);try{n?.(e)}catch(e){throw new tf(e)}}}catch(e){if(e instanceof tf||ke.is(e)||D.is(e))throw e;if(e instanceof bf&&E.is(e.cause))return Op(i,e.cause);if(!(e instanceof bf))throw new D(`v4 ${t}: invalid event frame stream`,{code:`SCHEMA_VALIDATION`,cause:e});return Op(i,new D(`v4 ${t}: incomplete event frame stream`,{code:`TRANSPORT`,cause:e}))}return Op(i,new D(`v4 ${t}: frame stream ended without the end-of-stream sentinel (${i.length} events read)`,{code:`TRANSPORT`}))}async function Ap(e,{runId:t,eventsRemoteRefBehavior:n},r,i){let a=await kp(e,`createEvent`,i);if(!a.hasMore)return{events:a.events,cursor:a.cursor,hasMore:!1};if(!a.cursor)throw new D(`v4 createEvent: partial event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let o;try{o=await Rp(t,{cursor:a.cursor,remoteRefBehavior:n===`skip-step-inputs`?`skip-step-inputs`:`resolve`},r,i)}catch(e){throw je.is(e)?new nf(e):e}return{events:[...a.events,...o.events],cursor:o.cursor??a.cursor,hasMore:o.hasMore}}async function jp(e,t,n,r,i){return kp(await Kf(e,{method:`GET`,headers:t},n,r),r,i)}const Mp=T(`@workflow/world-vercel//skipStepInputsSupport`,2,()=>({unsupportedSince:new Map}));function Np(e){let t=Mp.unsupportedSince.get(e);return t===void 0?!1:Date.now()-t<6e5||(Mp.unsupportedSince.delete(e),!1)}function Pp(e){return e instanceof D&&e.status===400&&e.code===`validation-error`}async function Fp(e,t,n,r,i,a,o){if(t===`skip-step-inputs`&&!Np(e)){try{return await jp(n(t),r,i,a,o)}catch(e){if(!Pp(e))throw e}let s=await jp(n(`resolve`),r,i,a,o);return Mp.unsupportedSince.set(e,Date.now()),s}return jp(n(t===`skip-step-inputs`?`resolve`:t),r,i,a,o)}function Ip(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 Lp(e){let t=new URLSearchParams;return e.limit===void 0&&t.set(`returnAll`,`true`),Ip(t,e),`?${t.toString()}`}async function Rp(e,t={},n,r){let{baseUrl:i,headers:a}=await U(n),o=[],s=t.cursor??null,c=0,l,u=t.limit===void 0,d=hf(`reading events`,`bounded`);for(;;){let f=s??void 0;try{l=await Fp(i,t.remoteRefBehavior,n=>`${i}/v4/runs/${encodeURIComponent(e)}/events`+Lp({...t,remoteRefBehavior:n,cursor:f}),a,n,`listEvents`,r)}catch(e){if(!u||!je.is(e))throw e;await d(e);continue}let p=!!l.cursor&&l.cursor!==s;if(l.kind===`partial`){if(t.limit!==void 0||!p||c===2)throw l.error;c++,s=l.cursor}else if(!p&&(l.events.length>0||l.hasMore))throw new D(`v4 listEvents: response did not advance cursor`,{code:`SCHEMA_VALIDATION`});for(let e of l.events)o.push(e);if(l.kind!==`partial`)break}return{events:o,cursor:l.cursor||(c>0?s:null),hasMore:l.hasMore}}async function zp(e,t,n={},r){let{baseUrl:i,headers:a}=await U(r),o=await Fp(i,n.remoteRefBehavior,r=>{let a=new URLSearchParams;return a.set(`correlationId`,e),a.set(`runId`,t),Ip(a,{...n,remoteRefBehavior:r}),`${i}/v4/events?${a.toString()}`},a,r,`listEventsByCorrelationId`);if(o.kind===`partial`)throw o.error;return{events:o.events,cursor:o.cursor,hasMore:o.hasMore}}const Bp=O.compile(u.omit({error:!0,errorCode:!0}).extend({error:O.union([ee,O.any()]).optional(),errorCode:O.string().optional(),blobStorageBytes:O.number().optional(),streamStorageBytes:O.number().optional()})),Vp=O.compile(Bp),Hp=O.compile(Bp.omit({input:!0,output:!0}).extend({inputRef:O.any().optional(),outputRef:O.any().optional(),input:O.union([O.instanceof(Uint8Array),O.any()]).optional(),output:O.union([O.instanceof(Uint8Array),O.any()]).optional(),dynamicWorkflowCode:O.any().optional()}));function Up(e,t){if(t===`none`){let{inputRef:t,outputRef:n,dynamicWorkflowCode:r,...i}=e;return{...Lf(Ui(i)),input:void 0,output:void 0}}return Lf(Ui(e))}async function Wp(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 D(`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=await W({endpoint:`/v2/runs${c?`?${c}`:``}`,options:{method:`GET`},config:t,schema:de(s===`lazy`?Hp:Vp)});return{...l,data:l.data.map(e=>Up(e,a))}}async function Gp(e,t){return Ui(await W({endpoint:`/v1/runs/create`,options:{method:`POST`},data:e,config:t,schema:Vp}))}async function Kp(e,t,n){let r=t?.resolveData??`all`;try{return await qp(e,{resolveData:r},n)}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}async function qp(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();return Up(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}${c}${l?`?${l}`:``}`,options:{method:`GET`,...a?{signal:a}:{}},config:n,retryConnectTimeout:!0,schema:o===`lazy`?Hp:Vp}),r)}const Jp=T(`@workflow/world-vercel//runStatusLongPollSupport`,1,()=>({unsupportedUntilByBaseUrl:new Map}));function Yp(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 Xp(e,t,n){let r=t?.resolveData??`all`,i=Math.max(0,Math.min(t?.timeoutMs??0,Ci()-1e4)),{baseUrl:a}=Ki(n),o=Jp.unsupportedUntilByBaseUrl.get(a)??0;if(i===0||Date.now()<o)return Kp(e,{resolveData:r},n);try{return await qp(e,{resolveData:r,waitMs:i,...t?.signal?{signal:t.signal}:{}},n)}catch(i){if(t?.signal?.aborted||!(i instanceof D)||!Yp(i))throw i;let o=await Kp(e,{resolveData:r},n);return Jp.unsupportedUntilByBaseUrl.set(a,Date.now()+3e5),o}}async function Zp(e,t,n){let r=[...new Set(e)],i=await Promise.all(r.map(async e=>{try{return await Kp(e,t,n)}catch(e){if(e instanceof we)return null;throw e}})),a=new Map(r.map((e,t)=>[e,i[t]]));return e.map(e=>a.get(e)??null)}async function Qp(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 Up(await W({endpoint:s,options:{method:`PUT`},config:n,schema:i===`lazy`?Hp:Vp}),r)}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}async function $p(e,t){let{runIds:n,cancelReason:r}=b.parse(e),i=await W({endpoint:`/v4/runs/cancel`,options:{method:`POST`},data:r===void 0?{runIds:n}:{runIds:n,cancelReason:r},config:t,schema:be}),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 D(`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 em=O.compile(O.object({attributes:O.record(O.string(),O.string())}));async function tm(e,t,n,r){try{return{attributes:(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}/attributes`,options:{method:`POST`},data:n?.allowReservedAttributes?{changes:t,allowReservedAttributes:!0}:{changes:t},config:r,schema:em})).attributes}}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}function nm(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return he(`wrun_${Re(t).ulid}`,`wrun_`)}catch{return he(e,`wrun_`)}}const rm=new Set([`run_created`,`run_started`,`step_started`]);function im(e){if(e.eventType===`attr_set`)try{re(e.eventData)}catch(e){throw e instanceof se?new D(e.message,{status:400}):e}let t=e.eventData??{},n=c(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),t.force===!0&&(r.hookForce=!0),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),t.dynamicWorkflowCode instanceof Uint8Array&&(r.dynamicWorkflowCode=t.dynamicWorkflowCode),typeof t.dynamicWorkflowCodeRef==`string`&&(r.dynamicWorkflowCodeRef=t.dynamicWorkflowCodeRef),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 am(e,t,n,r){return Ep(e,t,n?.resolveData===`none`?`lazy`:`resolve`,r)}async function om(e,t){let{pagination:n,resolveData:r=`all`}=e,i={...n,remoteRefBehavior:r===`none`?`lazy`:r===`skip-step-inputs`?`skip-step-inputs`:`resolve`},a=await(`correlationId`in e?zp(e.correlationId,e.runId,i,t):Rp(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 sm(e,t,n,r){if(t.length===0)throw new D(`world-vercel: createBatch requires at least one event`,{status:400});if(t.some(({event:e})=>e.eventType===`hook_received`))throw new D(`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}=im(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 vf(()=>yp({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 cm(e,t,n,r){try{let i=await vf(()=>lm(e,t,n,r),t.eventType,{idempotentHookResume:t.eventType===`hook_received`&&n?.resumeId!==void 0&&n?.resumePayloadDigest!==void 0,afterStepBody:n?.afterStepBody===!0});if(t.eventType===`run_created`&&!i.run)throw new D(`${t.eventType} response is missing the run entity`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`run_started`&&!i.run?.startedAt)throw new D(`run_started response is missing run.startedAt`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`step_started`&&!i.step?.startedAt)throw new D(`step_started response is missing step.startedAt`,{code:`SCHEMA_VALIDATION`});return i}catch(e){if(e instanceof tf||e instanceof nf)throw e.error;if(Ee.is(e)&&t.eventType===`hook_received`){let n=t.eventData?.token;throw new Ee(typeof n==`string`?n:e.token,e.claimedByRunId,e.claimedByHookId)}throw h(t.eventType)&&D.is(e)&&e.status===404&&t.correlationId?new Oe(t.correlationId):e}}async function lm(e,t,n,r){if(n?.v1Compat){if(t.eventType===`run_cancelled`&&e)return{run:await Qp(e,{...n,resolveData:ie(n.resolveData)},r)};if(t.eventType===`run_created`)return{run:await Gp(t.eventData,r)};if(e===null)throw new D(`world-vercel: v1Compat=true requires a runId for ${t.eventType}`,{status:400});return{event:await W({endpoint:`/v1/runs/${encodeURIComponent(e)}/events`,options:{method:`POST`},data:t,config:r,schema:Zf})}}if(e===null)throw new D(`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=nm(e);if(t)throw new D(t,{status:400})}let i=rm.has(t.eventType)?`resolve`:`lazy`,{payload:a,meta:o}=im(t),s={runId:e,specVersion:t.specVersion??2,...t.eventType===`run_started`?{executorSpecVersion:r?.mintedSpecVersion??pe()}:{},...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}:{},...n?.resolveData===`skip-step-inputs`?{eventsRemoteRefBehavior:`skip-step-inputs`}:{},remoteRefBehavior:i,payload:a,...o};if(t.eventType===`run_started`&&!n?.skipPreload){let e=await _p(s,r,n?.replayEventObserver),t=um(e.events);if(!t)throw new D(`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 wp({...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=um(a);return{...l?{event:l}:{},...u?{run:u.run}:{},events:a,cursor:o,hasMore:c,...i===void 0?{}:{maxEvents:i}}}return hp(t.eventType===`run_started`?{...s,eventType:`run_started`,skipPreload:!0}:{...s,eventType:t.eventType},r)}function um(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=ne(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 dm(e,t){if(t===`none`){let{metadataRef:t,...n}=e;return n}return zf(e)}const fm=Ge.compile(ye.omit({metadata:!0}).extend({metadataRef:Ge.any().optional()}));async function pm(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=await W({endpoint:`/v2/hooks${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:de(o===`lazy`?fm:ye)});return{...c,data:c.data.map(e=>dm(e,i))}}async function mm(e,t,n){let r=t?.resolveData||`all`;return dm(await W({endpoint:`/v2/hooks/${encodeURIComponent(e)}`,options:{method:`GET`},config:n,schema:ye}),r)}async function hm(e,t){try{return await W({endpoint:`/v2/hooks/by-token?token=${encodeURIComponent(e)}`,options:{method:`GET`},config:t,schema:ye})}catch(t){throw D.is(t)&&t.status===404?new Oe(e):t}}function gm(e){let t={};for(let[n,r]of e)t[n]=r;return t}function _m(e){wi&&console.debug(`[workflow:world-vercel:http] WORLD_SNAPSHOT_DIAG`,e)}function vm(e){return{async save(t,n,r){let i=performance.now(),{baseUrl:a,headers:o}=await U(e),s=`${a}/v2/runs/${encodeURIComponent(t)}/snapshot`,c=ue(r,n);if(c.byteLength>67108864)throw _m({op:`save`,runId:t,outcome:`too_large`,wireBytes:c.byteLength}),new D(`Snapshot for run ${t} is ${c.byteLength} bytes, over the 67108864-byte limit; not uploading`,{url:s});o.set(`Content-Type`,`application/octet-stream`),o.set(`X-Snapshot-Events-Cursor`,r.eventsCursor??``),o.set(`X-Snapshot-Created-At`,r.createdAt.toISOString()),await Br(o);let l=performance.now(),u=await(0,Hn.request)(s,{method:`PUT`,body:c,headers:gm(o),dispatcher:_r(e)}),d=Math.round(performance.now()-l);if(u.statusCode<200||u.statusCode>=300){let e=await u.body.text().catch(()=>``);throw new D(`PUT /v2/runs/${t}/snapshot -> HTTP ${u.statusCode}: ${e}`,{url:s,status:u.statusCode})}await u.body.text(),_m({op:`save`,runId:t,wireBytes:c.byteLength,putDurationMs:d,totalDurationMs:Math.round(performance.now()-i)})},async load(t){let n=performance.now(),{baseUrl:r,headers:i}=await U(e),a=`${r}/v2/runs/${encodeURIComponent(t)}/snapshot`;i.set(`Accept`,`application/octet-stream`),await Br(i);let o=performance.now(),s=await fetch(a,{method:`GET`,headers:i,dispatcher:_r(e)}),c=Math.round(performance.now()-o);if(s.status===404)return await s.text().catch(()=>{}),_m({op:`load`,runId:t,outcome:`not_found`,getDurationMs:c,totalDurationMs:Math.round(performance.now()-n)}),null;if(!s.ok){let e=await s.text().catch(()=>``);throw new D(`GET /v2/runs/${t}/snapshot -> HTTP ${s.status}: ${e}`,{url:a,status:s.status})}let l=await s.arrayBuffer(),u=new Uint8Array(l),d=te(u);return _m({op:`load`,runId:t,outcome:d?`ok`:`undecodable_envelope`,wireBytes:u.byteLength,getDurationMs:c,totalDurationMs:Math.round(performance.now()-n)}),d},async delete(t){let{baseUrl:n,headers:r}=await U(e),i=`${n}/v2/runs/${encodeURIComponent(t)}/snapshot`;await Br(r);let a=await fetch(i,{method:`DELETE`,headers:r,dispatcher:_r(e)});if(!a.ok&&a.status!==404){let e=await a.text().catch(()=>``);throw new D(`DELETE /v2/runs/${t}/snapshot -> HTTP ${a.status}: ${e}`,{url:i,status:a.status})}await a.text()}}}function ym(e){let t=vm(e),n={runs:{get:((t,n)=>Kp(t,n,e)),waitForTerminalStatus:((t,n)=>Xp(t,n,e)),getMany:((t,n)=>Zp(t,n,e)),list:(t=>Wp(t,e)),experimentalSetAttributes:(t,n,r)=>tm(t,n,r,e),cancelMany:t=>$p(t,e)},steps:{get:((t,n,r)=>Gf(t,n,r,e)),list:(t=>Wf(t,e))},events:{create:(t,n,r)=>cm(t,n,r,e),createBatch:(t,n,r)=>sm(t,n,r,e),get:(t,n,r)=>am(t,n,r,e),list:t=>om(t,e),listByCorrelationId:t=>om(t,e)},hooks:{get:(t,n)=>mm(t,n,e),getByToken:t=>hm(t,e),list:t=>pm(t,e)},experimental_snapshots:t};return{runs:Ha(`world.runs`,n.runs),steps:Ha(`world.steps`,n.steps),events:Ha(`world.events`,n.events),hooks:Ha(`world.hooks`,n.hooks),experimental_snapshots:Ha(`world.experimental_snapshots`,t)}}const bm=1e3;function xm(e){let t=new TextEncoder;return e.map(e=>typeof e==`string`?t.encode(e):e)}function Sm(e){return Cm(xm(e))}function Cm(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 wm=bm,Tm=O.number().int().nonnegative(),Em=Tm,Dm=O.string().regex(/^wrtr_[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$/),Om=O.object({type:O.literal(`write`),reqId:Em,chunkSeq:Tm,numChunks:O.number().int().positive().max(wm)}),km=O.object({type:O.literal(`close`),reqId:Em});O.discriminatedUnion(`type`,[Om,km]);const Am=O.object({type:O.literal(`write_ack`),reqId:Em}),jm=O.object({type:O.literal(`close_ack`),reqId:Em}),Mm=O.object({type:O.literal(`error`),reqId:Em.optional(),status:O.number().int(),message:O.string().optional(),retryAfter:O.string().optional()}),Nm=O.object({type:O.literal(`drain`),reason:O.enum([`auth_expiry`,`max_duration`]),graceMs:Tm}),Pm=O.discriminatedUnion(`type`,[Am,jm,Mm,Nm]);function Fm(e,t,n,r){let i=Dm.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 Im(e,t){let n=Om.parse(e);if(n.numChunks!==t.length)throw Error(`stream WebSocket write declares ${n.numChunks} chunks but received ${t.length}`);let r=xm(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 Sf(n,Cm(r))}function Lm(e,t,n){let r=Math.min(e.length,t+wm),i=132+e[t].byteLength,a=t+1;for(;a<r&&(i+=4+e[a].byteLength,!(i>n));)a++;return a}function Rm(e){return Sf(km.parse(e),new Uint8Array)}function zm(e,t){if(t.byteLength!==0)throw Error(`stream WebSocket reply body must be empty`);return Pm.parse(e)}const Bm=[`frame-parts`];function Vm(){return oe(`WORKFLOW_WS_MAX_MESSAGE_BYTES`,12582912,{min:2097152,max:16777216,integer:!0})}function Hm(e,t,n){let r=Sf(e,t);if(r.byteLength<=n)return[r];if(t.byteLength>268435456)throw new Km(`ws frame body of ${t.byteLength} bytes is over the ${Jm}-byte limit for a split frame`);let i=e.reqId;if(!Xm(i))throw Error(`ws frame of ${r.byteLength} bytes exceeds the ${n}-byte message limit and has no reqId to split it under`);let a=t.byteLength+1,o=Sf({...e,partIndex:0,partCount:a},Um).byteLength,s=Sf(Gm(i,a,a),Um).byteLength,c=n-o,l=n-s;if(c<=0||l<=0)throw Error(`ws frame meta does not fit in the ${n}-byte message limit`);let u=t.byteLength-c,d=1+Math.ceil(u/l);if(d>257)throw Error(`ws frame of ${r.byteLength} bytes needs ${d} parts at a ${n}-byte message limit; at most 257 are allowed`);let f=[Sf({...e,partIndex:0,partCount:d},t.subarray(0,c))];for(let e=1;e<d;e++){let n=c+(e-1)*l;f.push(Sf(Gm(i,e,d),t.subarray(n,Math.min(n+l,t.byteLength))))}return f}const Um=new Uint8Array;function Wm(e,t){if(e.byteLength<=t)return[e];let{meta:n,body:r}=Cf(e);return Hm(n,r,t)}function Gm(e,t,n){return{type:`part`,reqId:e,partIndex:t,partCount:n}}var Km=class extends Error{name=`WsFrameTooLargeError`},qm=class extends Error{name=`WsPartProtocolError`};const Jm=268435456;var Ym=class{open=new Map;maxFrameBytes;maxBodyBytes;onTooLarge;maxOpenFrames;maxPartCount;wanted;onDiscarded;constructor(e={}){this.maxFrameBytes=e.maxFrameBytes??268435456,this.maxBodyBytes=Math.min(e.maxBodyBytes??this.maxFrameBytes,this.maxFrameBytes),this.onTooLarge=e.onTooLarge??(()=>{}),this.maxOpenFrames=e.maxOpenFrames??1,this.maxPartCount=e.maxPartCount??257,this.wanted=e.wanted??(()=>!0),this.onDiscarded=e.onDiscarded??(()=>{})}accept(e){let{meta:t,body:n}=e;if(t.type===`part`)return this.continue(t,n);let{reqId:r,partIndex:i,partCount:a}=t;if(!(`partIndex`in t)&&!(`partCount`in t)){if(Xm(r)&&this.open.has(r))throw new qm(`whole frame for reqId ${r} while its split frame is open`);return e}if(!Xm(r))throw new qm(`first part has no valid reqId`);if(i!==0)throw new qm(`first part for reqId ${r} has partIndex ${String(i)}, expected 0`);if(!Zm(a)||a>this.maxPartCount)throw new qm(`first part for reqId ${r} has invalid partCount ${String(a)} (2..${this.maxPartCount})`);if(this.open.has(r))throw new qm(`second first part for reqId ${r} while one is open`);if(this.open.size>=this.maxOpenFrames)throw new qm(`more than ${this.maxOpenFrames} split frames open at once`);let{partIndex:o,partCount:s,...c}=t,l={meta:c,partCount:a,nextIndex:1,chunks:[],bytes:0,discard:!this.wanted(r),tooLarge:!1};this.open.set(r,l),this.addChunk(r,l,n)}get openFrames(){return this.open.size}continue(e,t){let n=Object.keys(e);if(n.length!==4||!(`reqId`in e)||!(`partIndex`in e)||!(`partCount`in e))throw new qm(`continuation part must have exactly type, reqId, partIndex and partCount, got ${n.join(`, `)}`);let{reqId:r,partIndex:i,partCount:a}=e;if(!Xm(r))throw new qm(`continuation part has no valid reqId`);let o=this.open.get(r);if(!o)throw new qm(`continuation part for reqId ${r} with no open frame`);if(a!==o.partCount)throw new qm(`continuation part for reqId ${r} has partCount ${String(a)}, expected ${o.partCount}`);if(i!==o.nextIndex)throw new qm(`continuation part for reqId ${r} has partIndex ${String(i)}, expected ${o.nextIndex}`);let s=o.nextIndex===o.partCount-1;if(this.addChunk(r,o,t),o.nextIndex++,!s)return;if(this.close(r),o.tooLarge){this.onTooLarge(r,o.bytes);return}if(o.discard){this.onDiscarded(r);return}let c=new Uint8Array(o.bytes),l=0;for(let e of o.chunks)c.set(e,l),l+=e.byteLength;return{meta:o.meta,body:c}}addChunk(e,t,n){if(t.bytes+n.byteLength>this.maxFrameBytes)throw this.close(e),new qm(`frame for reqId ${e} exceeds ${this.maxFrameBytes} bytes`);t.bytes+=n.byteLength,!t.discard&&t.bytes>this.maxBodyBytes&&(t.discard=!0,t.tooLarge=!0,t.chunks=[]),!t.discard&&t.chunks.push(n.slice())}close(e){this.open.delete(e)}};function Xm(e){return typeof e==`number`&&Number.isInteger(e)&&e>=0}function Zm(e){return typeof e==`number`&&Number.isInteger(e)&&e>=2}function Qm(e,t){if(e.readyState===3)return;let r=!1,i=new Promise(t=>{let n=!1,i=()=>{n||(n=!0,clearTimeout(a),t())},a=setTimeout(()=>{r=!0,i()},250);a.unref?.(),e.once(`close`,i)}),a=Rr(`workflow.stream.ws.close.cleanup`,async e=>{await i,e?.setAttribute(`workflow.stream.ws.close_cleanup_timeout`,r)});import(`../../_chunks/workflow/functions-CKkqf9V6.js`).then(e=>n(e.default,1)).then(({waitUntil:e})=>e(a)).catch(()=>{}),a.catch(()=>{}),e.close(1e3,t)}function $m(){return performance.now()}function eh(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 th(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 nh(e,t,n,r){let i=$m();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 rh(e,t,n){if(n?.sentAt===void 0||n.replyReceivedAt===void 0)return;let r=$m();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 ih(e){return e.get(`authorization`)}var ah=class extends Error{constructor(e){super(e instanceof Error?e.message:String(e),{cause:e}),this.name=`StreamWsRequestNotSentError`}},oh=class extends Error{retryAfter;constructor(e,t){super(e),this.retryAfter=t,this.name=`StreamWsThrottledError`}},sh=class extends Error{constructor(e){super(e),this.name=`StreamWsCloseRetriableError`}};function ch(e){return e instanceof Uint8Array?e:typeof e==`string`?new TextEncoder().encode(e):new Uint8Array(e)}var lh=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;throttledSocket;terminated=new AbortController;wsUrl;closeAcknowledged=!1;idleReconnects=0;drainReason;drainTimer;releaseDrainWait;lastAuthorization=null;sessionCreatedAt=$m();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:$m(),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.writeHttpOrFail(t);return}let r=Vm(),i=xm(t);for(let a=0;a<t.length;){let o=Lm(i,a,r),s=i.slice(a,o),c;try{c=await this.requestRetryingThrottle(`write`,t=>Im({type:`write`,reqId:t,chunkSeq:e+a,numChunks:s.length},s),a===0?n:void 0,{chunkSeq:e+a,numChunks:s.length},r)}catch(e){if(!(e instanceof ah))throw e;this.fallbackToHttpBeforeSend(),await this.writeHttpOrFail(t.slice(a));return}if(c.type!==`write_ack`)throw this.poison(Error(`stream WebSocket write received ${c.type}`));a=o}}async writeHttpOrFail(e){try{await this.writeHttp(e)}catch(e){throw this.failUnknown(e),this.poisonError}}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`)}release(){return this.enqueue(async()=>{this.mode!==`closed`&&this.mode!==`poisoned`&&this.fallbackToHttpBeforeSend(`stream writer released`)})}dispose(){if(this.mode===`closed`)return;this.mode=`closed`,this.terminated.abort(),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}await this.closeOverWs()})}async closeOverWs(){let e;try{e=await this.requestRetryingThrottle(`close`,e=>Rm({type:`close`,reqId:e}))}catch(e){if(!(e instanceof ah||e instanceof sh))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&&Qm(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=$m(),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(!Od()){this.mode=`http`;return}e&&await(0,dt.getVercelOidcToken)({expirationBufferMs:864e5}).catch(()=>void 0);let n=U(this.config).then(e=>(t.configFinishedAt=$m(),e)),[{WebSocket:r},i]=await Promise.all([import(`../../_chunks/workflow/wrapper-Dq4OeGmJ.js`).then(e=>(e.n(),e.r)),n]);if(this.mode!==`connecting`)return;if(e&&ih(i.headers)===this.lastAuthorization){this.mode=`http`;return}if(this.lastAuthorization=ih(i.headers),i.usingProxy){this.mode=`http`;return}if(this.mode!==`connecting`)return;let a=Fm(i.baseUrl,this.runId,this.name,this.writerId);this.wsUrl=a.toString(),await Li({method:`GET`,url:this.wsUrl,spanName:`workflow.stream.ws.connect`,attributes:{"workflow.stream.transport":`ws`}},async()=>{if(await Br(i.headers),this.mode!==`connecting`)return;t.socketStartedAt=$m();let e=new r(a,{headers:ji(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=$m(),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`,t=>{if(!r){i();return}this.inbound.then(()=>{if(e===this.socket){if(this.isIdleThrottledSocket(e)){this.leaveThrottledSocketForHttp();return}this.failUnknown(t)}})}),e.once(`close`,t=>{if(!r){i();return}this.inbound.then(()=>this.handleSocketClose(Number(t),e))}),e.on(`message`,e=>{let t=$m();this.inbound=this.inbound.then(()=>this.handleMessage(ch(e),t))})})})}async handleMessage(e,t){try{let n=Cf(e),r=zm(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.requestError(i,r)):(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(t&&this.isIdleThrottledSocket(t)&&this.mode===`ws`){this.leaveThrottledSocketForHttp();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,r,i=Vm()){this.assertUsable();let a=this.socket;if(this.mode!==`ws`||!a||a.readyState!==1)throw new ah(Error(`stream WebSocket is not open before send`));let o=this.nextReqId++,s;try{s=t(o)}catch(e){throw new ah(e)}if(s.byteLength>i)throw new ah(Error(`stream WebSocket message is ${s.byteLength} bytes; maximum is ${i}`));let c=this.connectionTiming,l=c?.firstWriteSent===!1,u=n&&(n.sessionFirstWrite||l)?n:void 0;return Li({method:`POST`,url:this.wsUrl??`ws://unknown`,spanName:`workflow.stream.write`,attributes:{"workflow.stream.transport":`ws`,"workflow.stream.ws.req_id":o,...r?{"workflow.stream.ws.chunk_seq":r.chunkSeq,"workflow.stream.ws.num_chunks":r.numChunks}:{},...eh(u,c,this.sessionCreatedAt)}},async t=>{u&&th(t,u,c);let n,r=new Promise((r,i)=>{let l=setTimeout(()=>{this.failUnknown(Error(`stream WebSocket request ${o} timed out with no reply`))},Ci());l.unref?.(),n={reqId:o,operation:e,resolve:r,reject:i,timer:l},this.pending=n;try{u&&nh(t,u,c,n),a.send(s,e=>{e&&this.failUnknown(e)})}catch(e){this.failUnknown(e)}});try{return await r}finally{u&&rh(t,u,n)}})}finishDrainWait(){this.drainTimer&&=(clearTimeout(this.drainTimer),void 0);let e=this.releaseDrainWait;this.releaseDrainWait=void 0,e?.()}fallbackToHttpBeforeSend(e=`HTTP fallback before send`){this.mode=`http`,this.drainReason=void 0;let t=this.socket;this.socket=void 0,this.transportDecision=Promise.resolve(),this.finishDrainWait(),t&&Qm(t,e)}requestError(e,t){let n=`(${t.status}): ${t.message??`unknown error`}`;if(t.status===429)return this.throttledSocket=this.socket,new oh(`stream WebSocket ${e.operation} throttled ${n}`,Ai(t.retryAfter));if(e.operation===`close`&&t.status>=500&&t.status<=599)return this.fallbackToHttpBeforeSend(`stream close retried over HTTP`),new sh(`stream WebSocket close failed ${n}`);let r=this.poison(Error(`stream WebSocket request failed ${n}`));return this.socket?.close(1011,`stream request failed`),r}async requestRetryingThrottle(e,t,n,r,i){let a=hf(e===`write`?`writing stream chunks`:`writing stream close`,`bounded`);for(let o=0;;o++)try{return await this.request(e,t,o===0?n:void 0,r,i)}catch(e){if(!(e instanceof oh))throw e;await this.waitOutThrottle(a,e)}}async waitOutThrottle(e,t){try{await e(t,this.terminated.signal)}catch{throw this.assertUsable(),this.fallbackToHttpBeforeSend(`stream request throttled`),new ah(t)}finally{this.throttledSocket=void 0}await this.transportDecision,this.assertUsable()}isIdleThrottledSocket(e){return!this.pending&&e===this.throttledSocket&&e===this.socket}leaveThrottledSocketForHttp(){this.drainReason=void 0,this.mode=`http`,this.socket=void 0,this.finishDrainWait()}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.terminated.abort()),this.poisonError}};function uh(e,t,n,r,i,a,o=!0){return new lh(e,t,Dm.parse(n),r,i,a,o)}const dh=()=>oe(`WORKFLOW_MAX_CHUNKS_PER_REQUEST`,1e3,{integer:!0,min:1});function fh(e,t,n){return new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function ph(e,t,n){return new URL(`${n.baseUrl}/v3/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function mh(e){return{...ei(e.runId),...ni(e.name),...ri(e.operation),...typeof e.startIndex==`number`?ii(e.startIndex):{}}}async function hh(e){let t=`Failed to fetch stream: ${e.status}`;if(e.status!==410)return new E(t,{status:e.status});try{let n=await e.json();return Mi(e.status,typeof n.message==`string`?n.message:t,{code:n.error,details:n.details})}catch{return new E(t,{status:e.status})}}function gh(e,t){return D.is(t)||De.is(t)||Ce.is(t)||E.is(t)||Ae.is(t)||Se.is(t)||je.is(t)||Te.is(t)?t:new E(e,{cause:t})}function _h(e,t,n,r){let i=[`PUT ${t.origin}${t.pathname}`,...Ei(n.headers)];return new E(`Stream ${e} failed: HTTP ${n.status} (${i.join(`; `)}): ${r}`,{url:t.toString(),status:n.status})}const vh=O.compile(O.object({tailIndex:O.number(),done:O.boolean()})),yh=O.compile(O.object({data:O.array(O.object({index:O.number(),data:O.instanceof(Uint8Array)})),cursor:O.string().nullable(),hasMore:O.boolean(),done:O.boolean()}));async function bh(e,t,n,r,i,a){let o=await U(r);o.headers.set(`X-Stream-Multi`,`true`);let s=Math.min(dh(),bm);for(let c=0;c<n.length;c+=s){let l=fh(t,e,o);await(await zi({method:`PUT`,url:l.toString(),body:Sm(n.slice(c,c+s)),headers:o.headers,dispatcher:br(r),timeoutMs:null,logLabel:l.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,onRequestDispatched:c===0?a:void 0,attributes:{...mh({runId:e,name:t,operation:`write_multi`}),...c===0?i:void 0},buildError:async e=>_h(`write`,l,e,await e.text())})).text()}}async function xh(e,t,n){let r=await U(n);r.headers.set(`X-Stream-Done`,`true`);let i=fh(t,e,r);await(await zi({method:`PUT`,url:i.toString(),headers:r.headers,dispatcher:xr(n),timeoutMs:null,logLabel:i.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:mh({runId:e,name:t,operation:`close`}),buildError:async e=>_h(`close`,i,e,await e.text())})).text()}function Sh(e){return{streams:{...Od()?{createWriteSession(t,n,{writerId:r}){return uh(t,n,r,e,(r,i,a)=>bh(t,n,r,e,i,a),()=>xh(t,n,e))}}:{},async write(t,n,r){let i=await t,a=await U(e),o=fh(n,i,a);await(await zi({method:`PUT`,url:o.toString(),body:r,headers:a.headers,dispatcher:br(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:o.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:mh({runId:i,name:n,operation:`write`}),buildError:async e=>_h(`write`,o,e,await e.text())})).text()},async writeMulti(t,n,r){if(r.length===0)return;let i=await t,a=await U(e);a.headers.set(`X-Stream-Multi`,`true`);let o=dh();for(let t=0;t<r.length;t+=o){let s=Sm(r.slice(t,t+o)),c=fh(n,i,a);await(await zi({method:`PUT`,url:c.toString(),body:s,headers:a.headers,dispatcher:br(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:c.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:mh({runId:i,name:n,operation:`write_multi`}),buildError:async e=>_h(`write`,c,e,await e.text())})).text()}},async close(t,n){let r=await t,i=await U(e);i.headers.set(`X-Stream-Done`,`true`);let a=fh(n,r,i);await(await zi({method:`PUT`,url:a.toString(),headers:i.headers,dispatcher:xr(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:a.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:mh({runId:r,name:n,operation:`close`}),buildError:async e=>_h(`close`,a,e,await e.text())})).text()},async get(t,n,r){let i=await U(e);i.headers.set(`Accept`,`application/json`);let a=ph(n,t,i);typeof r==`number`&&a.searchParams.set(`startIndex`,String(r));let o=await zi({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:mh({runId:t,name:n,operation:`read`,startIndex:r}),buildError:hh});if(!o.body)throw new E(`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 W({endpoint:o,config:e,schema:yh})}catch(e){throw gh(`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 W({endpoint:r,config:e,schema:vh})}catch(e){throw gh(`Failed to read stream info for ${n}`,e)}},async list(t){let n=await U(e),r=new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/streams`),i=await zi({method:`GET`,url:r.toString(),headers:n.headers,dispatcher:void 0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r.pathname,buildError:e=>new E(`Failed to list streams: ${e.status}`,{url:r.toString(),status:e.status})});try{return await i.json()}catch(e){throw gh(`Failed to parse stream list response`,e)}}}}}var Ch=t({WsTransportError:()=>wh,getWsEventsTransport:()=>Ah,openWsChannel:()=>Mh,resolveWsTransport:()=>Fh,toEventsWsUrl:()=>jh});He();var wh=class extends Error{constructor(e,t){super(e,{cause:t?.cause}),this.name=`WsTransportError`}};function Th(e){for(let[t,n]of Object.entries(e))if(t.toLowerCase()===`authorization`)return n;return null}function Eh(e){if(e.byteLength===0)return`(no message)`;let t=new TextDecoder().decode(e);try{let e=JSON.parse(t);return typeof e.message==`string`?e.message:t}catch{return t}}function Dh(e){return e instanceof Error?e.message:String(e)}var Oh=class{wsUrl;getHeaders;connection=null;connecting=null;reconnectAttempts=0;reconnectTimer=null;openCount=0;closed=!1;lastDrainReason=null;needsFreshToken=!1;lastAuthorization=null;constructor(e,t){this.wsUrl=e,this.getHeaders=t}async request(e,t={}){if(this.closed)throw new wh(`workflow-server events WS channel for ${this.wsUrl} is closed`);let n=await this.ensureConnected(),r=n.nextReqId++,i=Wm(e(r),Vm());t.onMessages?.(i.length);let a=Ci(),o;try{return{...await new Promise((e,t)=>{n.pending.set(r,{resolve:e,reject:t}),o=setTimeout(()=>{n.pending.delete(r)&&(t(new wh(`workflow-server events WS request ${r} to ${this.wsUrl} timed out after ${a}ms with no reply`)),this.failConnection(n,`workflow-server events WS connection to ${this.wsUrl} abandoned after request ${r} timed out`))},a),o.unref?.();let s=e=>{e&&n.pending.delete(r)&&t(new wh(`workflow-server events WS send failed: ${Dh(e)}`,{cause:e}))};for(let e of i)n.ws.send(e,s)}),requestParts:i.length}}finally{o!==void 0&&clearTimeout(o)}}open(){this.closed||(this.openCount++,this.connection===null&&this.connecting===null&&this.ensureConnected().catch(()=>{this.close(`connect failed`)}))}release(e){this.openCount!==0&&(this.openCount--,this.openCount===0&&this.close(e))}close(e){if(this.closed)return;this.closed=!0,this.openCount=0,this.reconnectTimer!==null&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),kh.transports.get(this.wsUrl)===this&&kh.transports.delete(this.wsUrl);let t=this.connection;this.connection=null,t?.ws.close(1e3,e)}ensureConnected(){let e=this.connection;return e&&e.ws.readyState===Ue.default.OPEN?Promise.resolve(e):(this.connecting??=this.connectWithSpan().finally(()=>{this.connecting=null}),this.connecting)}async resolveUpgradeHeaders(){let e=this.needsFreshToken,t=await this.getHeaders({forceRefresh:e}),n=Th(t);if(e&&n===this.lastAuthorization)throw new wh(`workflow-server events WS connection to ${this.wsUrl} drained for auth expiry, but re-resolving the bearer produced the same token. Not reconnecting with a token the server has already rejected; the next event write will retry.`);this.lastAuthorization=n,this.needsFreshToken=!1;let r=new Headers;return await Br(r),r.forEach((e,n)=>{t[n]=e}),t[`x-workflow-ws-flags`]=Bm.join(`, `),t}consumeDrainReason(){let e=this.lastDrainReason;this.lastDrainReason=null,e===`auth_expiry`&&(this.needsFreshToken=!0)}connectWithSpan(){return Li({method:`GET`,url:this.wsUrl,spanName:`workflow.events.ws.connect`,attributes:{...ai(`ws`),...Jr(`websocket`),..._i(this.reconnectAttempts)}},async e=>{try{return await this.connect()}catch(t){throw e?.setAttributes({...qr(`TRANSPORT`)}),t instanceof Error&&e?.recordException?.(t),t}})}connect(){return new Promise((e,t)=>{(async()=>{let n;try{let e=await this.resolveUpgradeHeaders(),t=new Ue.default(this.wsUrl,{headers:e});t.binaryType=`nodebuffer`;let r=new Map;n={ws:t,nextReqId:1,pending:r,parts:new Ym({wanted:e=>r.has(e),onDiscarded:e=>console.error(`world-vercel: ws events transport received a split reply for unknown reqId ${e} from ${this.wsUrl} (already settled); dropping it.`)})}}catch(e){console.error(`world-vercel: ws events transport could not open a connection to ${this.wsUrl}: ${Dh(e)}`),t(e instanceof wh?e:new wh(`workflow-server events WS connection to ${this.wsUrl} could not be opened: ${Dh(e)}`,{cause:e}));return}let{ws:r}=n,i=!1;r.on(`open`,()=>{if(i=!0,this.closed){r.close(1e3,`released while connecting`),t(new wh(`workflow-server events WS connection to ${this.wsUrl} was released while connecting`));return}this.connection=n,this.reconnectAttempts=0,e(n)}),r.on(`message`,e=>{this.handleMessage(n,new Uint8Array(e))}),r.on(`error`,e=>{if(console.error(`world-vercel: ws events transport socket error (${this.wsUrl}): ${Dh(e)}`),!i){t(e);return}r.close()}),r.on(`close`,e=>{this.connection===n&&(this.connection=null),this.consumeDrainReason(),i||t(new wh(`workflow-server events WS connection to ${this.wsUrl} closed before opening (code ${e})`)),this.failAllPending(n,new wh(`workflow-server events WS connection closed (code ${e})`)),(i||this.reconnectAttempts>0)&&this.scheduleReconnect(e)})})()})}scheduleReconnect(e){if(this.closed||this.connection!==null||this.reconnectTimer!==null)return;if(this.reconnectAttempts>=5){console.error(`world-vercel: ws events transport giving up eager reconnect to ${this.wsUrl} after 5 attempts (last close code ${e}); the next event write will retry.`);return}let t=Math.min(100*2**this.reconnectAttempts,5e3);this.reconnectAttempts++;let n=setTimeout(()=>{this.reconnectTimer=null,this.ensureConnected().catch(()=>{})},t);n.unref?.(),this.reconnectTimer=n}handleMessage(e,t){let n;try{n=Cf(t)}catch(n){let r=`could not decode a ${t.byteLength}-byte reply frame from ${this.wsUrl}: ${Dh(n)}`;console.error(`world-vercel: ws events transport ${r}`),this.failConnection(e,`workflow-server events WS transport ${r}`);return}let r=this.assemble(e,n);if(r===void 0)return;let{frame:i,parts:a}=r;if(i.meta.type===`drain`){let e=i.meta.reason===`auth_expiry`?`auth_expiry`:`max_duration`;this.lastDrainReason=e,o(`world-vercel: ws events transport received a drain notice (reason: ${e}, graceMs: ${i.meta.graceMs??`unspecified`}); connection will close soon.`);return}let s=i.meta.reqId;if(s===-1){let t=`received a malformed-frame error from ${this.wsUrl} (reserved reqId -1, status ${String(i.meta.status??`unknown`)}): ${Eh(i.body)}. The server could not parse a frame this client sent, so the originating write cannot be identified`;console.error(`world-vercel: ws events transport ${t}.`),this.failConnection(e,`workflow-server events WS transport ${t}`);return}if(typeof s!=`number`){let t=`received a reply frame with no numeric reqId from ${this.wsUrl} (type: ${String(i.meta.type??`absent`)})`;console.error(`world-vercel: ws events transport ${t}.`),this.failConnection(e,`workflow-server events WS transport ${t}`);return}let c=e.pending.get(s);if(!c){console.error(`world-vercel: ws events transport received a reply for unknown reqId ${s} from ${this.wsUrl} (already settled, or the request was failed by a send error or its deadline); dropping it.`);return}e.pending.delete(s),c.resolve({meta:i.meta,body:i.body,replyParts:a})}assemble(e,t){let n;try{n=e.parts.accept(t)}catch(t){let n=t instanceof qm?`received a split reply from ${this.wsUrl} that breaks the part protocol: ${t.message}`:`could not assemble a split reply from ${this.wsUrl}: ${Dh(t)}`;console.error(`world-vercel: ws events transport ${n}`),this.failConnection(e,`workflow-server events WS transport ${n}`);return}if(n===void 0)return;let{type:r,partCount:i}=t.meta;return{frame:n,parts:r===`part`&&typeof i==`number`?i:1}}failAllPending(e,t){for(let n of e.pending.values())n.reject(t);e.pending.clear()}failConnection(e,t){this.failAllPending(e,new wh(t)),this.connection===e&&(this.connection=null),e.ws.close()}};const kh=T(`@workflow/world-vercel//wsEventsTransports@${Un}`,1,()=>({transports:new Map,loggedWsProxyFallback:!1,loggedWsInUse:!1}));function Ah(e,t){let n=kh.transports.get(e);return n||(n=new Oh(e,t),kh.transports.set(e,n)),n}function jh(e,t){let n=new URL(e);return n.protocol=n.protocol===`https:`?`wss:`:`ws:`,n.pathname=`${n.pathname.replace(/\/$/,``)}/websockets/v1/runs/${encodeURIComponent(t)}`,n.toString()}function Mh(e,t,n={}){if(!Td(n.workflowName))return;let r=Ph(e,t);if(!r)return;kh.loggedWsInUse||(kh.loggedWsInUse=!0,o(`world-vercel: using ws events transport (${r}).`));let i=Ah(r,async({forceRefresh:e})=>{e&&await Nh();let{headers:n}=await U(t);return ji(n)});i.open();let a=!1;return()=>{a||(a=!0,i.release(`invocation complete`))}}async function Nh(){try{await(0,dt.getVercelOidcToken)({expirationBufferMs:864e5})}catch{}}function Ph(e,t){let{baseUrl:n,usingProxy:r}=Ki(t);return r?(kh.loggedWsProxyFallback||(kh.loggedWsProxyFallback=!0,o(`world-vercel: ws events transport unavailable for a World with projectConfig (api-workflow proxy, resolved baseUrl: ${n}) — falling back to HTTP.`)),null):jh(n,e)}function Fh(e,t){let n=Ph(e,t);if(!n)return null;let r=kh.transports.get(n);return r?{transport:r,wsUrl:n}:null}function Ih(e){let t=e?.projectConfig?.projectId||process.env.VERCEL_PROJECT_ID,n=pe();return e={...e,mintedSpecVersion:n},{specVersion:n,capabilities:{hookRetention:{active:!0},maxConcurrency:!0,deploymentAffinity:!0,hookForceClaim:!0,dynamicWorkflowCode:!0},validateRunExecutionContext:Ma,getRuntimeDeadline:Na,...Zd(e),...ym(e),analytics:process.env.WORKFLOW_DISABLE_ANALYTICS_READS===`1`?void 0:_a(e),...Ha(`world.streams`,Sh(e)),createRunId:Sa,describeRun:wa,getEnvironment:()=>qi(e),uploadDynamicWorkflowCode:(t,n)=>Ea(t,n,e),getEncryptionKeyForRun:Aa(t,e?.projectConfig?.teamId,e?.token,e?.dispatcher),resolveLatestDeploymentId:ef(e),telemetry:{recordStepExecution:Fd}}}export{ja as MAX_EXECUTION_CONTEXT_BYTES,_a as createAnalytics,Aa as createGetEncryptionKeyForRun,Zd as createQueue,Sa as createRunId,ym as createStorage,Sh as createStreamer,Ih as createWorld,Oa as deriveRunKey,wa as describeRun,ka as fetchRunKey,it as n,Mh as openEventsChannel,Ca as regionForRunId,ut as t,Ea as uploadDynamicWorkflowCode,Ma as validateRunExecutionContext};
45
+ Cause: ${t}`)}}buildUrl(e,...t){let n=encodeURIComponent(e),r=t.map(e=>encodeURIComponent(e)),i=r.length>0?`/`+r.join(`/`):``,a=sd(this.baseUrl.pathname);return`${this.baseUrl.origin}${a}${ld}/${n}${i}`}async fetch(e,t){let n=t.method||`GET`;if(Qu()){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.8.0`),t.headers.set(`Vqs-Client-Ts`,new Date().toISOString());let r=this.dispatcher?{...t,dispatcher:this.dispatcher}:t,i=await fetch(e,r);if(Qu()){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=Lu(this.telemetry,i);return Gu(n,async e=>{await Hu(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 td(t);if(t.status===502&&t.headers.get(`Vqs-Error-Code`)===`consumer_discovery_failed`)throw new xl(e.message||`Consumer discovery failed`,o);nd(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=Iu(r.map(e=>({headers:this.buildMessageHeaders(e,t.contentType),body:()=>t.serialize(e.payload)})));a.set(`Content-Type`,s.contentType);let c=Lu(this.telemetry,i);return Gu(n,async()=>{try{await Hu(a,c);let e=await this.fetch(this.buildUrl(n,`batch`),{method:`POST`,body:s.body,headers:a,duplex:`half`});e.ok||nd(await td(e),`send message batch`);let{results:t}=await e.json();if(t.length!==r.length)throw new vl(`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,cursorFallback:o}=e;if(a!==void 0&&(a<1||a>10))throw new yl(a);let s=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});i!==void 0&&s.set(`Vqs-Visibility-Timeout-Seconds`,i.toString()),a!==void 0&&s.set(`Vqs-Max-Messages`,a.toString()),o!==void 0&&s.set(`Vqs-Cursor-Fallback`,o);let c=this.getConsumeDeploymentId();c&&s.set(`Vqs-Deployment-Id`,c);let l=await this.fetch(this.buildUrl(n,`consumer`,r),{method:`POST`,headers:s});if(l.status===204){await l.text();return}l.ok||nd(await td(l),`receive messages`);for await(let e of Ja(l))try{let n=rd(e.headers);if(!n){console.warn(`Missing required queue headers in multipart part`),await $u(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 $u(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 td(c);if(c.status===404)throw new ll(i);if(c.status===409)throw e.originalMessageId?new ul(i,`This message was a duplicate - use originalMessageId: ${e.originalMessageId}`):new fl(i,ed(c.headers.get(`Retry-After`)));if(c.status===410)throw new bl(i);nd(e,`receive message by ID`)}for await(let e of Ja(c)){let n=rd(e.headers);if(!n)throw await $u(e.payload),new dl(i,`Missing required queue headers in response`);let r=await t.deserialize(e.payload);return{message:{...n,payload:r}}}throw new ll(i)}async acknowledgeMessage(e){let{messageId:t,queueName:n,consumerGroup:r,receiptHandle:i}=e,a=new Headers({Authorization:`Bearer ${await this.getToken()}`,...this.customHeaders}),o=this.getConsumeDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=await this.fetch(this.buildUrl(n,`consumer`,r,`lease`,i),{method:`DELETE`,headers:a});if(!s.ok){let e=await td(s);if(s.status===404)throw new ll(t);if(s.status===409)throw new ul(t,e.message||`Invalid receipt handle, message not in correct state, or already processed`);nd(e,`acknowledge message`,`Missing or invalid receipt handle`)}return await s.text(),{acknowledged:!0}}async changeVisibility(e){let{messageId:t,queueName:n,consumerGroup:r,receiptHandle:i,visibilityTimeoutSeconds:a}=e,o=new Headers({Authorization:`Bearer ${await this.getToken()}`,"Content-Type":`application/json`,...this.customHeaders}),s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r,`lease`,i),{method:`PATCH`,headers:o,body:JSON.stringify({visibilityTimeoutSeconds:a})});if(!c.ok){let e=await td(c);if(c.status===404)throw new ll(t);if(c.status===409)throw new ul(t,e.message||`Invalid receipt handle, message not in correct state, or already processed`);nd(e,`change visibility`,`Missing receipt handle or invalid visibility timeout`)}return await c.text(),{success:!0}}},dd=new WeakMap,fd=Symbol.for(`@vercel/queue.apiClient`);function pd(e,t){dd.set(e,t),Object.defineProperty(e,fd,{value:t,writable:!1,enumerable:!1,configurable:!1})}function md(e){let t=dd.get(e);if(t)return t;let n=e[fd];if(typeof n==`object`&&n){let t=n;return dd.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 hd(e){return`request`in e?e.request:e}function gd(e){return e instanceof bl||e instanceof Error&&e.name===`MessageAlreadyProcessedError`?`already_processed`:e instanceof ul||e instanceof Error&&e.name===`MessageNotAvailableError`?`not_available`:null}function _d(e,t){return console.debug(`Queue callback skipped (${e}) for message ${t??`<unknown>`}: the message was already handled or is no longer available to this consumer.`),{status:`skipped`,reason:e,...t===void 0?{}:{messageId:t}}}function vd(e){return md(e)}var yd=`iad1`;function bd(e){return e||process.env.VERCEL_REGION||(Kl()||console.warn(`[QueueClient] Region not detected \u2014 defaulting to "${yd}". On Vercel this is set automatically via VERCEL_REGION. To silence this warning, pass region explicitly: new QueueClient({ region: "iad1" })`),yd)}var xd=class{constructor(e={}){let t=bd(e.region);pd(this,new ud({...e,region:t}))}send=async(e,t,n)=>{let r=md(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&&Kl()&&!r.usesLocalBroker()&&Nu(e,i.messageId,r.getRegion(),n?.delaySeconds,n?.retentionSeconds),{messageId:i.messageId}};experimental_sendBatch=async(e,t,n)=>{let r=md(this),i=await r.sendBatch({queueName:e,messages:t,telemetry:n?.telemetry});if(!Kl()||r.usesLocalBroker())return i;let a=r.getRegion();for(let[n,r]of i.entries()){if(r.status!==`sent`)continue;let i=t[n];tt(i),Nu(e,r.messageId,a,i.delaySeconds,i.retentionSeconds)}return i};handleCallback=(e,t)=>{Kl()&&!md(this).usesLocalBroker()&&cu(e,this,t);let n=Lu(md(this).getTelemetry?.());return async r=>{let i=hd(r);if(Kl()&&!md(this).usesLocalBroker()&&i.headers.get(`x-vercel-queue-prime`)===`1`){let n=i.headers.get(`x-vercel-queue-prime-file`);return n&&cu(e,this,t,n),Response.json({status:`primed`})}let a;try{a=await Vl(i);let r=a;return await Yu(i.headers,()=>Hl(e,r,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),Response.json({status:`success`})}catch(e){let t=gd(e);return t?Response.json(_d(t,a?.messageId)):(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)=>{Kl()&&!md(this).usesLocalBroker()&&cu(e,this,t);let n=Lu(md(this).getTelemetry?.());return async(r,i)=>{if(r.method!==`POST`){i.status(200).end();return}let a=r.headers[`x-vercel-queue-prime`];if(Kl()&&!md(this).usesLocalBroker()&&a===`1`){let n=r.headers[`x-vercel-queue-prime-file`],a=Array.isArray(n)?n[0]:n;a&&cu(e,this,t,a),i.status(200).json({status:`primed`});return}let o;try{o=Bl(r.body,r.headers);let a=o;await Yu(r.headers,()=>Hl(e,a,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),i.status(200).json({status:`success`})}catch(e){let t=gd(e);if(t){i.status(200).json(_d(t,o?.messageId));return}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 Sd(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 Cd(){return process.env.WORKFLOW_EVENTS_TRANSPORT?.trim().toLowerCase()!==`http`}function wd(){let e=process.env.WORKFLOW_EVENTS_TRANSPORT_WS_OVERRIDE_WORKFLOWS;return e?e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0):[]}function Td(e){if(Cd())return!0;if(!e)return!1;let t=e.slice(e.lastIndexOf(`//`)+2);return wd().some(n=>n===e||n===t)}function Ed(){return Cd()||wd().length>0}function Dd(){let e=process.env.WORKFLOW_INTERNAL_EVENTS_TRANSPORT_STRICT;return e===`1`||e===`true`}function Od(){return process.env.WORKFLOW_STREAMS_TRANSPORT?.trim().toLowerCase()!==`http`}function kd(){let e=process.env.VERCEL_QUEUE_TRACE_PROPAGATION?.toLowerCase();return e===`off`||e===`0`||e===`false`}function Ad(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?ve.parse(e.messageId):null}}var jd=class{contentType=`application/cbor`;serialize(e){return Buffer.from(In(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 ln(Buffer.concat(t))}},Md=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())}},Nd=class{contentType=`application/cbor`;serialize(e){return Buffer.from(In(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 ln(r)}catch{return JSON.parse(r.toString())}}};const Pd=new Ze;function Fd(e){let t=Pd.getStore();t?.collectStepIds&&t.stepIds.size<10&&t.stepIds.add(e)}function Id(e,t){if(t.stepIds.size===0)return e;let n=new Headers(e.headers);return n.set(`x-vercel-internal-workflow-step-ids`,JSON.stringify(Array.from(t.stepIds))),new Response(e.body,{headers:n,status:e.status,statusText:e.statusText})}const Ld=O.compile(O.object({payload:x,queueName:d,deploymentId:O.string().optional()})),Rd=Number(process.env.VERCEL_QUEUE_MAX_DELAY_SECONDS||82800);function zd(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 Bd(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,zd(e)??1)}function Vd(e){if(`runId`in e&&typeof e.runId==`string`)return e.runId}function Hd(e){try{return f(e).id}catch{return}}const Ud=(e,t,n)=>{let r;return{open(){e&&Td(t)&&(r=Promise.resolve().then(()=>Eh).then(({openWsChannel:r})=>r(e,n,{workflowName:t})).catch(()=>void 0))},async close(){(await r)?.()}}};function Wd(e){if(!e)return;let t=e.startsWith(`wrun_`)?e.slice(5):e;try{let e=Re(t);return!e.tagged||e.regionId===Ne.unknown?void 0:e.region??void 0}catch{return}}function Gd(e,t){if(Me(t?.region))return t.region;let n=Wd(Vd(e));if(n)return n;let r=process.env.VERCEL_REGION;return Me(r)?r:`iad1`}function Kd(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 qd=/^__([a-z][a-z0-9]*_)?wkf_workflow_/,Jd=T(`@workflow/world-vercel//queueLogLatches`,1,()=>({loggedSequentialReplays:!1}));function Yd(){return process.env.WORKFLOW_SEQUENTIAL_REPLAYS===`1`}function Xd(e,t){return!Yd()||!qd.test(e)?e:(Jd.loggedSequentialReplays||(Jd.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 Zd(e){let{baseUrl:t,usingProxy:n}=Ki(e),r=Ji(e,{usingProxy:n}),i=new jd,a=new Md,o=new Nd,s={dispatcher:vr(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(`${Sd(`Enqueuing a workflow message`)} Callers outside a deployment can instead pass an explicit deploymentId in options.`);return{deploymentId:r,useCbor:(n?.specVersion??8)>=3,region:Gd(t,n),topic:Xd(e,t).replace(/[^A-Za-z0-9-_]/g,`-`),wrapper:{payload:t,queueName:e,deploymentId:n?.deploymentId},sendOptions:{idempotencyKey:n?.idempotencyKey,delaySeconds:n?.delaySeconds,headers:{...Kd(t),...n?.headers}}}},l=e=>new xd({...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?ve.parse(i):null}};return{queue:u,queueBatch:async(e,t)=>{let n=Array(t.length);if(t.length===0)return n;let r=kd()?{}:await Vr(),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]=Ad(a[e])}})),n},createQueueHandler:(t,n)=>{let r=new xd(s).handleCallback(async(t,r)=>{if(!t||!r)return;let i=Pd.getStore(),a=i?.requestId,{payload:o,queueName:s,deploymentId:c}=Ld.parse(t),l=Ud(Vd(o),Hd(s),e),d=!(`stepId`in o&&typeof o.stepId==`string`);l.open();try{let e=()=>n(o,{queueName:s,messageId:ve.parse(r.messageId),attempt:r.deliveryCount,requestId:a}),t=await(i?Pd.run({...i,collectStepIds:d},e):e());if(!(`invoke`in o&&o.invoke===!0)&&typeof t==`object`&&t&&`timeoutSeconds`in t&&typeof t.timeoutSeconds==`number`){let e=t.timeoutSeconds>0?Math.min(t.timeoutSeconds,Rd):void 0;await u(s,o,{deploymentId:c,delaySeconds:e})}}finally{await l.close()}},{retry:(e,{messageId:t,deliveryCount:n})=>{let r=Bd(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={collectStepIds:!1,requestId:e.headers.get(`x-vercel-id`)?.trim()||void 0,stepIds:new Set};return Id(await Pd.run(t,()=>r(e)),t)}},getDeploymentId:async()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;if(!e)throw Error(Sd(`Starting a workflow run`));return e},isDeploymentUnavailableError:e=>e instanceof xl}}const Qd=We.compile(We.object({id:We.string()}));async function $d(e){if(e?.token)return e.token;if(process.env.VERCEL===`1`){let e=await(0,dt.getVercelOidcToken)().catch(()=>null);if(e)return e}return Pi(e)}function ef(e){return async function(){let t=process.env.VERCEL_DEPLOYMENT_ID;if(!t)throw Error(Sd(`Resolving the latest deployment for deploymentId: 'latest'`));let n=await $d(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=await(await zi({method:`GET`,url:`https://api.vercel.com/v1/workflow/resolve-latest-deployment/${encodeURIComponent(t)}${i}`,headers:new Headers({Authorization:`Bearer ${n}`}),dispatcher:_r(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(),o=Qd.safeParse(a);if(!o.success)throw Error(`Invalid response from Vercel API: expected { id: string }. Zod error: ${o.error.message}`);return o.data.id}}var tf=class extends Error{error;constructor(e){super(`Replay event observer failed`,{cause:e}),this.error=e,this.name=`ReplayEventObserverError`}},nf=class extends Error{error;constructor(e){super(`Event log read after a committed write failed`,{cause:e}),this.error=e,this.name=`AfterCommitError`}};const rf=new Set([`step_completed`,`step_retrying`]);function af(e){return rf.has(e)}const of={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`}},sf=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 cf(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(...cf(r.cause,t+1)),n}function lf(e){if(e instanceof tf||De.is(e)||Ee.is(e)||Ce.is(e)||Se.is(e)||je.is(e))return!1;if(D.is(e)||E.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!cf(e).some(e=>[`AbortError`,`ABORT_ERR`,`UND_ERR_ABORTED`,`ERR_HTTP2_STREAM_CANCEL`].includes(e))}return cf(e).some(e=>sf.has(e))}const uf=(e,t)=>new Promise((n,r)=>{if(t?.aborted){r(t.reason);return}let i=()=>{clearTimeout(a),r(t?.reason)},a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},e);t?.addEventListener(`abort`,i,{once:!0})}),df=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`);function ff(e,t){if(!df)return;let n=Object.entries(t).map(([e,t])=>`${e}=${t}`).join(` `);console.debug(`[workflow:world-vercel:event-retry] ${e} ${n}`)}function pf(e){return D.is(e)?e.code??(e.status==null?e.name:`status_${e.status}`):cf(e)[0]??(e instanceof Error?e.name:`unknown`)}async function mf(){try{let e=(await Na())?.getTime();return e!==void 0&&Number.isFinite(e)?e:void 0}catch{return}}function hf(e,t){let n=0,r;return async(i,a)=>{let o=Math.max(1,typeof i.retryAfter==`number`?i.retryAfter:1)*1e3;if(r===void 0){let e=await mf();r={budgetMs:t===`invocation`&&e!==void 0?9e5:3e4,deadlineMs:e}}let s=r.deadlineMs!==void 0&&Date.now()+o>r.deadlineMs-15e3;if(n+o>r.budgetMs||s)throw ff(`throttle retry budget exhausted; surfacing to the queue`,{target:e,budget:t,waitedMs:n,retryAfter:i.retryAfter,outlastsInvocation:s}),i;n+=o,console.warn(`[workflow] Throttled (429) ${e}; retrying in-process in ${o/1e3}s`),await uf(o,a)}}function gf(e,t){return t?.batchIdempotent===void 0&&(t?.afterStepBody===!0||af(e))?`invocation`:`bounded`}function _f(e,t){return t?.batchIdempotent===void 0?e===`hook_received`&&t?.idempotentHookResume===!0||(of[e]?.retryable??!1):t.batchIdempotent}async function vf(e,t,n){let r=_f(t,n),i=hf(`writing ${t} event`,gf(t,n));for(let n=0;;)try{return await e()}catch(e){if(e instanceof nf)throw e;if(je.is(e)){await i(e);continue}if(!r||!lf(e))throw e;if(n>=2)throw ff(`exhausted in-process retries; surfacing for queue redelivery`,{eventType:t,attempts:n+1,error:pf(e)}),e;let a=100*2**n+Math.floor(Math.random()*50);n++,ff(`retrying event POST after transient failure`,{eventType:t,attempt:n,backoffMs:a,error:pf(e)}),await uf(a)}}const yf=`application/vnd.workflow.v4-frames`;var bf=class extends Error{};const xf=O.compile(O.record(O.string(),O.unknown()));function Sf(e,t){let n=new Uint8Array(In(e)),r=new Uint8Array(4+n.byteLength+4+t.byteLength),i=new DataView(r.buffer);return i.setUint32(0,n.byteLength,!1),r.set(n,4),i.setUint32(4+n.byteLength,t.byteLength,!1),r.set(t,4+n.byteLength+4),r}function Cf(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.byteLength<4)throw Error(`ws frame shorter than the meta length prefix`);let n=4+t.getUint32(0,!1);if(e.byteLength<n+4)throw Error(`ws frame too short for meta + body length prefix`);let r=ln(e.subarray(4,n));if(typeof r!=`object`||!r||Array.isArray(r))throw Error(`ws frame meta must be a CBOR map`);let i=n+4,a=i+t.getUint32(n,!1);if(e.byteLength!==a)throw Error(e.byteLength<a?`ws frame shorter than its declared body length`:`ws frame has ${e.byteLength-a} trailing bytes`);return{meta:r,body:e.subarray(i,a)}}async function*wf(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():Ef(e.getReader()),n=new Uint8Array,r=async e=>{if(n.byteLength>=e)return!0;let r=[n],i=n.byteLength;for(;i<e;){let e;try{e=await t.next()}catch(e){throw new bf(`decodeFrames: source stream failed`,{cause:e})}if(e.done)return!1;e.value.byteLength!==0&&(r.push(e.value),i+=e.value.byteLength)}n=new Uint8Array(i);let a=0;for(let e of r)n.set(e,a),a+=e.byteLength;return!0},i=e=>{let t=n.subarray(0,e);return n=n.subarray(e),t};try{for(;;){if(!await r(4))return;let e=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),!await r(e))throw new bf(`decodeFrames: truncated meta block`);let t=xf.parse(ln(i(e)));if(!await r(4))throw new bf(`decodeFrames: truncated body length`);let a=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),a>0&&!await r(a))throw new bf(`decodeFrames: truncated body bytes`);if(yield{meta:t,body:n.slice(0,a)},i(a),t._end===1)return}}finally{Tf(()=>t.return?.())}}function Tf(e){try{Promise.resolve(e()).catch(()=>{})}catch{}}async function*Ef(e){try{for(;;){let{done:t,value:n}=await e.read();if(t)return;n&&(yield n)}}finally{Tf(()=>e.cancel())}}const Df=`gzip`,Of=`zstd`,kf=new TextDecoder,Af=new Set([`devl`,`encr`,Df,Of]);function jf(){try{return globalThis.process?.getBuiltinModule?.(`node:zlib`)}catch{return}}function Mf(e){return!(e instanceof Uint8Array)||e.byteLength<4?null:kf.decode(e.subarray(0,4))}function Nf(e){let t=Mf(e);return t!==null&&Af.has(t)}function Pf(e,t){let n=jf(),r=e===Of?n?.zstdDecompressSync:n?.gunzipSync;if(!r)throw new D(`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 Ff(e){let t=Mf(e);return t!==Of&&t!==Df?e:Pf(t,e.subarray(4))}function If(e){try{return Ff(e)}catch(e){throw D.is(e)?e:new D(`Stored dynamic workflow code could not be decompressed.`,{code:`WORLD_CONTRACT_ERROR`,cause:e})}}function Lf(e){return{...e,input:Ff(e.input),output:Ff(e.output),error:Ff(e.error),...e.dynamicWorkflowCode===void 0?{}:{dynamicWorkflowCode:If(e.dynamicWorkflowCode)}}}function Rf(e){return{...e,input:Ff(e.input),output:Ff(e.output),error:Ff(e.error)}}function zf(e){return{...e,metadata:Ff(e.metadata)}}const Bf=O.compile(m.omit({error:!0}).extend({error:O.union([ee,O.any()]).optional(),errorRef:O.any().optional()})),Vf=O.compile(Bf.omit({input:!0,output:!0}).extend({inputRef:O.any().optional(),outputRef:O.any().optional(),input:O.instanceof(Uint8Array).optional(),output:O.instanceof(Uint8Array).optional()}));function Hf(e){let{error:t,errorRef:n,...r}=e,i={...r},a=t??n;return a!=null&&(i.error=a),i}function Uf(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...Rf(Hf(r)),input:void 0,output:void 0}}return Rf(Hf(e))}async function Wf(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=await W({endpoint:`/v2/runs/${encodeURIComponent(n)}/steps${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:de(o===`lazy`?Vf:Bf)});return{...c,data:c.data.map(e=>Uf(e,i))}}async function Gf(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();return Uf(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}/steps/${encodeURIComponent(t)}${s?`?${s}`:``}`,options:{method:`GET`},config:r,schema:a===`lazy`?Vf:Bf}),i)}async function Kf(e,t,n,r,i){let a=yr(n),o=await zi({method:t.method,url:e,headers:t.headers,body:t.body,dispatcher:a,attributes:i,onTransportOutcome:e=>mr(a,e),deferTransportSuccessUntilBody:!0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r,buildError:async t=>cp(t.status,ji(t.headers),new Uint8Array(await t.arrayBuffer()),r,e)});if(!o.body)return mr(a),o;let s=o.body.getReader(),c=new ReadableStream({async pull(t){try{let e=await s.read();e.done?(mr(a),t.close()):t.enqueue(e.value)}catch(n){mr(a,n);let i=Si(n);t.error(i?new E(`v4 ${r}: response stream transport failure (${i})`,{cause:n,url:e}):n)}},cancel(e){return mr(a),s.cancel(e)}});return new Response(c,{status:o.status,statusText:o.statusText,headers:o.headers})}const qf=`x-wf-event-id`,Jf=`x-wf-max-events`;function Yf(e,t,n){return`${e}/v4/runs/${encodeURIComponent(t)}/events/${encodeURIComponent(n)}`}const Xf=Symbol(`omitted event payload`),Zf=O.compile(O.preprocess(e=>{if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=e,n=typeof t.eventType==`string`?c(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]:Xf}}},S).transform(e=>{let t=c(e.eventType);if(!t||!(`eventData`in e))return e;let n=e.eventData;if(typeof n!=`object`||!n||Array.isArray(n)||n[t]!==Xf)return e;let r={...n};return delete r[t],{...e,eventData:r}})),Qf=O.object({event:Zf,run:C.optional(),step:Bf.transform(Hf).optional(),hook:ye.optional(),wait:p.optional(),stepCreated:O.literal(!0).optional(),maxEvents:O.number().int().positive().optional()}),$f=O.union([O.object({events:O.array(Zf),cursor:O.string().nullable(),hasMore:O.boolean()}),O.object({events:O.undefined().optional(),cursor:O.undefined().optional(),hasMore:O.undefined().optional()})]),$=Qf.and($f),ep={run_created:Qf.extend({run:C}).and($f),run_started:Qf.extend({run:C.and(O.object({startedAt:O.coerce.date()}))}).and($f),step_started:Qf.extend({step:Bf.extend({startedAt:O.coerce.date()}).transform(e=>({...Hf(e),startedAt:e.startedAt}))}).and($f),run_completed:$,run_failed:$,run_cancelled:$,attr_set:$,step_created:$,step_completed:$,step_failed:$,step_retrying:$,hook_created:$,hook_received:$,hook_disposed:$,hook_conflict:$,wait_created:$,wait_completed:$,noop:$},tp=O.compile(O.coerce.number().int().positive()),np=O.compile(O.object({_end:O.literal(1),next:O.string().optional(),hasMore:O.boolean()})),rp=O.compile(O.object({_error:O.literal(1),code:O.string(),message:O.string().optional()})),ip=new Set([`run_failed`,`step_failed`,`step_retrying`]);function ap(e){if(Nf(e))return e;try{let t=ae.safeParse(ln(e.slice()));return t.success?t.data:e}catch{return e}}function op({meta:e,body:t}){let n=w.parse(e.eventType);if(t.byteLength===0)return Zf.parse(e);let r=c(n);return Qe(r,`Event type ${n} cannot carry a payload body`),Qe(e.eventData&&typeof e.eventData==`object`),Zf.parse({...e,eventData:{...e.eventData,[r]:ip.has(n)?ap(t):t}})}function sp(e){let t={eventType:e.eventType,specVersion:e.specVersion};return e.executorSpecVersion!==void 0&&(t.executorSpecVersion=e.executorSpecVersion),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.eventsRemoteRefBehavior!==void 0&&(t.eventsRemoteRefBehavior=e.eventsRemoteRefBehavior),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.hookForce!==void 0&&(t.hookForce=e.hookForce),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.dynamicWorkflowCode!==void 0&&(t.dynamicWorkflowCode=e.dynamicWorkflowCode),e.dynamicWorkflowCodeRef!==void 0&&(t.dynamicWorkflowCodeRef=e.dynamicWorkflowCodeRef),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 cp(e,t,n,r,i){let a=`v4 ${r} failed: HTTP ${e}`,o,s,{record:c,text:l}=lp(n,Op(t,`content-type`));c?(typeof c.message==`string`&&(a=c.message),typeof c.code==`string`?o=c.code:typeof c.error==`string`&&(o=c.error),e===412&&(s=up(c)),e===409&&o===`hook-force-claimed`&&(s={claimedBy:c.claimedBy})):l&&(a+=` ${l}`);let u=Ai(Op(t,`retry-after`));return Mi(e,a,{retryAfter:u,code:o,url:i,mitigated:Op(t,`x-vercel-mitigated`),...s===void 0?{}:{details:s}})}function lp(e,t){if(typeof e!=`string`&&t?.includes(`application/cbor`)){try{let t=ln(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 up(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`||dp(e))return;let r=Zf.safeParse(e);if(!r.success)return;t.push(r.data)}return{events:t,...typeof e.cursor==`string`?{cursor:e.cursor}:{}}}function dp(e){let t=e.eventType;if(typeof t!=`string`)return!1;let n=c(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 fp(e,t,n){let{baseUrl:r,headers:i}=await U(n),a=new Headers(i);a.set(`Content-Type`,`application/octet-stream`),t===`event-stream`&&a.set(`Accept`,yf);let o=Sf(sp(e),e.payload??new Uint8Array);return Kf(Yf(r,e.runId,e.eventType),{method:`POST`,headers:a,body:o},n,`createEvent`,{...ai(`http`),...si(e.eventType),...ui(`@workflow/world-vercel/${Un}`),...e.eventType===`step_started`?{...ci(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...li(e.ownerMessageId!==void 0)}:{},...e.stso===void 0?{}:di(e.stso),...e.optimizations===void 0?{}:fi(e.optimizations)})}const pp=new Set([`step_completed`]);function mp(e){if(Dd()&&Cd()&&pp.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 hp(e,t){if(Ed()){let n=await Ep(e,t);if(n)return yp(n,e.eventType);mp(e.eventType)}let n=await fp(e,`materialized`,t);if(n.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))throw new D(`v4 createEvent: unexpected event page`,{code:`SCHEMA_VALIDATION`});return yp(n,e.eventType)}const gp=new Map;function _p(e){return ep[e].refine(({event:t})=>t.eventType===e||e===`hook_created`&&t.eventType===`hook_conflict`,{path:[`event`,`eventType`]})}function vp(e){let t=gp.get(e);if(t)return t;let n=O.compile(_p(e));return gp.set(e,n),n}async function yp(e,t){let n;try{n=new Uint8Array(await e.arrayBuffer())}catch(e){throw E.is(e)?e:new D(`v4 createEvent: failed to read response body`,{code:`TRANSPORT`,cause:e})}if(n.byteLength===0)throw new D(`v4 createEvent: empty response body`,{code:`PARSE_ERROR`});let r=vp(t),i;try{i=ln(n)}catch(e){throw new D(`v4 createEvent: invalid CBOR response body`,{code:`PARSE_ERROR`,cause:e})}let a=r.safeParse(i);if(!a.success)throw new D(`v4 createEvent: invalid response body`,{code:`SCHEMA_VALIDATION`,cause:a.error});return a.data}async function bp(e,t,n){let r=await fp({...e,eventType:`run_started`},`event-stream`,t),i=await Np(r,e,t,n);if(!i.cursor)throw new D(`v4 createEvent: event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let a=tp.safeParse(r.headers.get(Jf));if(!a.success)throw new D(`v4 createEvent: invalid max-events header`,{code:`SCHEMA_VALIDATION`,cause:a.error});return{...i,maxEvents:a.data}}const xp=O.compile(O.object({status:O.number().int(),error:O.string(),message:O.string()}));async function Sp(e,t){Qe(e.events.length>0,`v4 createEventBatch: empty batch`);let{baseUrl:n,headers:r}=await U(t),i=new Headers(r);i.set(`Content-Type`,`application/octet-stream`);let a=e.events.map(e=>Sf(sp(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 Kf(`${n}/v4/runs/${encodeURIComponent(e.runId)}/events/batch`,{method:`POST`,headers:i,body:s},t,`createEventBatch`,{...ai(`http`),"workflow.batch.bytes":s.byteLength,...e.events.some(e=>e.eventType===`step_started`)?{...ci(e.events.some(e=>e.eventType===`step_created`)?`batch_create_claim`:`batch_bare`),...li(e.events.some(e=>e.ownerMessageId!==void 0))}:{}}),u=new Uint8Array(await l.arrayBuffer()),d=u.byteLength>0?ln(u):{};if(!Array.isArray(d.results)||d.results.length!==e.events.length)throw new D(`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=xp.safeParse(t);if(r.success&&r.data.status!==200)return r.data;if(t?.status!==200)throw new D(`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=ep[i].safeParse(t);if(!a.success)throw new D(`v4 createEventBatch: invalid result body at index ${n} (${i})`,{code:`SCHEMA_VALIDATION`,cause:a.error});if(a.data.event.eventType!==i)throw new D(`v4 createEventBatch: result at index ${n} carries a ${a.data.event.eventType} event, expected ${i}`,{code:`SCHEMA_VALIDATION`});return{status:200,...a.data}})}}function Cp(e){let t={};return typeof e.eventId==`string`&&(t[qf]=e.eventId),typeof e.retryAfter==`string`&&(t[`retry-after`]=e.retryAfter),typeof e.mitigated==`string`&&(t[`x-vercel-mitigated`]=e.mitigated),t}function wp(e,t){let{replyParts:n=1}=t;n>1&&e?.setAttributes({...gi(n)})}function Tp(e,t){let{status:n}=e.meta;if(typeof n!=`number`)throw new D(`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 Ep(e,t){let{resolveWsTransport:n}=await Promise.resolve().then(()=>Eh),{runId:r}=e,i=n(r,t);if(!i)return;let{transport:a,wsUrl:o}=i,s=`${o}#runs/${encodeURIComponent(r)}/events`;return Li({method:`POST`,url:Yf(Ki(t).baseUrl,r,e.eventType),attributes:{...ai(`ws`),...si(e.eventType),...ui(`@workflow/world-vercel/${Un}`),...e.stso===void 0?{}:di(e.stso),...e.optimizations===void 0?{}:fi(e.optimizations),...e.eventType===`step_started`?{...ci(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...li(e.ownerMessageId!==void 0)}:{},...Jr(`websocket`),...pi(o)}},async t=>{let n=Date.now(),r;try{r=await a.request(n=>(t?.setAttributes({...mi(n)}),Sf({reqId:n,type:`event`,event:sp(e)},e.payload??new Uint8Array)),{onMessages:e=>{e>1&&t?.setAttributes({...hi(e)})}})}catch(e){let n=new D(`POST ${s} transport failure: ${e instanceof Error?e.message:String(e)}`,{url:o,code:`TRANSPORT`,cause:e});throw t?.setAttributes({...qr(`TRANSPORT`)}),t?.recordException?.(n),n}let i=Date.now()-n;wp(t,r);let c=Tp(r,s),l=Cp(r.meta),u={get:e=>l[e.toLowerCase()]??null};if(Oi(`POST`,`createEvent`,{status:c,headers:u},i),Ri(t,c),c<200||c>=300){let e=cp(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 Dp(e,t,n){let r=await fp({...e,eventType:`hook_received`},`event-stream`,t);if(!r.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))return{kind:`materialized`,result:await yp(r,`hook_received`)};let i=await Np(r,e,t,n),a=tp.safeParse(r.headers.get(Jf));return{kind:`stream`,...i,canonicalEventId:r.headers.get(qf)??void 0,maxEvents:a.success?a.data:void 0}}function Op(e,t){let n=e[t];if(typeof n==`string`)return n;if(Array.isArray(n)&&n.length>0)return n[0]}async function kp(e,t,n,r){let{baseUrl:i,headers:a}=await U(r),o=await Kf(`${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 ${yf}, got ${s??`(none)`}`);let c=o.body;try{for await(let e of wf(c)){if(e.meta._error===1)throw Ap(e.meta,`getEvent`);if(Object.keys(e.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 getEvent: unexpected control frame`);return op(e)}}catch(e){throw e instanceof bf&&E.is(e.cause)?e.cause:e}throw Error(`v4 getEvent: empty frame stream for ${t}`)}function Ap(e,t){let n=rp.safeParse(e);if(!n.success)return new D(`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 ke(`the event log references a payload that no longer exists in storage: ${a}`):new D(`v4 ${t}: stream ended with terminal error "${r}": ${a}`,{code:`WORLD_CONTRACT_ERROR`})}function jp(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 Mp(e,t,n){let r=e.headers.get(`content-type`);if(!r?.startsWith(`application/vnd.workflow.v4-frames`))throw new D(`v4 ${t}: expected ${yf}, got ${r??`(none)`}`,{code:`SCHEMA_VALIDATION`});if(!e.body)throw new D(`v4 ${t}: response body is missing`,{code:`TRANSPORT`});let i=[];try{for await(let r of wf(e.body)){if(r.meta._end===1){let e=np.parse(r.meta);return{kind:`complete`,events:i,cursor:e.next??null,hasMore:e.hasMore}}if(r.meta._error===1)throw Ap(r.meta,t);if(Object.keys(r.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 ${t}: unexpected control frame`);let e=op(r);i.push(e);try{n?.(e)}catch(e){throw new tf(e)}}}catch(e){if(e instanceof tf||ke.is(e)||D.is(e))throw e;if(e instanceof bf&&E.is(e.cause))return jp(i,e.cause);if(!(e instanceof bf))throw new D(`v4 ${t}: invalid event frame stream`,{code:`SCHEMA_VALIDATION`,cause:e});return jp(i,new D(`v4 ${t}: incomplete event frame stream`,{code:`TRANSPORT`,cause:e}))}return jp(i,new D(`v4 ${t}: frame stream ended without the end-of-stream sentinel (${i.length} events read)`,{code:`TRANSPORT`}))}async function Np(e,{runId:t,eventsRemoteRefBehavior:n},r,i){let a=await Mp(e,`createEvent`,i);if(!a.hasMore)return{events:a.events,cursor:a.cursor,hasMore:!1};if(!a.cursor)throw new D(`v4 createEvent: partial event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let o;try{o=await Vp(t,{cursor:a.cursor,remoteRefBehavior:n===`skip-step-inputs`?`skip-step-inputs`:`resolve`},r,i)}catch(e){throw je.is(e)?new nf(e):e}return{events:[...a.events,...o.events],cursor:o.cursor??a.cursor,hasMore:o.hasMore}}async function Pp(e,t,n,r,i){return Mp(await Kf(e,{method:`GET`,headers:t},n,r),r,i)}const Fp=T(`@workflow/world-vercel//skipStepInputsSupport`,2,()=>({unsupportedSince:new Map}));function Ip(e){let t=Fp.unsupportedSince.get(e);return t===void 0?!1:Date.now()-t<6e5||(Fp.unsupportedSince.delete(e),!1)}function Lp(e){return e instanceof D&&e.status===400&&e.code===`validation-error`}async function Rp(e,t,n,r,i,a,o){if(t===`skip-step-inputs`&&!Ip(e)){try{return await Pp(n(t),r,i,a,o)}catch(e){if(!Lp(e))throw e}let s=await Pp(n(`resolve`),r,i,a,o);return Fp.unsupportedSince.set(e,Date.now()),s}return Pp(n(t===`skip-step-inputs`?`resolve`:t),r,i,a,o)}function zp(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 Bp(e){let t=new URLSearchParams;return e.limit===void 0&&t.set(`returnAll`,`true`),zp(t,e),`?${t.toString()}`}async function Vp(e,t={},n,r){let{baseUrl:i,headers:a}=await U(n),o=[],s=t.cursor??null,c=0,l,u=t.limit===void 0,d=hf(`reading events`,`bounded`);for(;;){let f=s??void 0;try{l=await Rp(i,t.remoteRefBehavior,n=>`${i}/v4/runs/${encodeURIComponent(e)}/events`+Bp({...t,remoteRefBehavior:n,cursor:f}),a,n,`listEvents`,r)}catch(e){if(!u||!je.is(e))throw e;await d(e);continue}let p=!!l.cursor&&l.cursor!==s;if(l.kind===`partial`){if(t.limit!==void 0||!p||c===2)throw l.error;c++,s=l.cursor}else if(!p&&(l.events.length>0||l.hasMore))throw new D(`v4 listEvents: response did not advance cursor`,{code:`SCHEMA_VALIDATION`});for(let e of l.events)o.push(e);if(l.kind!==`partial`)break}return{events:o,cursor:l.cursor||(c>0?s:null),hasMore:l.hasMore}}async function Hp(e,t,n={},r){let{baseUrl:i,headers:a}=await U(r),o=await Rp(i,n.remoteRefBehavior,r=>{let a=new URLSearchParams;return a.set(`correlationId`,e),a.set(`runId`,t),zp(a,{...n,remoteRefBehavior:r}),`${i}/v4/events?${a.toString()}`},a,r,`listEventsByCorrelationId`);if(o.kind===`partial`)throw o.error;return{events:o.events,cursor:o.cursor,hasMore:o.hasMore}}const Up=O.compile(u.omit({error:!0,errorCode:!0}).extend({error:O.union([ee,O.any()]).optional(),errorCode:O.string().optional(),blobStorageBytes:O.number().optional(),streamStorageBytes:O.number().optional()})),Wp=O.compile(Up),Gp=O.compile(Up.omit({input:!0,output:!0}).extend({inputRef:O.any().optional(),outputRef:O.any().optional(),input:O.union([O.instanceof(Uint8Array),O.any()]).optional(),output:O.union([O.instanceof(Uint8Array),O.any()]).optional(),dynamicWorkflowCode:O.any().optional()}));function Kp(e,t){if(t===`none`){let{inputRef:t,outputRef:n,dynamicWorkflowCode:r,...i}=e;return{...Lf(Ui(i)),input:void 0,output:void 0}}return Lf(Ui(e))}async function qp(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 D(`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=await W({endpoint:`/v2/runs${c?`?${c}`:``}`,options:{method:`GET`},config:t,schema:de(s===`lazy`?Gp:Wp)});return{...l,data:l.data.map(e=>Kp(e,a))}}async function Jp(e,t){return Ui(await W({endpoint:`/v1/runs/create`,options:{method:`POST`},data:e,config:t,schema:Wp}))}async function Yp(e,t,n){let r=t?.resolveData??`all`;try{return await Xp(e,{resolveData:r},n)}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}async function Xp(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();return Kp(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}${c}${l?`?${l}`:``}`,options:{method:`GET`,...a?{signal:a}:{}},config:n,retryConnectTimeout:!0,schema:o===`lazy`?Gp:Wp}),r)}const Zp=T(`@workflow/world-vercel//runStatusLongPollSupport`,1,()=>({unsupportedUntilByBaseUrl:new Map}));function Qp(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 $p(e,t,n){let r=t?.resolveData??`all`,i=Math.max(0,Math.min(t?.timeoutMs??0,Ci()-1e4)),{baseUrl:a}=Ki(n),o=Zp.unsupportedUntilByBaseUrl.get(a)??0;if(i===0||Date.now()<o)return Yp(e,{resolveData:r},n);try{return await Xp(e,{resolveData:r,waitMs:i,...t?.signal?{signal:t.signal}:{}},n)}catch(i){if(t?.signal?.aborted||!(i instanceof D)||!Qp(i))throw i;let o=await Yp(e,{resolveData:r},n);return Zp.unsupportedUntilByBaseUrl.set(a,Date.now()+3e5),o}}async function em(e,t,n){let r=[...new Set(e)],i=await Promise.all(r.map(async e=>{try{return await Yp(e,t,n)}catch(e){if(e instanceof we)return null;throw e}})),a=new Map(r.map((e,t)=>[e,i[t]]));return e.map(e=>a.get(e)??null)}async function tm(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 Kp(await W({endpoint:s,options:{method:`PUT`},config:n,schema:i===`lazy`?Gp:Wp}),r)}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}async function nm(e,t){let{runIds:n,cancelReason:r}=b.parse(e),i=await W({endpoint:`/v4/runs/cancel`,options:{method:`POST`},data:r===void 0?{runIds:n}:{runIds:n,cancelReason:r},config:t,schema:be}),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 D(`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 rm=O.compile(O.object({attributes:O.record(O.string(),O.string())}));async function im(e,t,n,r){try{return{attributes:(await W({endpoint:`/v2/runs/${encodeURIComponent(e)}/attributes`,options:{method:`POST`},data:n?.allowReservedAttributes?{changes:t,allowReservedAttributes:!0}:{changes:t},config:r,schema:rm})).attributes}}catch(t){throw t instanceof D&&t.status===404?new we(e):t}}function am(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return he(`wrun_${Re(t).ulid}`,`wrun_`)}catch{return he(e,`wrun_`)}}const om=new Set([`run_created`,`run_started`,`step_started`]);function sm(e){if(e.eventType===`attr_set`)try{re(e.eventData)}catch(e){throw e instanceof se?new D(e.message,{status:400}):e}let t=e.eventData??{},n=c(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),t.force===!0&&(r.hookForce=!0),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),t.dynamicWorkflowCode instanceof Uint8Array&&(r.dynamicWorkflowCode=t.dynamicWorkflowCode),typeof t.dynamicWorkflowCodeRef==`string`&&(r.dynamicWorkflowCodeRef=t.dynamicWorkflowCodeRef),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 cm(e,t,n,r){return kp(e,t,n?.resolveData===`none`?`lazy`:`resolve`,r)}async function lm(e,t){let{pagination:n,resolveData:r=`all`}=e,i={...n,remoteRefBehavior:r===`none`?`lazy`:r===`skip-step-inputs`?`skip-step-inputs`:`resolve`},a=await(`correlationId`in e?Hp(e.correlationId,e.runId,i,t):Vp(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 um(e,t,n,r){if(t.length===0)throw new D(`world-vercel: createBatch requires at least one event`,{status:400});if(t.some(({event:e})=>e.eventType===`hook_received`))throw new D(`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}=sm(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 vf(()=>Sp({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 dm(e,t,n,r){try{let i=await vf(()=>fm(e,t,n,r),t.eventType,{idempotentHookResume:t.eventType===`hook_received`&&n?.resumeId!==void 0&&n?.resumePayloadDigest!==void 0,afterStepBody:n?.afterStepBody===!0});if(t.eventType===`run_created`&&!i.run)throw new D(`${t.eventType} response is missing the run entity`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`run_started`&&!i.run?.startedAt)throw new D(`run_started response is missing run.startedAt`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`step_started`&&!i.step?.startedAt)throw new D(`step_started response is missing step.startedAt`,{code:`SCHEMA_VALIDATION`});return i}catch(e){if(e instanceof tf||e instanceof nf)throw e.error;if(Ee.is(e)&&t.eventType===`hook_received`){let n=t.eventData?.token;throw new Ee(typeof n==`string`?n:e.token,e.claimedByRunId,e.claimedByHookId)}throw h(t.eventType)&&D.is(e)&&e.status===404&&t.correlationId?new Oe(t.correlationId):e}}async function fm(e,t,n,r){if(n?.v1Compat){if(t.eventType===`run_cancelled`&&e)return{run:await tm(e,{...n,resolveData:ie(n.resolveData)},r)};if(t.eventType===`run_created`)return{run:await Jp(t.eventData,r)};if(e===null)throw new D(`world-vercel: v1Compat=true requires a runId for ${t.eventType}`,{status:400});return{event:await W({endpoint:`/v1/runs/${encodeURIComponent(e)}/events`,options:{method:`POST`},data:t,config:r,schema:Zf})}}if(e===null)throw new D(`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=am(e);if(t)throw new D(t,{status:400})}let i=om.has(t.eventType)?`resolve`:`lazy`,{payload:a,meta:o}=sm(t),s={runId:e,specVersion:t.specVersion??2,...t.eventType===`run_started`?{executorSpecVersion:r?.mintedSpecVersion??pe()}:{},...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}:{},...n?.resolveData===`skip-step-inputs`?{eventsRemoteRefBehavior:`skip-step-inputs`}:{},remoteRefBehavior:i,payload:a,...o};if(t.eventType===`run_started`&&!n?.skipPreload){let e=await bp(s,r,n?.replayEventObserver),t=pm(e.events);if(!t)throw new D(`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 Dp({...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=pm(a);return{...l?{event:l}:{},...u?{run:u.run}:{},events:a,cursor:o,hasMore:c,...i===void 0?{}:{maxEvents:i}}}return hp(t.eventType===`run_started`?{...s,eventType:`run_started`,skipPreload:!0}:{...s,eventType:t.eventType},r)}function pm(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=ne(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 mm(e,t){if(t===`none`){let{metadataRef:t,...n}=e;return n}return zf(e)}const hm=Ge.compile(ye.omit({metadata:!0}).extend({metadataRef:Ge.any().optional()}));async function gm(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=await W({endpoint:`/v2/hooks${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:de(o===`lazy`?hm:ye)});return{...c,data:c.data.map(e=>mm(e,i))}}async function _m(e,t,n){let r=t?.resolveData||`all`;return mm(await W({endpoint:`/v2/hooks/${encodeURIComponent(e)}`,options:{method:`GET`},config:n,schema:ye}),r)}async function vm(e,t){try{return await W({endpoint:`/v2/hooks/by-token?token=${encodeURIComponent(e)}`,options:{method:`GET`},config:t,schema:ye})}catch(t){throw D.is(t)&&t.status===404?new Oe(e):t}}function ym(e){let t={};for(let[n,r]of e)t[n]=r;return t}function bm(e){wi&&console.debug(`[workflow:world-vercel:http] WORLD_SNAPSHOT_DIAG`,e)}function xm(e){return{async save(t,n,r){let i=performance.now(),{baseUrl:a,headers:o}=await U(e),s=`${a}/v2/runs/${encodeURIComponent(t)}/snapshot`,c=ue(r,n);if(c.byteLength>67108864)throw bm({op:`save`,runId:t,outcome:`too_large`,wireBytes:c.byteLength}),new D(`Snapshot for run ${t} is ${c.byteLength} bytes, over the 67108864-byte limit; not uploading`,{url:s});o.set(`Content-Type`,`application/octet-stream`),o.set(`X-Snapshot-Events-Cursor`,r.eventsCursor??``),o.set(`X-Snapshot-Created-At`,r.createdAt.toISOString()),await Br(o);let l=performance.now(),u=await(0,Hn.request)(s,{method:`PUT`,body:c,headers:ym(o),dispatcher:_r(e)}),d=Math.round(performance.now()-l);if(u.statusCode<200||u.statusCode>=300){let e=await u.body.text().catch(()=>``);throw new D(`PUT /v2/runs/${t}/snapshot -> HTTP ${u.statusCode}: ${e}`,{url:s,status:u.statusCode})}await u.body.text(),bm({op:`save`,runId:t,wireBytes:c.byteLength,putDurationMs:d,totalDurationMs:Math.round(performance.now()-i)})},async load(t){let n=performance.now(),{baseUrl:r,headers:i}=await U(e),a=`${r}/v2/runs/${encodeURIComponent(t)}/snapshot`;i.set(`Accept`,`application/octet-stream`),await Br(i);let o=performance.now(),s=await fetch(a,{method:`GET`,headers:i,dispatcher:_r(e)}),c=Math.round(performance.now()-o);if(s.status===404)return await s.text().catch(()=>{}),bm({op:`load`,runId:t,outcome:`not_found`,getDurationMs:c,totalDurationMs:Math.round(performance.now()-n)}),null;if(!s.ok){let e=await s.text().catch(()=>``);throw new D(`GET /v2/runs/${t}/snapshot -> HTTP ${s.status}: ${e}`,{url:a,status:s.status})}let l=await s.arrayBuffer(),u=new Uint8Array(l),d=te(u);return bm({op:`load`,runId:t,outcome:d?`ok`:`undecodable_envelope`,wireBytes:u.byteLength,getDurationMs:c,totalDurationMs:Math.round(performance.now()-n)}),d},async delete(t){let{baseUrl:n,headers:r}=await U(e),i=`${n}/v2/runs/${encodeURIComponent(t)}/snapshot`;await Br(r);let a=await fetch(i,{method:`DELETE`,headers:r,dispatcher:_r(e)});if(!a.ok&&a.status!==404){let e=await a.text().catch(()=>``);throw new D(`DELETE /v2/runs/${t}/snapshot -> HTTP ${a.status}: ${e}`,{url:i,status:a.status})}await a.text()}}}function Sm(e){let t=xm(e),n={runs:{get:((t,n)=>Yp(t,n,e)),waitForTerminalStatus:((t,n)=>$p(t,n,e)),getMany:((t,n)=>em(t,n,e)),list:(t=>qp(t,e)),experimentalSetAttributes:(t,n,r)=>im(t,n,r,e),cancelMany:t=>nm(t,e)},steps:{get:((t,n,r)=>Gf(t,n,r,e)),list:(t=>Wf(t,e))},events:{create:(t,n,r)=>dm(t,n,r,e),createBatch:(t,n,r)=>um(t,n,r,e),get:(t,n,r)=>cm(t,n,r,e),list:t=>lm(t,e),listByCorrelationId:t=>lm(t,e)},hooks:{get:(t,n)=>_m(t,n,e),getByToken:t=>vm(t,e),list:t=>gm(t,e)},experimental_snapshots:t};return{runs:Ha(`world.runs`,n.runs),steps:Ha(`world.steps`,n.steps),events:Ha(`world.events`,n.events),hooks:Ha(`world.hooks`,n.hooks),experimental_snapshots:Ha(`world.experimental_snapshots`,t)}}const Cm=1e3;function wm(e){let t=new TextEncoder;return e.map(e=>typeof e==`string`?t.encode(e):e)}function Tm(e){return Em(wm(e))}function Em(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 Dm=Cm,Om=O.number().int().nonnegative(),km=Om,Am=O.string().regex(/^wrtr_[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$/),jm=O.object({type:O.literal(`write`),reqId:km,chunkSeq:Om,numChunks:O.number().int().positive().max(Dm)}),Mm=O.object({type:O.literal(`close`),reqId:km});O.discriminatedUnion(`type`,[jm,Mm]);const Nm=O.object({type:O.literal(`write_ack`),reqId:km}),Pm=O.object({type:O.literal(`close_ack`),reqId:km}),Fm=O.object({type:O.literal(`error`),reqId:km.optional(),status:O.number().int(),message:O.string().optional(),retryAfter:O.string().optional()}),Im=O.object({type:O.literal(`drain`),reason:O.enum([`auth_expiry`,`max_duration`]),graceMs:Om}),Lm=O.discriminatedUnion(`type`,[Nm,Pm,Fm,Im]);function Rm(e,t,n,r){let i=Am.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 zm(e,t){let n=jm.parse(e);if(n.numChunks!==t.length)throw Error(`stream WebSocket write declares ${n.numChunks} chunks but received ${t.length}`);let r=wm(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 Sf(n,Em(r))}function Bm(e,t,n){let r=Math.min(e.length,t+Dm),i=132+e[t].byteLength,a=t+1;for(;a<r&&(i+=4+e[a].byteLength,!(i>n));)a++;return a}function Vm(e){return Sf(Mm.parse(e),new Uint8Array)}function Hm(e,t){if(t.byteLength!==0)throw Error(`stream WebSocket reply body must be empty`);return Lm.parse(e)}const Um=[`frame-parts`];function Wm(){return oe(`WORKFLOW_WS_MAX_MESSAGE_BYTES`,12582912,{min:2097152,max:16777216,integer:!0})}function Gm(e,t,n){let r=Sf(e,t);if(r.byteLength<=n)return[r];if(t.byteLength>268435456)throw new Ym(`ws frame body of ${t.byteLength} bytes is over the ${Zm}-byte limit for a split frame`);let i=e.reqId;if(!$m(i))throw Error(`ws frame of ${r.byteLength} bytes exceeds the ${n}-byte message limit and has no reqId to split it under`);let a=t.byteLength+1,o=Sf({...e,partIndex:0,partCount:a},Km).byteLength,s=Sf(Jm(i,a,a),Km).byteLength,c=n-o,l=n-s;if(c<=0||l<=0)throw Error(`ws frame meta does not fit in the ${n}-byte message limit`);let u=t.byteLength-c,d=1+Math.ceil(u/l);if(d>257)throw Error(`ws frame of ${r.byteLength} bytes needs ${d} parts at a ${n}-byte message limit; at most 257 are allowed`);let f=[Sf({...e,partIndex:0,partCount:d},t.subarray(0,c))];for(let e=1;e<d;e++){let n=c+(e-1)*l;f.push(Sf(Jm(i,e,d),t.subarray(n,Math.min(n+l,t.byteLength))))}return f}const Km=new Uint8Array;function qm(e,t){if(e.byteLength<=t)return[e];let{meta:n,body:r}=Cf(e);return Gm(n,r,t)}function Jm(e,t,n){return{type:`part`,reqId:e,partIndex:t,partCount:n}}var Ym=class extends Error{name=`WsFrameTooLargeError`},Xm=class extends Error{name=`WsPartProtocolError`};const Zm=268435456;var Qm=class{open=new Map;maxFrameBytes;maxBodyBytes;onTooLarge;maxOpenFrames;maxPartCount;wanted;onDiscarded;constructor(e={}){this.maxFrameBytes=e.maxFrameBytes??268435456,this.maxBodyBytes=Math.min(e.maxBodyBytes??this.maxFrameBytes,this.maxFrameBytes),this.onTooLarge=e.onTooLarge??(()=>{}),this.maxOpenFrames=e.maxOpenFrames??1,this.maxPartCount=e.maxPartCount??257,this.wanted=e.wanted??(()=>!0),this.onDiscarded=e.onDiscarded??(()=>{})}accept(e){let{meta:t,body:n}=e;if(t.type===`part`)return this.continue(t,n);let{reqId:r,partIndex:i,partCount:a}=t;if(!(`partIndex`in t)&&!(`partCount`in t)){if($m(r)&&this.open.has(r))throw new Xm(`whole frame for reqId ${r} while its split frame is open`);return e}if(!$m(r))throw new Xm(`first part has no valid reqId`);if(i!==0)throw new Xm(`first part for reqId ${r} has partIndex ${String(i)}, expected 0`);if(!eh(a)||a>this.maxPartCount)throw new Xm(`first part for reqId ${r} has invalid partCount ${String(a)} (2..${this.maxPartCount})`);if(this.open.has(r))throw new Xm(`second first part for reqId ${r} while one is open`);if(this.open.size>=this.maxOpenFrames)throw new Xm(`more than ${this.maxOpenFrames} split frames open at once`);let{partIndex:o,partCount:s,...c}=t,l={meta:c,partCount:a,nextIndex:1,chunks:[],bytes:0,discard:!this.wanted(r),tooLarge:!1};this.open.set(r,l),this.addChunk(r,l,n)}get openFrames(){return this.open.size}continue(e,t){let n=Object.keys(e);if(n.length!==4||!(`reqId`in e)||!(`partIndex`in e)||!(`partCount`in e))throw new Xm(`continuation part must have exactly type, reqId, partIndex and partCount, got ${n.join(`, `)}`);let{reqId:r,partIndex:i,partCount:a}=e;if(!$m(r))throw new Xm(`continuation part has no valid reqId`);let o=this.open.get(r);if(!o)throw new Xm(`continuation part for reqId ${r} with no open frame`);if(a!==o.partCount)throw new Xm(`continuation part for reqId ${r} has partCount ${String(a)}, expected ${o.partCount}`);if(i!==o.nextIndex)throw new Xm(`continuation part for reqId ${r} has partIndex ${String(i)}, expected ${o.nextIndex}`);let s=o.nextIndex===o.partCount-1;if(this.addChunk(r,o,t),o.nextIndex++,!s)return;if(this.close(r),o.tooLarge){this.onTooLarge(r,o.bytes);return}if(o.discard){this.onDiscarded(r);return}let c=new Uint8Array(o.bytes),l=0;for(let e of o.chunks)c.set(e,l),l+=e.byteLength;return{meta:o.meta,body:c}}addChunk(e,t,n){if(t.bytes+n.byteLength>this.maxFrameBytes)throw this.close(e),new Xm(`frame for reqId ${e} exceeds ${this.maxFrameBytes} bytes`);t.bytes+=n.byteLength,!t.discard&&t.bytes>this.maxBodyBytes&&(t.discard=!0,t.tooLarge=!0,t.chunks=[]),!t.discard&&t.chunks.push(n.slice())}close(e){this.open.delete(e)}};function $m(e){return typeof e==`number`&&Number.isInteger(e)&&e>=0}function eh(e){return typeof e==`number`&&Number.isInteger(e)&&e>=2}function th(e,t){if(e.readyState===3)return;let r=!1,i=new Promise(t=>{let n=!1,i=()=>{n||(n=!0,clearTimeout(a),t())},a=setTimeout(()=>{r=!0,i()},250);a.unref?.(),e.once(`close`,i)}),a=Rr(`workflow.stream.ws.close.cleanup`,async e=>{await i,e?.setAttribute(`workflow.stream.ws.close_cleanup_timeout`,r)});import(`../../_chunks/workflow/functions-CKkqf9V6.js`).then(e=>n(e.default,1)).then(({waitUntil:e})=>e(a)).catch(()=>{}),a.catch(()=>{}),e.close(1e3,t)}function nh(){return performance.now()}function rh(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 ih(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 ah(e,t,n,r){let i=nh();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 oh(e,t,n){if(n?.sentAt===void 0||n.replyReceivedAt===void 0)return;let r=nh();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 sh(e){return e.get(`authorization`)}var ch=class extends Error{constructor(e){super(e instanceof Error?e.message:String(e),{cause:e}),this.name=`StreamWsRequestNotSentError`}},lh=class extends Error{retryAfter;constructor(e,t){super(e),this.retryAfter=t,this.name=`StreamWsThrottledError`}},uh=class extends Error{constructor(e){super(e),this.name=`StreamWsCloseRetriableError`}};function dh(e){return e instanceof Uint8Array?e:typeof e==`string`?new TextEncoder().encode(e):new Uint8Array(e)}var fh=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;throttledSocket;terminated=new AbortController;wsUrl;closeAcknowledged=!1;idleReconnects=0;drainReason;drainTimer;releaseDrainWait;lastAuthorization=null;sessionCreatedAt=nh();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:nh(),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.writeHttpOrFail(t);return}let r=Wm(),i=wm(t);for(let a=0;a<t.length;){let o=Bm(i,a,r),s=i.slice(a,o),c;try{c=await this.requestRetryingThrottle(`write`,t=>zm({type:`write`,reqId:t,chunkSeq:e+a,numChunks:s.length},s),a===0?n:void 0,{chunkSeq:e+a,numChunks:s.length},r)}catch(e){if(!(e instanceof ch))throw e;this.fallbackToHttpBeforeSend(),await this.writeHttpOrFail(t.slice(a));return}if(c.type!==`write_ack`)throw this.poison(Error(`stream WebSocket write received ${c.type}`));a=o}}async writeHttpOrFail(e){try{await this.writeHttp(e)}catch(e){throw this.failUnknown(e),this.poisonError}}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`)}release(){return this.enqueue(async()=>{this.mode!==`closed`&&this.mode!==`poisoned`&&this.fallbackToHttpBeforeSend(`stream writer released`)})}dispose(){if(this.mode===`closed`)return;this.mode=`closed`,this.terminated.abort(),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}await this.closeOverWs()})}async closeOverWs(){let e;try{e=await this.requestRetryingThrottle(`close`,e=>Vm({type:`close`,reqId:e}))}catch(e){if(!(e instanceof ch||e instanceof uh))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&&th(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=nh(),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(!Od()){this.mode=`http`;return}e&&await(0,dt.getVercelOidcToken)({expirationBufferMs:864e5}).catch(()=>void 0);let n=U(this.config).then(e=>(t.configFinishedAt=nh(),e)),[{WebSocket:r},i]=await Promise.all([import(`../../_chunks/workflow/wrapper-Dq4OeGmJ.js`).then(e=>(e.n(),e.r)),n]);if(this.mode!==`connecting`)return;if(e&&sh(i.headers)===this.lastAuthorization){this.mode=`http`;return}if(this.lastAuthorization=sh(i.headers),i.usingProxy){this.mode=`http`;return}if(this.mode!==`connecting`)return;let a=Rm(i.baseUrl,this.runId,this.name,this.writerId);this.wsUrl=a.toString(),await Li({method:`GET`,url:this.wsUrl,spanName:`workflow.stream.ws.connect`,attributes:{"workflow.stream.transport":`ws`}},async()=>{if(await Br(i.headers),this.mode!==`connecting`)return;t.socketStartedAt=nh();let e=new r(a,{headers:ji(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=nh(),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`,t=>{if(!r){i();return}this.inbound.then(()=>{if(e===this.socket){if(this.isIdleThrottledSocket(e)){this.leaveThrottledSocketForHttp();return}this.failUnknown(t)}})}),e.once(`close`,t=>{if(!r){i();return}this.inbound.then(()=>this.handleSocketClose(Number(t),e))}),e.on(`message`,e=>{let t=nh();this.inbound=this.inbound.then(()=>this.handleMessage(dh(e),t))})})})}async handleMessage(e,t){try{let n=Cf(e),r=Hm(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.requestError(i,r)):(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(t&&this.isIdleThrottledSocket(t)&&this.mode===`ws`){this.leaveThrottledSocketForHttp();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,r,i=Wm()){this.assertUsable();let a=this.socket;if(this.mode!==`ws`||!a||a.readyState!==1)throw new ch(Error(`stream WebSocket is not open before send`));let o=this.nextReqId++,s;try{s=t(o)}catch(e){throw new ch(e)}if(s.byteLength>i)throw new ch(Error(`stream WebSocket message is ${s.byteLength} bytes; maximum is ${i}`));let c=this.connectionTiming,l=c?.firstWriteSent===!1,u=n&&(n.sessionFirstWrite||l)?n:void 0;return Li({method:`POST`,url:this.wsUrl??`ws://unknown`,spanName:`workflow.stream.write`,attributes:{"workflow.stream.transport":`ws`,"workflow.stream.ws.req_id":o,...r?{"workflow.stream.ws.chunk_seq":r.chunkSeq,"workflow.stream.ws.num_chunks":r.numChunks}:{},...rh(u,c,this.sessionCreatedAt)}},async t=>{u&&ih(t,u,c);let n,r=new Promise((r,i)=>{let l=setTimeout(()=>{this.failUnknown(Error(`stream WebSocket request ${o} timed out with no reply`))},Ci());l.unref?.(),n={reqId:o,operation:e,resolve:r,reject:i,timer:l},this.pending=n;try{u&&ah(t,u,c,n),a.send(s,e=>{e&&this.failUnknown(e)})}catch(e){this.failUnknown(e)}});try{return await r}finally{u&&oh(t,u,n)}})}finishDrainWait(){this.drainTimer&&=(clearTimeout(this.drainTimer),void 0);let e=this.releaseDrainWait;this.releaseDrainWait=void 0,e?.()}fallbackToHttpBeforeSend(e=`HTTP fallback before send`){this.mode=`http`,this.drainReason=void 0;let t=this.socket;this.socket=void 0,this.transportDecision=Promise.resolve(),this.finishDrainWait(),t&&th(t,e)}requestError(e,t){let n=`(${t.status}): ${t.message??`unknown error`}`;if(t.status===429)return this.throttledSocket=this.socket,new lh(`stream WebSocket ${e.operation} throttled ${n}`,Ai(t.retryAfter));if(e.operation===`close`&&t.status>=500&&t.status<=599)return this.fallbackToHttpBeforeSend(`stream close retried over HTTP`),new uh(`stream WebSocket close failed ${n}`);let r=this.poison(Error(`stream WebSocket request failed ${n}`));return this.socket?.close(1011,`stream request failed`),r}async requestRetryingThrottle(e,t,n,r,i){let a=hf(e===`write`?`writing stream chunks`:`writing stream close`,`bounded`);for(let o=0;;o++)try{return await this.request(e,t,o===0?n:void 0,r,i)}catch(e){if(!(e instanceof lh))throw e;await this.waitOutThrottle(a,e)}}async waitOutThrottle(e,t){try{await e(t,this.terminated.signal)}catch{throw this.assertUsable(),this.fallbackToHttpBeforeSend(`stream request throttled`),new ch(t)}finally{this.throttledSocket=void 0}await this.transportDecision,this.assertUsable()}isIdleThrottledSocket(e){return!this.pending&&e===this.throttledSocket&&e===this.socket}leaveThrottledSocketForHttp(){this.drainReason=void 0,this.mode=`http`,this.socket=void 0,this.finishDrainWait()}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.terminated.abort()),this.poisonError}};function ph(e,t,n,r,i,a,o=!0){return new fh(e,t,Am.parse(n),r,i,a,o)}const mh=()=>oe(`WORKFLOW_MAX_CHUNKS_PER_REQUEST`,1e3,{integer:!0,min:1});function hh(e,t,n){return new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function gh(e,t,n){return new URL(`${n.baseUrl}/v3/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function _h(e){return{...ei(e.runId),...ni(e.name),...ri(e.operation),...typeof e.startIndex==`number`?ii(e.startIndex):{}}}async function vh(e){let t=`Failed to fetch stream: ${e.status}`;if(e.status!==410)return new E(t,{status:e.status});try{let n=await e.json();return Mi(e.status,typeof n.message==`string`?n.message:t,{code:n.error,details:n.details})}catch{return new E(t,{status:e.status})}}function yh(e,t){return D.is(t)||De.is(t)||Ce.is(t)||E.is(t)||Ae.is(t)||Se.is(t)||je.is(t)||Te.is(t)?t:new E(e,{cause:t})}function bh(e,t,n,r){let i=[`PUT ${t.origin}${t.pathname}`,...Ei(n.headers)];return new E(`Stream ${e} failed: HTTP ${n.status} (${i.join(`; `)}): ${r}`,{url:t.toString(),status:n.status})}const xh=O.compile(O.object({tailIndex:O.number(),done:O.boolean()})),Sh=O.compile(O.object({data:O.array(O.object({index:O.number(),data:O.instanceof(Uint8Array)})),cursor:O.string().nullable(),hasMore:O.boolean(),done:O.boolean()}));async function Ch(e,t,n,r,i,a){let o=await U(r);o.headers.set(`X-Stream-Multi`,`true`);let s=Math.min(mh(),Cm);for(let c=0;c<n.length;c+=s){let l=hh(t,e,o);await(await zi({method:`PUT`,url:l.toString(),body:Tm(n.slice(c,c+s)),headers:o.headers,dispatcher:br(r),timeoutMs:null,logLabel:l.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,onRequestDispatched:c===0?a:void 0,attributes:{..._h({runId:e,name:t,operation:`write_multi`}),...c===0?i:void 0},buildError:async e=>bh(`write`,l,e,await e.text())})).text()}}async function wh(e,t,n){let r=await U(n);r.headers.set(`X-Stream-Done`,`true`);let i=hh(t,e,r);await(await zi({method:`PUT`,url:i.toString(),headers:r.headers,dispatcher:xr(n),timeoutMs:null,logLabel:i.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:_h({runId:e,name:t,operation:`close`}),buildError:async e=>bh(`close`,i,e,await e.text())})).text()}function Th(e){return{streams:{...Od()&&!Ki(e).usingProxy?{createWriteSession(t,n,{writerId:r}){return ph(t,n,r,e,(r,i,a)=>Ch(t,n,r,e,i,a),()=>wh(t,n,e))}}:{},async write(t,n,r){let i=await t,a=await U(e),o=hh(n,i,a);await(await zi({method:`PUT`,url:o.toString(),body:r,headers:a.headers,dispatcher:br(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:o.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:_h({runId:i,name:n,operation:`write`}),buildError:async e=>bh(`write`,o,e,await e.text())})).text()},async writeMulti(t,n,r){if(r.length===0)return;let i=await t,a=await U(e);a.headers.set(`X-Stream-Multi`,`true`);let o=mh();for(let t=0;t<r.length;t+=o){let s=Tm(r.slice(t,t+o)),c=hh(n,i,a);await(await zi({method:`PUT`,url:c.toString(),body:s,headers:a.headers,dispatcher:br(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:c.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:_h({runId:i,name:n,operation:`write_multi`}),buildError:async e=>bh(`write`,c,e,await e.text())})).text()}},async close(t,n){let r=await t,i=await U(e);i.headers.set(`X-Stream-Done`,`true`);let a=hh(n,r,i);await(await zi({method:`PUT`,url:a.toString(),headers:i.headers,dispatcher:xr(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:a.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:_h({runId:r,name:n,operation:`close`}),buildError:async e=>bh(`close`,a,e,await e.text())})).text()},async get(t,n,r){let i=await U(e);i.headers.set(`Accept`,`application/json`);let a=gh(n,t,i);typeof r==`number`&&a.searchParams.set(`startIndex`,String(r));let o=await zi({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:_h({runId:t,name:n,operation:`read`,startIndex:r}),buildError:vh});if(!o.body)throw new E(`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 W({endpoint:o,config:e,schema:Sh})}catch(e){throw yh(`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 W({endpoint:r,config:e,schema:xh})}catch(e){throw yh(`Failed to read stream info for ${n}`,e)}},async list(t){let n=await U(e),r=new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/streams`),i=await zi({method:`GET`,url:r.toString(),headers:n.headers,dispatcher:void 0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r.pathname,buildError:e=>new E(`Failed to list streams: ${e.status}`,{url:r.toString(),status:e.status})});try{return await i.json()}catch(e){throw yh(`Failed to parse stream list response`,e)}}}}}var Eh=t({WsTransportError:()=>Dh,getWsEventsTransport:()=>Nh,openWsChannel:()=>Fh,resolveWsTransport:()=>Rh,toEventsWsUrl:()=>Ph});He();var Dh=class extends Error{constructor(e,t){super(e,{cause:t?.cause}),this.name=`WsTransportError`}};function Oh(e){for(let[t,n]of Object.entries(e))if(t.toLowerCase()===`authorization`)return n;return null}function kh(e){if(e.byteLength===0)return`(no message)`;let t=new TextDecoder().decode(e);try{let e=JSON.parse(t);return typeof e.message==`string`?e.message:t}catch{return t}}function Ah(e){return e instanceof Error?e.message:String(e)}var jh=class{wsUrl;getHeaders;connection=null;connecting=null;reconnectAttempts=0;reconnectTimer=null;openCount=0;closed=!1;lastDrainReason=null;needsFreshToken=!1;lastAuthorization=null;constructor(e,t){this.wsUrl=e,this.getHeaders=t}async request(e,t={}){if(this.closed)throw new Dh(`workflow-server events WS channel for ${this.wsUrl} is closed`);let n=await this.ensureConnected(),r=n.nextReqId++,i=qm(e(r),Wm());t.onMessages?.(i.length);let a=Ci(),o;try{return{...await new Promise((e,t)=>{n.pending.set(r,{resolve:e,reject:t}),o=setTimeout(()=>{n.pending.delete(r)&&(t(new Dh(`workflow-server events WS request ${r} to ${this.wsUrl} timed out after ${a}ms with no reply`)),this.failConnection(n,`workflow-server events WS connection to ${this.wsUrl} abandoned after request ${r} timed out`))},a),o.unref?.();let s=e=>{e&&n.pending.delete(r)&&t(new Dh(`workflow-server events WS send failed: ${Ah(e)}`,{cause:e}))};for(let e of i)n.ws.send(e,s)}),requestParts:i.length}}finally{o!==void 0&&clearTimeout(o)}}open(){this.closed||(this.openCount++,this.connection===null&&this.connecting===null&&this.ensureConnected().catch(()=>{this.close(`connect failed`)}))}release(e){this.openCount!==0&&(this.openCount--,this.openCount===0&&this.close(e))}close(e){if(this.closed)return;this.closed=!0,this.openCount=0,this.reconnectTimer!==null&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),Mh.transports.get(this.wsUrl)===this&&Mh.transports.delete(this.wsUrl);let t=this.connection;this.connection=null,t?.ws.close(1e3,e)}ensureConnected(){let e=this.connection;return e&&e.ws.readyState===Ue.default.OPEN?Promise.resolve(e):(this.connecting??=this.connectWithSpan().finally(()=>{this.connecting=null}),this.connecting)}async resolveUpgradeHeaders(){let e=this.needsFreshToken,t=await this.getHeaders({forceRefresh:e}),n=Oh(t);if(e&&n===this.lastAuthorization)throw new Dh(`workflow-server events WS connection to ${this.wsUrl} drained for auth expiry, but re-resolving the bearer produced the same token. Not reconnecting with a token the server has already rejected; the next event write will retry.`);this.lastAuthorization=n,this.needsFreshToken=!1;let r=new Headers;return await Br(r),r.forEach((e,n)=>{t[n]=e}),t[`x-workflow-ws-flags`]=Um.join(`, `),t}consumeDrainReason(){let e=this.lastDrainReason;this.lastDrainReason=null,e===`auth_expiry`&&(this.needsFreshToken=!0)}connectWithSpan(){return Li({method:`GET`,url:this.wsUrl,spanName:`workflow.events.ws.connect`,attributes:{...ai(`ws`),...Jr(`websocket`),..._i(this.reconnectAttempts)}},async e=>{try{return await this.connect()}catch(t){throw e?.setAttributes({...qr(`TRANSPORT`)}),t instanceof Error&&e?.recordException?.(t),t}})}connect(){return new Promise((e,t)=>{(async()=>{let n;try{let e=await this.resolveUpgradeHeaders(),t=new Ue.default(this.wsUrl,{headers:e});t.binaryType=`nodebuffer`;let r=new Map;n={ws:t,nextReqId:1,pending:r,parts:new Qm({wanted:e=>r.has(e),onDiscarded:e=>console.error(`world-vercel: ws events transport received a split reply for unknown reqId ${e} from ${this.wsUrl} (already settled); dropping it.`)})}}catch(e){console.error(`world-vercel: ws events transport could not open a connection to ${this.wsUrl}: ${Ah(e)}`),t(e instanceof Dh?e:new Dh(`workflow-server events WS connection to ${this.wsUrl} could not be opened: ${Ah(e)}`,{cause:e}));return}let{ws:r}=n,i=!1;r.on(`open`,()=>{if(i=!0,this.closed){r.close(1e3,`released while connecting`),t(new Dh(`workflow-server events WS connection to ${this.wsUrl} was released while connecting`));return}this.connection=n,this.reconnectAttempts=0,e(n)}),r.on(`message`,e=>{this.handleMessage(n,new Uint8Array(e))}),r.on(`error`,e=>{if(console.error(`world-vercel: ws events transport socket error (${this.wsUrl}): ${Ah(e)}`),!i){t(e);return}r.close()}),r.on(`close`,e=>{this.connection===n&&(this.connection=null),this.consumeDrainReason(),i||t(new Dh(`workflow-server events WS connection to ${this.wsUrl} closed before opening (code ${e})`)),this.failAllPending(n,new Dh(`workflow-server events WS connection closed (code ${e})`)),(i||this.reconnectAttempts>0)&&this.scheduleReconnect(e)})})()})}scheduleReconnect(e){if(this.closed||this.connection!==null||this.reconnectTimer!==null)return;if(this.reconnectAttempts>=5){console.error(`world-vercel: ws events transport giving up eager reconnect to ${this.wsUrl} after 5 attempts (last close code ${e}); the next event write will retry.`);return}let t=Math.min(100*2**this.reconnectAttempts,5e3);this.reconnectAttempts++;let n=setTimeout(()=>{this.reconnectTimer=null,this.ensureConnected().catch(()=>{})},t);n.unref?.(),this.reconnectTimer=n}handleMessage(e,t){let n;try{n=Cf(t)}catch(n){let r=`could not decode a ${t.byteLength}-byte reply frame from ${this.wsUrl}: ${Ah(n)}`;console.error(`world-vercel: ws events transport ${r}`),this.failConnection(e,`workflow-server events WS transport ${r}`);return}let r=this.assemble(e,n);if(r===void 0)return;let{frame:i,parts:a}=r;if(i.meta.type===`drain`){let e=i.meta.reason===`auth_expiry`?`auth_expiry`:`max_duration`;this.lastDrainReason=e,o(`world-vercel: ws events transport received a drain notice (reason: ${e}, graceMs: ${i.meta.graceMs??`unspecified`}); connection will close soon.`);return}let s=i.meta.reqId;if(s===-1){let t=`received a malformed-frame error from ${this.wsUrl} (reserved reqId -1, status ${String(i.meta.status??`unknown`)}): ${kh(i.body)}. The server could not parse a frame this client sent, so the originating write cannot be identified`;console.error(`world-vercel: ws events transport ${t}.`),this.failConnection(e,`workflow-server events WS transport ${t}`);return}if(typeof s!=`number`){let t=`received a reply frame with no numeric reqId from ${this.wsUrl} (type: ${String(i.meta.type??`absent`)})`;console.error(`world-vercel: ws events transport ${t}.`),this.failConnection(e,`workflow-server events WS transport ${t}`);return}let c=e.pending.get(s);if(!c){console.error(`world-vercel: ws events transport received a reply for unknown reqId ${s} from ${this.wsUrl} (already settled, or the request was failed by a send error or its deadline); dropping it.`);return}e.pending.delete(s),c.resolve({meta:i.meta,body:i.body,replyParts:a})}assemble(e,t){let n;try{n=e.parts.accept(t)}catch(t){let n=t instanceof Xm?`received a split reply from ${this.wsUrl} that breaks the part protocol: ${t.message}`:`could not assemble a split reply from ${this.wsUrl}: ${Ah(t)}`;console.error(`world-vercel: ws events transport ${n}`),this.failConnection(e,`workflow-server events WS transport ${n}`);return}if(n===void 0)return;let{type:r,partCount:i}=t.meta;return{frame:n,parts:r===`part`&&typeof i==`number`?i:1}}failAllPending(e,t){for(let n of e.pending.values())n.reject(t);e.pending.clear()}failConnection(e,t){this.failAllPending(e,new Dh(t)),this.connection===e&&(this.connection=null),e.ws.close()}};const Mh=T(`@workflow/world-vercel//wsEventsTransports@${Un}`,1,()=>({transports:new Map,loggedWsProxyFallback:!1,loggedWsInUse:!1}));function Nh(e,t){let n=Mh.transports.get(e);return n||(n=new jh(e,t),Mh.transports.set(e,n)),n}function Ph(e,t){let n=new URL(e);return n.protocol=n.protocol===`https:`?`wss:`:`ws:`,n.pathname=`${n.pathname.replace(/\/$/,``)}/websockets/v1/runs/${encodeURIComponent(t)}`,n.toString()}function Fh(e,t,n={}){if(!Td(n.workflowName))return;let r=Lh(e,t);if(!r)return;Mh.loggedWsInUse||(Mh.loggedWsInUse=!0,o(`world-vercel: using ws events transport (${r}).`));let i=Nh(r,async({forceRefresh:e})=>{e&&await Ih();let{headers:n}=await U(t);return ji(n)});i.open();let a=!1;return()=>{a||(a=!0,i.release(`invocation complete`))}}async function Ih(){try{await(0,dt.getVercelOidcToken)({expirationBufferMs:864e5})}catch{}}function Lh(e,t){let{baseUrl:n,usingProxy:r}=Ki(t);return r?(Mh.loggedWsProxyFallback||(Mh.loggedWsProxyFallback=!0,o(`world-vercel: ws events transport unavailable for a World with projectConfig (api-workflow proxy, resolved baseUrl: ${n}) — falling back to HTTP.`)),null):Ph(n,e)}function Rh(e,t){let n=Lh(e,t);if(!n)return null;let r=Mh.transports.get(n);return r?{transport:r,wsUrl:n}:null}function zh(e){let t=e?.projectConfig?.projectId||process.env.VERCEL_PROJECT_ID,n=pe();return e={...e,mintedSpecVersion:n},{specVersion:n,capabilities:{hookRetention:{active:!0},maxConcurrency:!0,deploymentAffinity:!0,hookForceClaim:!0,dynamicWorkflowCode:!0},validateRunExecutionContext:Ma,getRuntimeDeadline:Na,...Zd(e),...Sm(e),analytics:process.env.WORKFLOW_DISABLE_ANALYTICS_READS===`1`?void 0:_a(e),...Ha(`world.streams`,Th(e)),createRunId:Sa,describeRun:wa,getEnvironment:()=>qi(e),uploadDynamicWorkflowCode:(t,n)=>Ea(t,n,e),getEncryptionKeyForRun:Aa(t,e?.projectConfig?.teamId,e?.token,e?.dispatcher),resolveLatestDeploymentId:ef(e),telemetry:{recordStepExecution:Fd}}}export{ja as MAX_EXECUTION_CONTEXT_BYTES,_a as createAnalytics,Aa as createGetEncryptionKeyForRun,Zd as createQueue,Sa as createRunId,Sm as createStorage,Th as createStreamer,zh as createWorld,Oa as deriveRunKey,wa as describeRun,ka as fetchRunKey,it as n,Fh as openEventsChannel,Ca as regionForRunId,ut as t,Ea as uploadDynamicWorkflowCode,Ma as validateRunExecutionContext};