broods 0.13.0 → 0.17.3
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.
- package/README.md +8 -1
- package/dist/account.d.ts +171 -81
- package/dist/account.js +1 -1
- package/dist/chunk-3cvxks4m.js +2 -0
- package/dist/{chunk-rr4srzb6.js → chunk-qerk8v3m.js} +5 -5
- package/dist/cli/index.js +95 -87
- package/dist/index.d.ts +338 -170
- package/dist/index.js +1 -1
- package/package.json +23 -14
- package/dist/chunk-1wahfz6h.js +0 -1
- package/dist/chunk-4gvdgqrg.js +0 -2
- package/dist/chunk-pfhy5049.js +0 -2
- package/dist/chunk-vmgd45s5.js +0 -1
package/dist/cli/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{
|
|
2
|
+
import{R as X,S as Fe,T as is,f as ce,g as Ce,h as En,i as ks,j as Zr,k as lt,l as ct,m as Pa,n as te,o as Cr,p as Cf,r as Na,u as Is}from"../chunk-qerk8v3m.js";import{U as Jh}from"../chunk-3cvxks4m.js";import{mkdir as za,readFile as Of,readdir as x_,writeFile as st}from"node:fs/promises";import{createHash as ja}from"node:crypto";import{basename as __,dirname as S_,join as Pf,relative as T_,resolve as H}from"node:path";import{watch as I_}from"node:fs";import{spawn as Nf}from"node:child_process";import{tmpdir as E_}from"node:os";import{performance as If}from"node:perf_hooks";import{fileURLToPath as Kf,pathToFileURL as Hf}from"node:url";import{createHash as Yf}from"node:crypto";import{readFileSync as Xf}from"node:fs";import{mkdtemp as Qf,readdir as ls,readFile as cs,rm as em,writeFile as Qa}from"node:fs/promises";import es from"node:module";import{tmpdir as tm}from"node:os";import{basename as us,isAbsolute as rm,join as kt,relative as $t,resolve as Pr}from"node:path";import{build as nm,transformSync as ds}from"esbuild";var Ha={anthropic:{label:"Anthropic",modelPlaceholder:"claude-sonnet-4-5-20250929"},azure:{label:"Azure OpenAI",modelPlaceholder:"gpt-4.1-mini"},baseten:{label:"Baseten",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},bedrock:{label:"Amazon Bedrock",modelPlaceholder:"anthropic.claude-sonnet-4-5-20250929-v1:0"},cerebras:{label:"Cerebras",modelPlaceholder:"llama3.1-8b"},cohere:{label:"Cohere",modelPlaceholder:"command-a-03-2025"},custom:{label:"Custom OpenAI-compatible",modelPlaceholder:"gpt-oss-120b"},deepinfra:{label:"DeepInfra",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},deepseek:{label:"DeepSeek",modelPlaceholder:"deepseek-chat"},fireworks:{label:"Fireworks",modelPlaceholder:"accounts/fireworks/models/deepseek-v3"},google:{label:"Google",modelPlaceholder:"gemini-2.5-flash"},groq:{label:"Groq",modelPlaceholder:"llama-3.3-70b-versatile"},minimax:{label:"MiniMax",modelPlaceholder:"MiniMax-M2.7"},mistral:{label:"Mistral",modelPlaceholder:"mistral-large-latest"},openai:{label:"OpenAI",modelPlaceholder:"gpt-4.1-mini"},perplexity:{label:"Perplexity",modelPlaceholder:"sonar-pro"},togetherai:{label:"Together.ai",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},v0:{label:"Vercel v0",modelPlaceholder:"v0-1.0-md"},vercel:{label:"Vercel AI Gateway",modelPlaceholder:"openai/gpt-4.1-mini"},vertex:{label:"Google Vertex AI",modelPlaceholder:"gemini-2.5-flash"},xai:{label:"xAI Grok",modelPlaceholder:"grok-4"}},Ya=Object.keys(Ha);function Xa(e){return Object.hasOwn(Ha,e)}var ts="*",om=`const passthrough = (input) => input;
|
|
3
3
|
export const defineTool = passthrough;
|
|
4
4
|
export const defineAgent = passthrough;
|
|
5
5
|
export const defineHarness = passthrough;
|
|
@@ -11,16 +11,16 @@ export const defineCron = passthrough;
|
|
|
11
11
|
export const defineBroods = passthrough;
|
|
12
12
|
export const env = (name) => ({ __beeblastEnv: true, name });
|
|
13
13
|
export default {};
|
|
14
|
-
`,Ze=1e7,qa=20000000,Wa=200,zf=new Set(["node_modules",".git"]),jf=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],ko={onStart:"agent.started",onStepFinish:"agent.step.finished",onToolCall:"tool.call.started",onToolResult:"tool.result",onFinish:"agent.finished",onApproval:"agent.approval.required",onError:"agent.failed",onSubagentFinish:"subagent.task.finished",onMessageReceived:"channel.message.received",onMessageSending:"channel.message.sending"};async function Le(e={}){let t=e.cwd??process.cwd();te(t);let r=Cr(t,ce),o=await Uf(r),n=await Zf(o),a=await Lf(n,t,e.project),s=n.filter((f)=>X(f.value)).map((f)=>({exportName:f.exportName,file:f.file,resource:f.value})),i=s.map((f)=>f.resource);em(i),Qf(i);let u=rm(s,n);for(let f of i)Bf(f);for(let f of i)qf(f);for(let f of i)Wf(f);Vf(i),Gf(i);let c=tm(s),d=Df(a,e.stage??(e.useRuntimeStage===!1?void 0:nt()),e.command??"dev"),p=(await Promise.all(s.map((f)=>om(f,r)))).flat().sort((f,h)=>`${f.kind}:${f.name}`.localeCompare(`${h.kind}:${h.name}`));return{config:a,resources:i,resourceAliases:c,channels:u,manifest:{version:1,project:a.project,stage:d,resources:p}}}function Qa(e){let t=new Set;for(let r of e.resources)Or(r.config,t);return[...t].sort()}function Or(e,t){if(Array.isArray(e)){for(let r of e)Or(r,t);return}if(e&&typeof e==="object"){let r=e;if(r.__beeblastEnv===!0&&typeof r.name==="string"){t.add(r.name);return}for(let o of Object.values(r))Or(o,t)}}function Df(e,t,r){if(t)return t;let o=e.stages?.[r];if(o)return o;return r==="deploy"?"production":"development"}async function Uf(e){let t=[];async function r(o){let n=await Ha(o,{withFileTypes:!0});for(let a of n){let s=St(o,a.name);if(a.isDirectory()){if(a.name===Ce||a.name==="generated")continue;await r(s)}else if(a.isFile()&&a.name.endsWith(".ts"))t.push(s)}}return await r(e),t.sort((o,n)=>It(e,o).localeCompare(It(e,n)))}async function Zf(e){let t=[];for(let r of e){let n=await import(`${kf(r).href}?t=${Date.now()}`);t.push(...Object.entries(n).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}async function Lf(e,t,r){let n=e.find((s)=>Ga(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??n.project??$m(Xa(Cr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...n,project:a}}var Va=new Set(["agent","harness","model","provider","session","hooks","channels","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policy","publicAccess"]),Ff={workspace:"workspaces",skill:"skills",policies:"policy",tool:"tools",channel:"channels",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function Bf(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(Va.has(r))continue;let o=Ff[r],n=o?` Did you mean "${o}"?`:` Allowed keys: ${[...Va].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${n}`)}}function qf(e){if(e.kind!=="workspace")return;let r=e.config.storage;if(r===void 0)return;if(!r||typeof r!=="object"||Array.isArray(r))throw Error(`Workspace "${e.name}" config.storage must be an object`);let o=r.provider;if(o===void 0||o==="s3")return;if(o==="vercel")throw Error(`Workspace "${e.name}" uses storage.provider "vercel", but Vercel Drive workspace storage is not supported yet. Use storage.provider "s3" or omit storage until Vercel Drive is wired.`);throw Error(`Workspace "${e.name}" config.storage.provider must be one of: s3`)}function Wf(e){if(e.kind!=="workspace")return;let t=e.config;if(typeof t.isolation==="string")throw Error(`Workspace "${e.name}" config.isolation no longer supports string modes; use isolation: true or omit it.`);if(t.isolation!==void 0&&typeof t.isolation!=="boolean")throw Error(`Workspace "${e.name}" config.isolation must be a boolean`)}function Vf(e){let t=new Map(e.filter((r)=>r.kind==="workspace").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let o=r.config,n=o.channels;if(n!==void 0&&!Array.isArray(n))throw Error(`Agent "${r.name}" config.channels must be an array of channel definitions`);let a=Array.isArray(n)?n.filter(Kt):[],s=new Set;for(let d of a){let p=d.config,f=typeof p.id==="string"?p.id:void 0;if(f){if(s.has(f))throw Error(`Duplicate channel id: ${f}`);s.add(f)}if(d.workspaceScope)Jf(d.workspaceScope,`Agent "${r.name}" channel "${d.type}"`);if(d.config&&typeof d.config==="object"&&"workspaceIsolationScope"in d.config)throw Error(`Agent "${r.name}" channel "${d.type}" uses workspaceIsolationScope, which is no longer supported; use workspaceScope.`)}let u=(Array.isArray(o.workspaces)?o.workspaces.map((d)=>Kf(d,t)).filter((d)=>Boolean(d)):[]).filter((d)=>d.config.isolation===!0),c=a.filter((d)=>d.workspaceScope);if(c.length>0&&u.length===0){let d=c[0];throw Error(`Agent "${r.name}" channel "${d.type}" defines workspaceScope, but no attached workspace has isolation: true.`)}if(u.length>0){for(let d of a)if(!d.workspaceScope)throw Error(`Agent "${r.name}" attaches isolated workspace "${u[0].name}", but channel "${d.type}" does not define workspaceScope.`)}}}function Jf(e,t){if(!e)return;if(e.level==="channel"){if("alias"in e&&e.alias!==void 0)throw Error(`${t} workspaceScope.alias is only supported when workspaceScope.level is conversation`);return}if(e.level!=="conversation")throw Error(`${t} workspaceScope.level must be one of: channel, conversation`);if(!("alias"in e)||typeof e.alias!=="string"||e.alias.length===0)throw Error(`${t} workspaceScope.alias must be a non-empty string when workspaceScope.level is conversation`);if(!/^[A-Za-z0-9._-]+$/.test(e.alias))throw Error(`${t} workspaceScope.alias must use only letters, numbers, dots, underscores, or hyphens`)}function Kf(e,t){if(X(e)&&e.kind==="workspace")return e;if(typeof e==="string")return t.get(e);if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace;if(X(r)&&r.kind==="workspace")return r;if(typeof r==="string")return t.get(r)}return}function Gf(e){let t=new Map(e.filter((r)=>r.kind==="sandbox").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let o=r.config,n=es(o.sandbox,t),a=o.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=Yf(s),u=Hf(s,n,t);if(!u||Xf(u))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${u.name}" (${ts(u)}) which does not support S3 workspace mounts. Use lambda/sandbox, or daytona with options.mountAwsS3Buckets: true, or set this workspace ref to sandbox: null for read-only S3 access.`)}}}function es(e,t){if(X(e)&&e.kind==="sandbox")return e;if(typeof e==="string")return t.get(e);return}function Hf(e,t,r){if(e&&typeof e==="object"&&"sandbox"in e){let o=e.sandbox;if(o===null)return;return es(o,r)}return t}function Yf(e){if(X(e)&&e.kind==="workspace")return e.name;if(e&&typeof e==="object"&&"workspace"in e){let t=e.workspace;if(X(t))return t.name;if(typeof t==="string")return t}return"<unknown>"}function Xf(e){let t=ts(e);if(t==="lambda"||t==="sandbox")return!0;if(t!=="daytona")return!1;let r=e.config.options;return Boolean(r&&typeof r==="object"&&!Array.isArray(r)&&r.mountAwsS3Buckets===!0)}function ts(e){return typeof e.config.provider==="string"?e.config.provider:"sandbox"}function Qf(e){let t=new Set(e.filter((r)=>r.kind==="sandbox").map((r)=>r.name));for(let r of e){if(r.kind!=="agent")continue;let o=r.config.harness?.sandbox;if(X(o)&&o.kind==="sandbox"&&!t.has(o.name))throw Error(`Agent "${r.name}" harness references sandbox "${o.name}", but that sandbox is not exported from broods/`)}}function em(e){let t=new Set;for(let r of e){let o=`${r.kind}:${r.name}`;if(t.has(o))throw Error(`Duplicate resource: ${o}`);t.add(o)}}function tm(e){let t={},r=new Set;for(let{exportName:o,resource:n}of e){if(o==="default"||!$o(o))continue;let a=`${n.kind}:${o}`;if(r.has(a))throw Error(`Duplicate export alias for ${n.kind}: ${o}`);r.add(a),t[n.kind]??={},t[n.kind][n.name]=o}return t}function rm(e,t){let r=new Map;for(let s of t){if(!Kt(s.value)||s.exportName==="default"||!$o(s.exportName))continue;let i=r.get(s.value);if(i&&i!==s.exportName)throw Error(`Channel is exported more than once: ${i}, ${s.exportName}`);r.set(s.value,s.exportName)}let o=new Map,n=new Set,a=[];for(let{exportName:s,resource:i}of e){if(i.kind!=="agent")continue;let u=i.config.channels;if(u===void 0)continue;if(!Array.isArray(u))throw Error(`Agent "${i.name}" config.channels must be an array of channel definitions`);let c=new Set;for(let d of u){if(!Kt(d))throw Error(`Agent "${i.name}" config.channels must contain channel definitions`);let p=o.get(d);if(p&&p!==i.name)throw Error(`Channel ${d.type} is already attached to agent "${p}" and cannot also attach to "${i.name}"`);if(c.has(d.type))throw Error(`Agent "${i.name}" cannot configure more than one ${d.type} channel`);o.set(d,i.name),c.add(d.type);let f=s!=="default"&&$o(s)?s:i.name,h=r.get(d)??`${f}${rs(d.type)}Channel`;if(n.has(h))throw Error(`Duplicate channel export alias: ${h}`);n.add(h),a.push({alias:h,type:d.type,id:h,agentName:i.name})}}for(let[s,i]of r)if(!o.has(s))throw Error(`Channel "${i}" must be attached to exactly one agent`);return a.sort((s,i)=>s.alias.localeCompare(i.alias))}function rs(e){return e.charAt(0).toUpperCase()+e.slice(1)}function $o(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)}async function om(e,t){let r=e.resource;if(r.kind==="agent"){let o=pm(r,t);return[...o.hookResource?[o.hookResource]:[],{kind:r.kind,name:r.name,...r.description?{description:r.description}:{},config:o.config}]}return[{kind:r.kind,name:r.name,...r.description?{description:r.description}:{},config:await nm(e,t)}]}async function nm(e,t){let r=e.resource;if(r.kind==="skill")return await vm(r.config,t);if(r.kind==="tool")return await ym(e,r.config,t);if(r.kind==="policy"){let o={...r.config};return o.version=o.version??1,Tt(o)}if(r.kind==="cron"){let o={...r.config},n=o.agent;if(o.agentId=X(n)?n.name:n,o.name=o.name??r.name,delete o.agent,typeof o.input==="string")o.events=[{role:"user",content:[{type:"text",text:o.input}]}],delete o.input;return Tt(o)}return Tt(r.config)}var Ja=["google","openai","anthropic","bedrock","vercel","minimax","custom"],am=new Set(["apiKey","base_url","baseURL","headers","organization","project","name","region","accessKeyId","secretAccessKey","sessionToken"]),sm=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),im=new Set(["enabled","level","subsystems"]);function lm(e){let t=e.replace(/[^a-z0-9]/gi,"").toLowerCase();if(t==="baseurl")return'"base_url" or "baseURL"';if(t==="apikey")return'"apiKey"';return""}function cm(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.provider must be an object`);for(let[r,o]of Object.entries(t)){if(!Ja.includes(r))throw Error(`Agent "${e}" config.provider.${r} is not a supported provider (expected one of: ${Ja.join(", ")})`);if(typeof o!=="object"||o===null||Array.isArray(o))throw Error(`Agent "${e}" config.provider.${r} must be an object`);let n=o;for(let a of Object.keys(n)){if(am.has(a))continue;let s=lm(a);throw Error(`Agent "${e}" config.provider.${r} has unknown option "${a}"${s?` — did you mean ${s}?`:""}`)}if(r==="custom"&&n.base_url===void 0&&n.baseURL===void 0)throw Error(`Agent "${e}" config.provider.custom.base_url is required (use "base_url" or "baseURL")`)}}function um(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.harness must be an object`);let r=t;for(let o of Object.keys(r))if(!sm.has(o))throw Error(`Agent "${e}" config.harness has unknown option "${o}"`);if(r.type!=="claude-code"&&r.type!=="codex"&&r.type!=="deepagents"&&r.type!=="opencode"&&r.type!=="pi")throw Error(`Agent "${e}" config.harness.type must be claude-code, codex, deepagents, opencode, or pi`);if(r.sandbox===void 0)throw Error(`Agent "${e}" config.harness.sandbox is required for ${r.type}`);if(r.sandbox!==void 0&&!(typeof r.sandbox==="string"||X(r.sandbox)&&r.sandbox.kind==="sandbox"))throw Error(`Agent "${e}" config.harness.sandbox must be a defineSandbox resource or sandbox name`);if(r.permissionMode!==void 0&&r.permissionMode!=="allow-reads"&&r.permissionMode!=="allow-edits"&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-reads, allow-edits, or allow-all`);if(r.type==="codex"&&r.permissionMode!==void 0&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-all for codex`);if(r.startupTimeoutMs!==void 0&&(typeof r.startupTimeoutMs!=="number"||!Number.isSafeInteger(r.startupTimeoutMs)||r.startupTimeoutMs<1||r.startupTimeoutMs>600000))throw Error(`Agent "${e}" config.harness.startupTimeoutMs must be an integer from 1 to 600000`);if(r.webSearch!==void 0&&typeof r.webSearch!=="boolean")throw Error(`Agent "${e}" config.harness.webSearch must be a boolean`);if(r.type!=="codex"&&r.webSearch!==void 0)throw Error(`Agent "${e}" config.harness.webSearch is only supported by codex`);if(r.type==="pi"&&r.startupTimeoutMs!==void 0)throw Error(`Agent "${e}" config.harness.startupTimeoutMs is not supported by pi`);if(Mo(e,r.activeTools,"activeTools"),Mo(e,r.inactiveTools,"inactiveTools"),r.activeTools!==void 0&&r.inactiveTools!==void 0)throw Error(`Agent "${e}" config.harness must use either activeTools or inactiveTools, not both`);dm(e,r.debug)}function dm(e,t){if(t===void 0)return;if(typeof t!=="object"||t===null||Array.isArray(t))throw Error(`Agent "${e}" config.harness.debug must be an object`);let r=t;for(let o of Object.keys(r))if(!im.has(o))throw Error(`Agent "${e}" config.harness.debug has unknown option "${o}"`);if(r.enabled!==void 0&&typeof r.enabled!=="boolean")throw Error(`Agent "${e}" config.harness.debug.enabled must be a boolean`);if(r.level!==void 0&&r.level!=="error"&&r.level!=="warn"&&r.level!=="info"&&r.level!=="debug"&&r.level!=="trace")throw Error(`Agent "${e}" config.harness.debug.level must be error, warn, info, debug, or trace`);Mo(e,r.subsystems,"debug.subsystems")}function Mo(e,t,r){if(t!==void 0&&(!Array.isArray(t)||!t.every((o)=>typeof o==="string"&&o.trim().length>0)))throw Error(`Agent "${e}" config.harness.${r} must be an array of non-empty strings`)}function pm(e,t){let r={...e.config};if(cm(e.name,r.provider),um(e.name,r.harness),r.harness&&typeof r.harness==="object"&&!Array.isArray(r.harness)){let n={...r.harness};if(r.sandbox!==void 0)throw Error(`Agent "${e.name}" must configure the AI SDK harness sandbox on defineHarness, not defineAgent`);r.sandbox=X(n.sandbox)?n.sandbox.name:n.sandbox,delete n.sandbox,r.harness=n}let o=fm(e.name,r.hooks);if(o)r.hooks=o.agentHooksConfig;else if(r.hooks!==void 0)r.hooks=os(r.hooks,e.name);if(r.channels!==void 0){if(!Array.isArray(r.channels))throw Error(`Agent "${e.name}" config.channels must be an array of channel definitions`);r.channels=Object.fromEntries(r.channels.map((n)=>{if(!Kt(n))throw Error(`Agent "${e.name}" config.channels must contain channel definitions`);let a=`${e.name}${rs(n.type)}Channel`;return[n.type,{id:a,...n.config}]}))}if(X(r.sandbox))r.sandbox=r.sandbox.name;if(Array.isArray(r.workspaces))r.workspaces=r.workspaces.map((n)=>wm(n,e.name));if(r.policy!==void 0){let n=gm(r.policy,e.name);if(n)r.policy=n;else delete r.policy}return{config:Tt(r),...o?.hookResource?{hookResource:o.hookResource}:{}}}function fm(e,t){if(t===void 0)return;if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.hooks must be an object`);let r=t,o=Object.keys(ko).flatMap((c)=>{let d=r[c];if(d===void 0)return[];if(typeof d!=="function")throw Error(`Agent "${e}" config.hooks.${c} must be a function`);return[{name:c,event:ko[c],source:mm(d.toString())}]});if(o.length===0)return;let n=`${e}-hooks`,a=hm(e,o),s=Buffer.byteLength(a);if(s>Ze)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${Ze})`);let i=o.map((c)=>c.event),u=os(r,e);return u.code=[{hookId:n}],{agentHooksConfig:u,hookResource:{kind:"hook",name:n,description:`Inline hooks for agent ${e}`,config:{events:i,bundle:a,sha256:Ro(a)}}}}function os(e,t){if(!e||typeof e!=="object"||Array.isArray(e))throw Error(`Agent "${t}" config.hooks must be an object`);let r=Object.entries(e);for(let[n]of r){if(n==="webhooks"||n in ko)continue;throw Error(`Agent "${t}" config.hooks.${n} is not supported. Use inline hook callbacks or hooks.webhooks.`)}return Object.fromEntries(r.filter(([n])=>n==="webhooks"))}function mm(e){let t=e.trim();if(/^(async\s+)?function\b/.test(t)||/^(async\s*)?\(/.test(t)||/^(async\s+)?[A-Za-z_$][\w$]*\s*=>/.test(t))return t;if(/^(async\s+)?[A-Za-z_$][\w$]*\s*\(/.test(t))return t.replace(/^(async\s+)?/,"$1function ");return t}function hm(e,t){let r=`export default {
|
|
15
|
-
${t.map((
|
|
14
|
+
`,Ze=1e7,rs=20000000,ns=200,am=new Set(["node_modules",".git"]),sm=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],Rn={onStart:"agent.started",onStepFinish:"agent.step.finished",onToolCall:"tool.call.started",onToolResult:"tool.result",onFinish:"agent.finished",onApproval:"agent.approval.required",onError:"agent.failed",onSubagentFinish:"subagent.task.finished",onMessageReceived:"channel.message.received",onMessageSending:"channel.message.sending"};async function Be(e={}){let t=e.cwd??process.cwd();te(t);let r=Pr(t,ce),n=await lm(r),o=await cm(n),a=await dm(o,t,e.project),s=o.filter((m)=>X(m.value)).map((m)=>({exportName:m.exportName,file:m.file,resource:m.value})),i=s.map((m)=>m.resource);Sm(i),_m(i);let c=Im(s,o),u=km(i);for(let m of i)fm(m);for(let m of i)mm(m);for(let m of i)hm(m);gm(i),ym(i),Em(s,u);let d=Tm(s),p=im(a,e.stage??(e.useRuntimeStage===!1?void 0:lt()),e.command??"dev"),f=(await Promise.all(s.map((m)=>$m(m,r,u)))).flat().sort((m,y)=>`${m.kind}:${m.name}`.localeCompare(`${y.kind}:${y.name}`));return{config:a,resources:i,resourceAliases:d,channels:c,manifest:{version:1,project:a.project,stage:p,resources:f}}}function ps(e){let t=new Set;for(let r of e.resources)Nr(r.config,t);return[...t].sort()}function Nr(e,t){if(Array.isArray(e)){for(let r of e)Nr(r,t);return}if(e&&typeof e==="object"){let r=e;if(r.__beeblastEnv===!0&&typeof r.name==="string"){t.add(r.name);return}for(let n of Object.values(r))Nr(n,t)}}function im(e,t,r){if(t)return t;let n=e.stages?.[r];if(n)return n;return r==="deploy"?"production":"development"}async function lm(e){let t=[];async function r(n){let o=await ls(n,{withFileTypes:!0});for(let a of o){let s=kt(n,a.name);if(a.isDirectory()){if(a.name===Ce||a.name==="generated")continue;await r(s)}else if(a.isFile()&&a.name.endsWith(".ts"))t.push(s)}}return await r(e),t.sort((n,o)=>$t(e,n).localeCompare($t(e,o)))}async function cm(e){um();let t=[];for(let r of e){let o=await import(`${Hf(r).href}?t=${Date.now()}`);t.push(...Object.entries(o).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}var os=!1;function um(){if(os)return;if(os=!0,typeof es.registerHooks!=="function")return;es.registerHooks({load:(e,t,r)=>{let[n]=e.split("?");if(n===void 0||!n.startsWith("file:")||!n.endsWith(".ts"))return r(e,t);let o=Kf(n);return{format:"module",shortCircuit:!0,source:ds(Xf(o,"utf8"),{loader:"ts",format:"esm",sourcefile:o,sourcemap:"inline"}).code}}})}async function dm(e,t,r){let o=e.find((s)=>is(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??o.project??eh(us(Pr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...o,project:a}}var as=new Set(["agent","harness","model","provider","session","hooks","connections","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policies","publicAccess"]),pm={workspace:"workspaces",skill:"skills",policy:"policies",tool:"tools",channel:"connections",channels:"connections",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function fm(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(as.has(r))continue;let n=pm[r],o=n?` Did you mean "${n}"?`:` Allowed keys: ${[...as].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${o}`)}}function mm(e){if(e.kind!=="workspace")return;let r=e.config.storage;if(r===void 0)return;if(!r||typeof r!=="object"||Array.isArray(r))throw Error(`Workspace "${e.name}" config.storage must be an object`);let n=r.provider;if(n===void 0||n==="s3")return;if(n==="vercel")throw Error(`Workspace "${e.name}" uses storage.provider "vercel", but Vercel Drive workspace storage is not supported yet. Use storage.provider "s3" or omit storage until Vercel Drive is wired.`);throw Error(`Workspace "${e.name}" config.storage.provider must be one of: s3`)}function hm(e){if(e.kind!=="workspace")return;let t=e.config;if(typeof t.partitioned==="string")throw Error(`Workspace "${e.name}" config.partitioned must be a boolean; string modes are not supported.`);if(t.isolation!==void 0)throw Error(`Workspace "${e.name}" config.isolation is no longer supported; use partitioned: true.`)}function gm(e){let t=new Map(e.filter((r)=>r.kind==="workspace").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let n=r.config,o=n.connections;if(o!==void 0&&!Array.isArray(o))throw Error(`Agent "${r.name}" config.connections must be an array of connection definitions`);let a=Array.isArray(o)?o.filter(Fe):[],s=new Set;for(let d of a){let p=d.config,f=typeof p.id==="string"?p.id:void 0;if(f){if(s.has(f))throw Error(`Duplicate channel id: ${f}`);s.add(f)}if(d.partition)ms(d.partition,`Agent "${r.name}" connection "${d.type}"`);if(d.config&&typeof d.config==="object"&&(("workspaceIsolationScope"in d.config)||("workspaceScope"in d.config)))throw Error(`Agent "${r.name}" connection "${d.type}" uses workspaceScope, which is no longer supported; use partition.`)}let c=(Array.isArray(n.workspaces)?n.workspaces.map((d)=>vm(d,t)).filter((d)=>Boolean(d)):[]).filter((d)=>d.config.partitioned===!0),u=a.filter((d)=>d.partition);if(u.length>0&&c.length===0){let d=u[0];throw Error(`Agent "${r.name}" connection "${d.type}" defines partition, but no attached workspace has partitioned: true.`)}if(c.length>0){for(let d of a)if(!d.partition)throw Error(`Agent "${r.name}" attaches partitioned workspace "${c[0].name}", but connection "${d.type}" does not define partition.`)}}}function fs(e){if(!e)return;return e.by==="shared"?{level:"channel"}:{level:"conversation",alias:e.alias}}function ms(e,t){if(!e)return;if(e.by==="shared"){if("alias"in e&&e.alias!==void 0)throw Error(`${t} partition.alias is only supported when partition.by is conversation`);return}if(e.by!=="conversation")throw Error(`${t} partition.by must be one of: shared, conversation`);if(typeof e.alias!=="string"||e.alias.length===0)throw Error(`${t} partition.alias is required when partition.by is conversation`);if(!/^[A-Za-z0-9._-]+$/.test(e.alias))throw Error(`${t} partition.alias must use only letters, numbers, dots, underscores, or hyphens`);if(e.alias==="."||e.alias==="..")throw Error(`${t} partition.alias must not be "." or ".."`)}function vm(e,t){if(X(e)&&e.kind==="workspace")return e;if(typeof e==="string")return t.get(e);if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace;if(X(r)&&r.kind==="workspace")return r;if(typeof r==="string")return t.get(r)}return}function ym(e){let t=new Map(e.filter((r)=>r.kind==="sandbox").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let n=r.config,o=hs(n.sandbox,t),a=n.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=wm(s),c=bm(s,o,t);if(!c||xm(c))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${c.name}" (${gs(c)}) which does not support S3 workspace mounts. Use lambda/sandbox, or daytona with options.mountAwsS3Buckets: true, or set this workspace ref to sandbox: null for read-only S3 access.`)}}}function hs(e,t){if(X(e)&&e.kind==="sandbox")return e;if(typeof e==="string")return t.get(e);return}function bm(e,t,r){if(e&&typeof e==="object"&&"sandbox"in e){let n=e.sandbox;if(n===null)return;return hs(n,r)}return t}function wm(e){if(X(e)&&e.kind==="workspace")return e.name;if(e&&typeof e==="object"&&"workspace"in e){let t=e.workspace;if(X(t))return t.name;if(typeof t==="string")return t}return"<unknown>"}function xm(e){let t=gs(e);if(t==="lambda"||t==="sandbox")return!0;if(t!=="daytona")return!1;let r=e.config.options;return Boolean(r&&typeof r==="object"&&!Array.isArray(r)&&r.mountAwsS3Buckets===!0)}function gs(e){return typeof e.config.provider==="string"?e.config.provider:"sandbox"}function _m(e){let t=new Set(e.filter((r)=>r.kind==="sandbox").map((r)=>r.name));for(let r of e){if(r.kind!=="agent")continue;let n=r.config.harness?.sandbox;if(X(n)&&n.kind==="sandbox"&&!t.has(n.name))throw Error(`Agent "${r.name}" harness references sandbox "${n.name}", but that sandbox is not exported from broods/`)}}function Sm(e){let t=new Set;for(let r of e){let n=`${r.kind}:${r.name}`;if(t.has(n))throw Error(`Duplicate resource: ${n}`);t.add(n)}}function Tm(e){let t={},r=new Set;for(let{exportName:n,resource:o}of e){if(n==="default"||!An(n))continue;let a=`${o.kind}:${n}`;if(r.has(a))throw Error(`Duplicate export alias for ${o.kind}: ${n}`);r.add(a),t[o.kind]??={},t[o.kind][o.name]=n}return t}function Im(e,t){let r=new Map;for(let s of t){if(!Fe(s.value)||s.exportName==="default"||!An(s.exportName))continue;let i=r.get(s.value);if(i&&i!==s.exportName)throw Error(`Channel is exported more than once: ${i}, ${s.exportName}`);r.set(s.value,s.exportName)}let n=new Map,o=new Set,a=[];for(let{exportName:s,resource:i}of e){if(i.kind!=="agent")continue;let c=i.config.connections;if(c===void 0)continue;if(!Array.isArray(c))throw Error(`Agent "${i.name}" config.connections must be an array of connection definitions`);let u=new Set;for(let d of c){if(!Fe(d))throw Error(`Agent "${i.name}" config.connections must contain connection definitions`);let p=n.get(d);if(p&&p!==i.name)throw Error(`Channel ${d.type} is already attached to agent "${p}" and cannot also attach to "${i.name}"`);if(u.has(d.type))throw Error(`Agent "${i.name}" cannot configure more than one ${d.type} channel`);n.set(d,i.name),u.add(d.type);let f=s!=="default"&&An(s)?s:i.name,m=r.get(d)??`${f}${ys(d.type)}Channel`;if(o.has(m))throw Error(`Duplicate channel export alias: ${m}`);o.add(m),a.push({alias:m,type:d.type,id:m,agentName:i.name})}}for(let[s,i]of r)if(!n.has(s))throw Error(`Channel "${i}" must be attached to exactly one agent`);return a.sort((s,i)=>s.alias.localeCompare(i.alias))}function Em(e,t){for(let{resource:r}of e){if(r.kind!=="agent")continue;let n=r.config.connections;if(!Array.isArray(n))continue;for(let o of n){if(!Fe(o))continue;if(vs(o,t).length>0)continue;throw Error(`Agent "${r.name}" connection "${o.type}" reaches no rooms: declare a ${o.type} channel for it, or set allowedChannelIds: ["*"] to answer everywhere`)}}}function vs(e,t){let r=e.config.allowedChannelIds??[];if(r.includes(ts))return[ts];return[...new Set([...t.get(e)??[],...r])]}function km(e){let t=new Map;for(let r of e){if(r.kind!=="channelRecord")continue;let n=r.config;if(!Fe(n.connection))continue;if(typeof n.externalId!=="string")continue;let o=t.get(n.connection)??new Set;o.add(n.externalId),t.set(n.connection,o)}return t}function ys(e){return e.charAt(0).toUpperCase()+e.slice(1)}function An(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)}async function $m(e,t,r){let n=e.resource;if(n.kind==="agent"){let o=jm(n,t,r);return[...o.hookResource?[o.hookResource]:[],{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:o.config}]}return[{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:await Mm(e,t)}]}async function Mm(e,t){let r=e.resource;if(r.kind==="skill")return await Fm(r.config,t);if(r.kind==="workspace"){let n={...r.config};if(n.partitioned!==void 0){if(typeof n.partitioned!=="boolean")throw Error(`Workspace "${r.name}" config.partitioned must be a boolean`);let o=n.partitioned;if(delete n.partitioned,o)n.isolation=!0}return Le(n)}if(r.kind==="channelRecord")return Wm(r.name,r.config);if(r.kind==="tool")return await Bm(e,r.config,t);if(r.kind==="policy"){let n={...r.config};return n.version=n.version??1,Le(n)}if(r.kind==="cron"){let n={...r.config},o=n.agent;if(n.agentId=X(o)?o.name:o,n.name=n.name??r.name,delete n.agent,typeof n.input==="string")n.events=[{role:"user",content:[{type:"text",text:n.input}]}],delete n.input;return Le(n)}return Le(r.config)}var Rm=new Set(["apiKey","base_url","baseURL"]),Am=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),Cm=new Set(["enabled","level","subsystems"]);function Om(e){if(Rm.has(e))return"";let t=e.replace(/[^a-z0-9]/gi,"").toLowerCase();if(t==="baseurl")return'"base_url" or "baseURL"';if(t==="apikey")return'"apiKey"';return""}function Pm(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.provider must be an object`);for(let[r,n]of Object.entries(t)){if(!Xa(r))throw Error(`Agent "${e}" config.provider.${r} is not a supported provider (expected one of: ${Ya.join(", ")})`);if(typeof n!=="object"||n===null||Array.isArray(n))throw Error(`Agent "${e}" config.provider.${r} must be an object`);let o=n;for(let a of Object.keys(o)){let s=Om(a);if(s)throw Error(`Agent "${e}" config.provider.${r} has unknown option "${a}" — did you mean ${s}?`)}if(r==="custom"&&o.base_url===void 0&&o.baseURL===void 0)throw Error(`Agent "${e}" config.provider.custom.base_url is required (use "base_url" or "baseURL")`)}}function Nm(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.harness must be an object`);let r=t;for(let n of Object.keys(r))if(!Am.has(n))throw Error(`Agent "${e}" config.harness has unknown option "${n}"`);if(r.type!=="claude-code"&&r.type!=="codex"&&r.type!=="deepagents"&&r.type!=="opencode"&&r.type!=="pi")throw Error(`Agent "${e}" config.harness.type must be claude-code, codex, deepagents, opencode, or pi`);if(r.sandbox===void 0)throw Error(`Agent "${e}" config.harness.sandbox is required for ${r.type}`);if(r.sandbox!==void 0&&!(typeof r.sandbox==="string"||X(r.sandbox)&&r.sandbox.kind==="sandbox"))throw Error(`Agent "${e}" config.harness.sandbox must be a defineSandbox resource or sandbox name`);if(r.permissionMode!==void 0&&r.permissionMode!=="allow-reads"&&r.permissionMode!=="allow-edits"&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-reads, allow-edits, or allow-all`);if(r.type==="codex"&&r.permissionMode!==void 0&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-all for codex`);if(r.startupTimeoutMs!==void 0&&(typeof r.startupTimeoutMs!=="number"||!Number.isSafeInteger(r.startupTimeoutMs)||r.startupTimeoutMs<1||r.startupTimeoutMs>600000))throw Error(`Agent "${e}" config.harness.startupTimeoutMs must be an integer from 1 to 600000`);if(r.webSearch!==void 0&&typeof r.webSearch!=="boolean")throw Error(`Agent "${e}" config.harness.webSearch must be a boolean`);if(r.type!=="codex"&&r.webSearch!==void 0)throw Error(`Agent "${e}" config.harness.webSearch is only supported by codex`);if(r.type==="pi"&&r.startupTimeoutMs!==void 0)throw Error(`Agent "${e}" config.harness.startupTimeoutMs is not supported by pi`);if(Cn(e,r.activeTools,"activeTools"),Cn(e,r.inactiveTools,"inactiveTools"),r.activeTools!==void 0&&r.inactiveTools!==void 0)throw Error(`Agent "${e}" config.harness must use either activeTools or inactiveTools, not both`);zm(e,r.debug)}function zm(e,t){if(t===void 0)return;if(typeof t!=="object"||t===null||Array.isArray(t))throw Error(`Agent "${e}" config.harness.debug must be an object`);let r=t;for(let n of Object.keys(r))if(!Cm.has(n))throw Error(`Agent "${e}" config.harness.debug has unknown option "${n}"`);if(r.enabled!==void 0&&typeof r.enabled!=="boolean")throw Error(`Agent "${e}" config.harness.debug.enabled must be a boolean`);if(r.level!==void 0&&r.level!=="error"&&r.level!=="warn"&&r.level!=="info"&&r.level!=="debug"&&r.level!=="trace")throw Error(`Agent "${e}" config.harness.debug.level must be error, warn, info, debug, or trace`);Cn(e,r.subsystems,"debug.subsystems")}function Cn(e,t,r){if(t!==void 0&&(!Array.isArray(t)||!t.every((n)=>typeof n==="string"&&n.trim().length>0)))throw Error(`Agent "${e}" config.harness.${r} must be an array of non-empty strings`)}function jm(e,t,r){let n={...e.config};if(Pm(e.name,n.provider),Nm(e.name,n.harness),n.harness&&typeof n.harness==="object"&&!Array.isArray(n.harness)){let a={...n.harness};if(n.sandbox!==void 0)throw Error(`Agent "${e.name}" must configure the AI SDK harness sandbox on defineHarness, not defineAgent`);n.sandbox=X(a.sandbox)?a.sandbox.name:a.sandbox,delete a.sandbox,n.harness=a}let o=Dm(e.name,n.hooks);if(o)n.hooks=o.agentHooksConfig;else if(n.hooks!==void 0)n.hooks=bs(n.hooks,e.name);if(n.connections!==void 0){if(!Array.isArray(n.connections))throw Error(`Agent "${e.name}" config.connections must be an array of connection definitions`);n.channels=Object.fromEntries(n.connections.map((a)=>{if(!Fe(a))throw Error(`Agent "${e.name}" config.connections must contain connection definitions`);let s=`${e.name}${ys(a.type)}Channel`,i=fs(a.partition),c=vs(a,r);return[a.type,{id:s,...a.config,...i?{workspaceScope:i}:{},allowedChannelIds:c}]})),delete n.connections}if(X(n.sandbox))n.sandbox=n.sandbox.name;if(Array.isArray(n.workspaces))n.workspaces=n.workspaces.map((a)=>qm(a,e.name));if(n.policies!==void 0){let a=Lm(n.policies,e.name);if(a)n.policies=a;else delete n.policies}return{config:Le(n),...o?.hookResource?{hookResource:o.hookResource}:{}}}function Dm(e,t){if(t===void 0)return;if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.hooks must be an object`);let r=t,n=Object.keys(Rn).flatMap((u)=>{let d=r[u];if(d===void 0)return[];if(typeof d!=="function")throw Error(`Agent "${e}" config.hooks.${u} must be a function`);return[{name:u,event:Rn[u],source:Um(d.toString())}]});if(n.length===0)return;let o=`${e}-hooks`,a=Zm(e,n),s=Buffer.byteLength(a);if(s>Ze)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${Ze})`);let i=n.map((u)=>u.event),c=bs(r,e);return c.code=[{hookId:o}],{agentHooksConfig:c,hookResource:{kind:"hook",name:o,description:`Inline hooks for agent ${e}`,config:{events:i,bundle:a,sha256:On(a)}}}}function bs(e,t){if(!e||typeof e!=="object"||Array.isArray(e))throw Error(`Agent "${t}" config.hooks must be an object`);let r=Object.entries(e);for(let[o]of r){if(o==="webhooks"||o in Rn)continue;throw Error(`Agent "${t}" config.hooks.${o} is not supported. Use inline hook callbacks or hooks.webhooks.`)}return Object.fromEntries(r.filter(([o])=>o==="webhooks"))}function Um(e){let t=e.trim();if(/^(async\s+)?function\b/.test(t)||/^(async\s*)?\(/.test(t)||/^(async\s+)?[A-Za-z_$][\w$]*\s*=>/.test(t))return t;if(/^(async\s+)?[A-Za-z_$][\w$]*\s*\(/.test(t))return t.replace(/^(async\s+)?/,"$1function ");return t}function Zm(e,t){let r=`export default {
|
|
15
|
+
${t.map((n)=>` ${JSON.stringify(n.event)}: ${n.source},`).join(`
|
|
16
16
|
`)}
|
|
17
17
|
};
|
|
18
|
-
`;try{return
|
|
18
|
+
`;try{return ds(r,{loader:"ts"}).code}catch(n){let o=n instanceof Error?n.message:String(n);throw Error(`Agent "${e}" inline hooks failed to transpile: ${o}`)}}function Lm(e,t){if(!Array.isArray(e))throw Error(`Agent "${t}" config.policies must be an array`);let r=e.map((n)=>{if(X(n)&&n.kind==="policy")return n.name;if(typeof n==="string")return n;throw Error(`Agent "${t}" config.policies must contain definePolicy(...) resources or strings`)});return r.length>0?r:void 0}async function Fm(e,t){let r=ws(t,e.path,"Skill"),n=$t(t,r).split("\\").join("/"),o=await Vm(r);if(!o.some((a)=>a.path==="SKILL.md"))throw Error(`Skill folder ${e.path} must contain SKILL.md`);return{source:"files",path:n,files:o}}async function Bm(e,t,r){let n=new Set;if(Nr(t.defaultConfig,n),n.size>0)throw Error(`Tool "${e.resource.name}" defaultConfig cannot contain env("NAME") references; put environment variable values in the agent's tools.<tool>.config so they stay encrypted and stage-scoped`);let o=t.path?ws(r,t.path,"Tool"):e.file,a=$t(r,o).split("\\").join("/");Gm(a,"Tool");let s=Buffer.byteLength(await cs(o));if(s>Ze)throw Error(`Tool source ${a} is too large (${s} bytes, max ${Ze})`);let i=await Qf(kt(tm(),"broods-tool-")),c=kt(i,"tool-adapter.mjs");if(await Qa(c,Ym(o,t.path,e),"utf8"),!t.path)await Qa(kt(i,"broods-stub.mjs"),om,"utf8");let u;try{let p=await nm({entryPoints:[c],bundle:!0,platform:"node",format:"esm",minify:!1,write:!1,logLevel:"silent",plugins:t.path?[]:[Hm(i)]}).catch((f)=>{let m=Jm(f)?f.errors.map((y)=>y.text).filter(Boolean).join("; "):f instanceof Error?f.message:String(f);throw Error(`Tool bundle ${a} failed to build${m?`: ${m}`:""}`)});if(p.outputFiles.length!==1)throw Error(`Tool bundle ${a} failed to build: expected one output file`);u=p.outputFiles[0].text}finally{await em(i,{recursive:!0,force:!0})}u=Qm(u,o,a);let d=Buffer.byteLength(u);if(d>Ze)throw Error(`Tool bundle ${a} is too large (${d} bytes, max ${Ze})`);return{path:a,description:t.description,inputSchema:t.inputSchema,...t.runtime!==void 0?{runtime:t.runtime}:{},...t.defaultConfig!==void 0?{defaultConfig:t.defaultConfig}:{},bundle:u,sha256:On(u)}}function qm(e,t){if(X(e))return{name:e.name,workspaceId:e.name};if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace,n=X(r)?r.name:r;if(typeof n!=="string")throw Error(`Agent ${t} workspace ref must be a defineWorkspace(...) resource or its name`);let o={name:n,workspaceId:n};if("sandbox"in e){let a=e.sandbox;o.sandbox=a===null?null:X(a)?a.name:a}return o}throw Error(`Agent ${t} workspaces must be defineWorkspace(...) resources or { workspace, sandbox } refs`)}function ws(e,t,r){if(t.trim().length===0)throw Error(`${r} path is required`);if(t.includes("\x00"))throw Error(`${r} path must not contain null bytes`);let n=Pr(e),o=Pr(n,t),a=$t(n,o);if(a===""||!a.startsWith("..")&&!rm(a))return o;throw Error(`${r} path ${t} must stay inside ${ce}/`)}function Wm(e,t){let r={...t},n=r.connection;if(!Fe(n))throw Error(`Channel "${e}" config.connection must be a connection definition`);delete r.connection,r.platform=n.type;let o=r.partition;if(ms(o,`Channel "${e}"`),o)delete r.partition,r.workspaceScope=fs(o);return Le(r)}function Le(e){if(Array.isArray(e))return e.map((t)=>Le(t));if(X(e))return e.name;if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,Le(r)]));return e}async function Vm(e){let t=[],r=0;async function n(o){let a=await ls(o,{withFileTypes:!0});for(let s of a){let i=kt(o,s.name),c=$t(e,i).split("\\").join("/");if(s.isDirectory()){if(ss(s.name))continue;await n(i)}else if(s.isFile()){if(ss(s.name)||xs(c))continue;let u=await cs(i);if(u.byteLength>Ze)throw Error(`Skill bundle file ${c} is too large (${u.byteLength} bytes, max ${Ze})`);if(r+=u.byteLength,r>rs)throw Error(`Skill bundle at ${e} is too large (${r} bytes, max ${rs})`);if(t.length>=ns)throw Error(`Skill bundle at ${e} has too many files (max ${ns})`);t.push({path:c,size:u.byteLength,sha256:On(u),contentBase64:u.toString("base64"),contentType:Km(c)})}}}return await n(e),t.sort((o,a)=>String(o.path).localeCompare(String(a.path)))}function ss(e){return e.startsWith(".")||am.has(e)}function Gm(e,t){if(xs(e))throw Error(`${t} bundle path ${e} looks like a hidden file or secret and will not be bundled`)}function Jm(e){return e instanceof Error&&Array.isArray(e.errors)}function xs(e){return e.split("/").some((r)=>r.startsWith(".")||sm.some((n)=>n.test(r)))}function On(e){return Yf("sha256").update(e).digest("hex")}function Km(e){if(e.endsWith(".md"))return"text/markdown; charset=utf-8";if(e.endsWith(".json"))return"application/json";if(e.endsWith(".js")||e.endsWith(".mjs"))return"application/javascript";if(e.endsWith(".ts"))return"text/typescript; charset=utf-8";if(e.endsWith(".txt"))return"text/plain; charset=utf-8";return"application/octet-stream"}function Hm(e){let t=kt(e,"broods-stub.mjs");return{name:"broods-sdk-stub",setup:function(r){r.onResolve({filter:/^broods(\/.*)?$/},()=>({path:t}))}}}function Ym(e,t,r){let n=JSON.stringify(e);if(t)return`import __toolModule from ${n};
|
|
19
19
|
const __impl = typeof __toolModule === "function" ? __toolModule() : __toolModule;
|
|
20
20
|
export default { name: __impl.name, execute: (input, options) => __impl.execute(options.context, input) };
|
|
21
|
-
`;return`import { ${r.exportName} as __tool } from ${
|
|
21
|
+
`;return`import { ${r.exportName} as __tool } from ${n};
|
|
22
22
|
export default { name: ${JSON.stringify(r.resource.name)}, execute: (input, options) => __tool.execute(input, options) };
|
|
23
|
-
`}function
|
|
23
|
+
`}function Xm(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qm(e,t,r){let n=new RegExp(`^// .*${Xm(us(t))}$`,"gm");return e.replace(/^\/\/ .*tool-adapter\.mjs$/gm,()=>"// tool-adapter.mjs").replace(/^\/\/ .*broods-stub\.mjs$/gm,()=>"// broods-stub.mjs").replace(n,()=>`// ${r}`)}function eh(e){return e.replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}import{mkdir as th,writeFile as zr}from"node:fs/promises";import{resolve as Yt}from"node:path";async function jr(e,t,r=process.cwd(),n={},o=null,a=[]){let s=Yt(r,ce,Ce),i=rh(t,e);await th(s,{recursive:!0}),await zr(Yt(s,"ids.ts"),nh(i),"utf8"),await zr(Yt(s,"api.ts"),ah(e,i,n,o,a),"utf8"),await zr(Yt(s,"resources.ts"),oh(e),"utf8"),await zr(Yt(s,"dataModel.ts"),sh(),"utf8")}function rh(e,t){let r={agents:qe(t,"agent"),workspaces:qe(t,"workspace"),sandboxes:qe(t,"sandbox"),crons:qe(t,"cron"),skills:qe(t,"skill"),tools:qe(t,"tool"),policies:qe(t,"policy"),channelRecords:qe(t,"channelRecord")};return{agents:We(e.agents,r.agents),workspaces:We(e.workspaces,r.workspaces),sandboxes:We(e.sandboxes,r.sandboxes),crons:We(e.crons,r.crons),skills:We(e.skills,r.skills),tools:We(e.tools,r.tools),hooks:{},policies:We(e.policies,r.policies),channelRecords:We(e.channelRecords,r.channelRecords)}}function qe(e,t){return new Set(e.resources.filter((r)=>r.kind===t).map((r)=>r.name))}function We(e,t){return Object.fromEntries(Object.entries(e??{}).filter(([r])=>t.has(r)))}function nh(e){return`// Generated by broods. Do not edit by hand.
|
|
24
24
|
export const ids = ${JSON.stringify(e,null,2)} as const;
|
|
25
25
|
export const agents = ids.agents;
|
|
26
26
|
export const workspaces = ids.workspaces;
|
|
@@ -29,10 +29,10 @@ export const crons = ids.crons;
|
|
|
29
29
|
export const skills = ids.skills;
|
|
30
30
|
export const tools = ids.tools;
|
|
31
31
|
export const policies = ids.policies;
|
|
32
|
-
`}function
|
|
32
|
+
`}function oh(e){return`// Generated by broods. Do not edit by hand.
|
|
33
33
|
export const manifest = ${JSON.stringify(e,null,2)} as const;
|
|
34
|
-
`}function
|
|
35
|
-
`),
|
|
34
|
+
`}function ah(e,t,r,n,o){let a=Object.keys(t.agents),s=n?`, endpointId: ${JSON.stringify(n.endpointId)}, projectSlug: ${JSON.stringify(n.projectSlug)}, stageSlug: ${JSON.stringify(n.stageSlug)}`:"",i=a.map((u)=>` ${Pn(r.agent?.[u]??u)}: { kind: "agent", name: ${JSON.stringify(u)}, id: ids.agents[${JSON.stringify(u)}], project: ${JSON.stringify(e.project)}, stage: ${JSON.stringify(e.stage)}${s} },`).join(`
|
|
35
|
+
`),c=n?o.map((u)=>{let d=encodeURIComponent(n.accountId),p=n.stageKind===void 0||n.stageKind==="production"?`/webhooks/${d}/${encodeURIComponent(u.type)}`:`/webhooks/${d}/dev/${encodeURIComponent(n.endpointId)}/${encodeURIComponent(u.type)}`;return` ${Pn(u.alias)}: { kind: "channel", type: ${JSON.stringify(u.type)}, agentName: ${JSON.stringify(u.agentName)}, agentId: ids.agents[${JSON.stringify(u.agentName)}], accountId: ${JSON.stringify(n.accountId)}, webhookPath: ${JSON.stringify(p)} },`}).join(`
|
|
36
36
|
`):"";return`// Generated by broods. Do not edit by hand.
|
|
37
37
|
import type { ResourceApi } from "broods";
|
|
38
38
|
import { ids } from "./ids";
|
|
@@ -43,30 +43,30 @@ export const api = {
|
|
|
43
43
|
${i}
|
|
44
44
|
},
|
|
45
45
|
channels: {
|
|
46
|
-
${
|
|
46
|
+
${c}
|
|
47
47
|
},
|
|
48
|
-
workspaces: ${
|
|
49
|
-
sandboxes: ${
|
|
50
|
-
crons: ${
|
|
51
|
-
skills: ${
|
|
52
|
-
tools: ${
|
|
53
|
-
policies: ${
|
|
48
|
+
workspaces: ${Mt("workspaces",t.workspaces,r.workspace)},
|
|
49
|
+
sandboxes: ${Mt("sandboxes",t.sandboxes,r.sandbox)},
|
|
50
|
+
crons: ${Mt("crons",t.crons,r.cron)},
|
|
51
|
+
skills: ${Mt("skills",t.skills,r.skill)},
|
|
52
|
+
tools: ${Mt("tools",t.tools,r.tool)},
|
|
53
|
+
policies: ${Mt("policies",t.policies,r.policy)},
|
|
54
54
|
} as const satisfies ResourceApi;
|
|
55
|
-
`}function
|
|
56
|
-
${
|
|
55
|
+
`}function Mt(e,t,r){let n=Object.keys(t);if(n.length===0)return"{}";return`{
|
|
56
|
+
${n.map((a)=>` ${Pn(r?.[a]??a)}: ids.${e}[${JSON.stringify(a)}],`).join(`
|
|
57
57
|
`)}
|
|
58
|
-
}`}function
|
|
58
|
+
}`}function Pn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)?e:JSON.stringify(e)}function sh(){return`// Generated by broods. Do not edit by hand.
|
|
59
59
|
export type { AgentReference, ChannelReference, AgentRunInput, AgentRunResult, ResourceApi } from "broods";
|
|
60
|
-
`}class ae{baseUrl;token;fetchImpl;constructor(e){this.baseUrl=at(e.baseUrl),this.token=e.token,this.fetchImpl=e.fetch??fetch}async getManifest(e,t){let r=await this.request(e,t,"/manifest",{method:"GET"});if(r.status===404)return null;return await ve(r,"Fetch manifest failed"),await r.json()}async putManifest(e,t,r=!1){let o=await this.request(e.project,e.stage,"/manifest",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({manifest:e,prune:t,rotateRuntimeKey:r})});return await ve(o,"Sync manifest failed"),await o.json()}async getRuntimeKey(e,t){let r=await this.request(e,t,"/runtime-key",{method:"GET"});if(r.status===404)return null;await ve(r,"Fetch runtime key failed");let o=await r.json();if(!o.apiKey)throw Error("Fetch runtime key failed: response omitted apiKey");return{apiKey:o.apiKey,keyHint:o.keyHint??"",...o.endpointId?{endpointId:o.endpointId}:{},...o.projectSlug?{projectSlug:o.projectSlug}:{},...o.stageSlug?{stageSlug:o.stageSlug}:{}}}async setEnv(e,t,r,o){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:o})});await ve(n,"Set environment variable failed")}async listEnv(e,t){let r=await this.request(e,t,"/env",{method:"GET"});return await ve(r,"List environment variables failed"),(await r.json()).variables??[]}async getEnv(e,t,r){let o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"GET"});if(o.status===404)return null;return await ve(o,"Read environment variable failed"),(await o.json()).value??null}async removeEnv(e,t,r){let o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"DELETE"});await ve(o,"Remove environment variable failed")}async getOnboarding(){let e=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return await ve(e,"Fetch CLI onboarding context failed"),await e.json()}async selectOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({orgId:e})});return await ve(t,"Select CLI org failed"),await t.json()}async listStages(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/stages?project=${encodeURIComponent(e)}`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return ls(t),await ve(t,"List stages failed"),(await t.json()).stages??[]}async createStage(e,t,r){let o=await this.fetchImpl(`${this.baseUrl}/v1/account/stages`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({project:e,name:t,...r?{from:r}:{}})});return ls(o),await ve(o,"Create stage failed"),await o.json()}async createOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({createOrgName:e})});return await ve(t,"Create CLI org failed"),await t.json()}async request(e,t,r,o){let n=`${this.baseUrl}/v1/account/projects/${encodeURIComponent(e)}/stages/${encodeURIComponent(t)}${r}`;return await this.fetchImpl(n,{...o,headers:{Authorization:`Bearer ${this.token}`,...o.headers}})}}function zo(e,t){let r=new Map((t?.resources??[]).map((c)=>[`${c.kind}:${c.name}`,c])),o=new Map(e.resources.map((c)=>[`${c.kind}:${c.name}`,c])),n=[],a=[],s=[];for(let[c,d]of o){let p=r.get(c);if(!p)a.push({key:c,resource:d});else if(zr(Co(p))!==zr(Co(d)))n.push({operation:"update",kind:d.kind,name:d.name})}for(let[c,d]of r)if(!o.has(c))s.push({key:c,resource:d});let i=new Set,u=new Set;for(let c of a){let d=s.find((p)=>!i.has(p.key)&&Nm(c.resource.kind)&&c.resource.kind===p.resource.kind&&zr(ss(c.resource))===zr(ss(p.resource)));if(!d)continue;u.add(c.key),i.add(d.key),n.push({operation:"rename",kind:c.resource.kind,name:c.resource.name,previousName:d.resource.name})}for(let{key:c,resource:d}of a)if(!u.has(c))n.push({operation:"create",kind:d.kind,name:d.name});for(let{key:c,resource:d}of s)if(!i.has(c))n.push({operation:"delete",kind:d.kind,name:d.name});return n.sort((c,d)=>is(c).localeCompare(is(d)))}function Co(e){let t=Oo(e);if(e.kind!=="skill"&&e.kind!=="tool"&&e.kind!=="hook")return t;return{...t,config:Po(t.config)}}function ss(e){let t=Co(e),{name:r,...o}=t;return o}function Nm(e){return e==="agent"||e==="workspace"||e==="sandbox"||e==="policy"}function is(e){return`${{create:0,rename:1,update:2,delete:3}[e.operation]}:${e.kind}:${e.previousName??""}:${e.name}`}function Oo(e){if(Array.isArray(e))return e.map(Oo);if(e&&typeof e==="object"){let t=e;if(t.__beeblastEnv===!0&&typeof t.name==="string")return`\${${t.name}}`;return Object.fromEntries(Object.entries(t).map(([r,o])=>[r,Oo(o)]))}return e}function Po(e){if(Array.isArray(e))return e.map(Po);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,Po(r)]]}));return e}function zr(e){return JSON.stringify(No(e))}function No(e){if(Array.isArray(e))return e.map(No);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,No(r)]));return e}function ls(e){if(e.status!==404)return;if((e.headers.get("Content-Type")??"").includes("application/json"))return;throw Error("This broods deployment has no /v1/account/stages route yet. Update the backend to use `broods stage`.")}async function ve(e,t){if(!e.ok)throw Error(`${t}: ${e.status} ${await e.text()}`)}var zm=1,jm=0;function Dm(e,t,r,o){return`${cs(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(o)}`}function Um(e){if(typeof e!=="string")return null;try{let t=JSON.parse(e);return typeof t==="object"&&t!==null&&typeof t.type==="string"?t:null}catch{return null}}function Zm(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function us(e,t,r=fetch){try{let o=await r(`${e.replace(/\/+$/,"")}/v1/internal/observability-scope`,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(5000)});if(!o.ok)return null;let n=await o.json();if(typeof n?.projectSlug!=="string"||typeof n?.stageSlug!=="string"||n.projectSlug===""||n.stageSlug==="")return null;return n}catch{return null}}async function*jr(e,t={}){let r=new Set,o=500;while(!t.signal?.aborted){try{for await(let n of Lm(e,t)){let a=`${n.ts}|${n.eventType}|${n.message}`;if(r.has(a))continue;if(r.add(a),r.size>5000)r.delete(r.values().next().value);o=500,yield n}}catch(n){if(t.signal?.aborted)return;let a=n instanceof Error?n.message:String(n);if(/unauthorized|invalid websocket token|scope does not match/i.test(a))throw n}await Fm(o,t.signal),o=Math.min(o*2,5000)}}async function*Lm(e,t){let{baseUrl:r,apiKey:o,project:n,stage:a}=e,{backfill:s=0,minLevel:i,signal:u}=t,c=t.liveOnly??s<=0;if(u?.aborted)return;let d=Dm(r,n,a,o),p=d.slice(0,d.indexOf("?")),f=Zm(),h=[],y=null,v=!1,_=null,j=()=>{_?.(),_=null},C=new f(d),Z=()=>{if(C.readyState===zm||C.readyState===jm)C.close(1000,"client closed");u?.removeEventListener("abort",R)},R=()=>{v=!0,j(),Z()};u?.addEventListener("abort",R,{once:!0}),C.onopen=()=>{if(u?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...c?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};C.send(JSON.stringify(P))},C.onmessage=(P)=>{let m=Um(P.data);if(!m)return;switch(m.type){case"backfill":if(m.stream==="logs"){for(let N of m.entries)h.push(N);j()}break;case"log":h.push(m.entry),j();break;case"error":y=Error(`Observability gateway error: ${m.error}`),v=!0,j();break;case"ready":break;default:break}},C.onerror=()=>{y=Error(`Cannot connect to the observability gateway at ${p}.`),v=!0,j()},C.onclose=(P)=>{if(!v){if(P.code!==1000)y=Error(P.reason?`Observability WebSocket closed: ${P.reason}`:`Observability WebSocket closed with code ${P.code}.`);v=!0,j()}};try{while(!0){if(h.length>0){yield h.shift();continue}if(y)throw y;if(v)return;await new Promise((P)=>{_=P})}}finally{Z()}}function Fm(e,t){return new Promise((r)=>{if(t?.aborted)return r();let o=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(o),r()},{once:!0})})}import{createServer as Bm}from"node:http";import{randomUUID as qm}from"node:crypto";import{spawn as Wm}from"node:child_process";import{createInterface as Ur}from"node:readline/promises";import{stdin as st,stdout as qe}from"node:process";var Vm=180000,Jm=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function kt(e){let t=[];for(let r=0;r<e.length;r+=1){let o=e[r];if(o===void 0)continue;if(Jm.has(o)){r+=1;continue}if(o.startsWith("-"))continue;t.push(o)}return t}function E(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function Ee(e,t){return e.includes(t)}function it(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function ke(e){te();let t=await ds();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:at(e)}:{}}}async function ps(e){let t=Ur({input:st,output:qe});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function lt(e,t){let r=Ur({input:st,output:qe});try{let o=r.question(`${e}: `);if(t){if(st.isTTY&&qe.isTTY)qe.write("\x1B[90m");if(r.write(t),st.isTTY&&qe.isTTY)qe.write("\x1B[0m")}return(await o).trim()||t||""}finally{r.close()}}async function $t(e,t,r){if(t.length===0)throw Error(`${e}: no options available`);if(t.length===1)return t[0];console.log(e),t.forEach((n,a)=>{console.log(` ${a+1}. ${r(n)}`)});let o=Ur({input:st,output:qe});try{while(!0){let n=(await o.question(`Choose 1-${t.length}: `)).trim(),a=Number(n);if(Number.isInteger(a)&&a>=1&&a<=t.length)return t[a-1];console.log(`Enter a number from 1 to ${t.length}.`)}}finally{o.close()}}async function fs(e){if(!st.isTTY)return!1;let t=Ur({input:st,output:qe});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function jo(e){let t=qm(),{code:r,close:o}=await Gm(t);try{let n=r.callbackUrl,a=`${at(e)}/cli-auth/start?`+new URLSearchParams({callback:n,state:t});await Km(a),Xm(a),console.log(`Opening ${a}`);let s=await Hm(r.promise,Vm),i=await fetch(`${s.baseUrl}/v1/account/auth/exchange`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:s.code})});if(!i.ok)throw Error(`Login exchange failed: ${i.status} ${await i.text()}`);let u=await i.json(),c={baseUrl:s.baseUrl,dashboardUrl:at(e),token:u.token,createdAt:new Date().toISOString(),...u.user?{user:u.user}:{},...u.org?{org:u.org}:{},...u.account?{account:u.account}:{}};return await Dr(c),c}finally{o()}}async function Km(e){let t=await fetch(e,{method:"GET",redirect:"manual"});if(t.status===404){let r=new URL(e);throw Error(`${r.origin} does not expose /cli-auth/start yet. Deploy the dashboard changes first, or use --dashboard-url http://localhost:3000 with a local dashboard dev server.`)}if(t.status>=500)throw Error(`Dashboard CLI auth route failed: ${t.status} ${await t.text()}`)}function Gm(e){return new Promise((t,r)=>{let o=Bm((u,c)=>{try{let d=new URL(u.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),f=d.searchParams.get("code"),h=d.searchParams.get("base_url");if(p!==e||!f){c.writeHead(400).end("Invalid broods login callback.");return}if(!h){c.writeHead(400).end("Login callback omitted base_url; update the dashboard deployment."),a(Error("Login callback did not advertise the API base URL (base_url). Deploy a dashboard build that includes the Convex-direct CLI auth flow."));return}c.writeHead(200,{"Content-Type":"text/plain"}).end("broods CLI login complete. You can close this tab."),n({code:f,baseUrl:at(h)})}catch(d){a(d)}}),n,a,s=new Promise((u,c)=>{n=u,a=c}),i=Ym();o.on("error",(u)=>{if(!process.env.BROODS_LOGIN_PORT&&i!==0&&u.code==="EADDRINUSE"){o.listen(0,"127.0.0.1");return}r(u)}),o.listen(i,"127.0.0.1",()=>{let u=o.address();if(!u||typeof u==="string"){r(Error("Failed to allocate callback port"));return}t({code:{callbackUrl:`http://127.0.0.1:${u.port}/callback`,promise:s},close:()=>o.close()})})})}async function Hm(e,t){let r,o=new Promise((n,a)=>{r=setTimeout(()=>a(Error(`Timed out waiting for browser login to complete.
|
|
60
|
+
`}class ae{baseUrl;token;fetchImpl;constructor(e){this.baseUrl=ct(e.baseUrl),this.token=e.token,this.fetchImpl=e.fetch??fetch}async getManifest(e,t){let r=await this.request(e,t,"/manifest",{method:"GET"});if(r.status===404)return null;return await ve(r,"Fetch manifest failed"),await r.json()}async putManifest(e,t,r=!1){let n=await this.request(e.project,e.stage,"/manifest",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({manifest:e,prune:t,rotateRuntimeKey:r})});return await ve(n,"Sync manifest failed"),await n.json()}async getRuntimeKey(e,t){let r=await this.request(e,t,"/runtime-key",{method:"GET"});if(r.status===404)return null;await ve(r,"Fetch runtime key failed");let n=await r.json();if(!n.apiKey)throw Error("Fetch runtime key failed: response omitted apiKey");return{apiKey:n.apiKey,keyHint:n.keyHint??"",...n.endpointId?{endpointId:n.endpointId}:{},...n.projectSlug?{projectSlug:n.projectSlug}:{},...n.stageSlug?{stageSlug:n.stageSlug}:{}}}async setEnv(e,t,r,n){let o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});await ve(o,"Set environment variable failed")}async listEnv(e,t){let r=await this.request(e,t,"/env",{method:"GET"});return await ve(r,"List environment variables failed"),(await r.json()).variables??[]}async getEnv(e,t,r){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"GET"});if(n.status===404)return null;return await ve(n,"Read environment variable failed"),(await n.json()).value??null}async removeEnv(e,t,r){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"DELETE"});await ve(n,"Remove environment variable failed")}async getOnboarding(){let e=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return await ve(e,"Fetch CLI onboarding context failed"),await e.json()}async selectOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({orgId:e})});return await ve(t,"Select CLI org failed"),await t.json()}async listStages(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/stages?project=${encodeURIComponent(e)}`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return Ts(t),await ve(t,"List stages failed"),(await t.json()).stages??[]}async createStage(e,t,r){let n=await this.fetchImpl(`${this.baseUrl}/v1/account/stages`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({project:e,name:t,...r?{from:r}:{}})});return Ts(n),await ve(n,"Create stage failed"),await n.json()}async createOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({createOrgName:e})});return await ve(t,"Create CLI org failed"),await t.json()}async request(e,t,r,n){let o=`${this.baseUrl}/v1/account/projects/${encodeURIComponent(e)}/stages/${encodeURIComponent(t)}${r}`;return await this.fetchImpl(o,{...n,headers:{Authorization:`Bearer ${this.token}`,...n.headers}})}}function Un(e,t){let r=new Map((t?.resources??[]).map((u)=>[`${u.kind}:${u.name}`,u])),n=new Map(e.resources.map((u)=>[`${u.kind}:${u.name}`,u])),o=[],a=[],s=[];for(let[u,d]of n){let p=r.get(u);if(!p)a.push({key:u,resource:d});else if(Dr(Nn(p))!==Dr(Nn(d)))o.push({operation:"update",kind:d.kind,name:d.name})}for(let[u,d]of r)if(!n.has(u))s.push({key:u,resource:d});let i=new Set,c=new Set;for(let u of a){let d=s.find((p)=>!i.has(p.key)&&ih(u.resource.kind)&&u.resource.kind===p.resource.kind&&Dr(_s(u.resource))===Dr(_s(p.resource)));if(!d)continue;c.add(u.key),i.add(d.key),o.push({operation:"rename",kind:u.resource.kind,name:u.resource.name,previousName:d.resource.name})}for(let{key:u,resource:d}of a)if(!c.has(u))o.push({operation:"create",kind:d.kind,name:d.name});for(let{key:u,resource:d}of s)if(!i.has(u))o.push({operation:"delete",kind:d.kind,name:d.name});return o.sort((u,d)=>Ss(u).localeCompare(Ss(d)))}function Nn(e){let t=zn(e);if(e.kind!=="skill"&&e.kind!=="tool"&&e.kind!=="hook")return t;return{...t,config:jn(t.config)}}function _s(e){let t=Nn(e),{name:r,...n}=t;return n}function ih(e){return e==="agent"||e==="workspace"||e==="sandbox"||e==="policy"}function Ss(e){return`${{create:0,rename:1,update:2,delete:3}[e.operation]}:${e.kind}:${e.previousName??""}:${e.name}`}function zn(e){if(Array.isArray(e))return e.map(zn);if(e&&typeof e==="object"){let t=e;if(t.__beeblastEnv===!0&&typeof t.name==="string")return`\${${t.name}}`;return Object.fromEntries(Object.entries(t).map(([r,n])=>[r,zn(n)]))}return e}function jn(e){if(Array.isArray(e))return e.map(jn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,jn(r)]]}));return e}function Dr(e){return JSON.stringify(Dn(e))}function Dn(e){if(Array.isArray(e))return e.map(Dn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,Dn(r)]));return e}function Ts(e){if(e.status!==404)return;if((e.headers.get("Content-Type")??"").includes("application/json"))return;throw Error("This broods deployment has no /v1/account/stages route yet. Update the backend to use `broods stage`.")}async function ve(e,t){if(!e.ok)throw Error(`${t}: ${e.status} ${await e.text()}`)}var lh=1,ch=0;function uh(e,t,r,n){return`${Is(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(n)}`}function dh(e){if(typeof e!=="string")return null;try{let t=JSON.parse(e);return typeof t==="object"&&t!==null&&typeof t.type==="string"?t:null}catch{return null}}function ph(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function Es(e,t,r=fetch){try{let n=await r(`${e.replace(/\/+$/,"")}/v1/internal/observability-scope`,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(5000)});if(!n.ok)return null;let o=await n.json();if(typeof o?.projectSlug!=="string"||typeof o?.stageSlug!=="string"||o.projectSlug===""||o.stageSlug==="")return null;return o}catch{return null}}async function*Ur(e,t={}){let r=new Set,n=500;while(!t.signal?.aborted){try{for await(let o of fh(e,t)){let a=`${o.ts}|${o.eventType}|${o.message}`;if(r.has(a))continue;if(r.add(a),r.size>5000)r.delete(r.values().next().value);n=500,yield o}}catch(o){if(t.signal?.aborted)return;let a=o instanceof Error?o.message:String(o);if(/unauthorized|invalid websocket token|scope does not match/i.test(a))throw o}await mh(n,t.signal),n=Math.min(n*2,5000)}}async function*fh(e,t){let{baseUrl:r,apiKey:n,project:o,stage:a}=e,{backfill:s=0,minLevel:i,signal:c}=t,u=t.liveOnly??s<=0;if(c?.aborted)return;let d=uh(r,o,a,n),p=d.slice(0,d.indexOf("?")),f=ph(),m=[],y=null,v=!1,_=null,j=()=>{_?.(),_=null},C=new f(d),Z=()=>{if(C.readyState===lh||C.readyState===ch)C.close(1000,"client closed");c?.removeEventListener("abort",R)},R=()=>{v=!0,j(),Z()};c?.addEventListener("abort",R,{once:!0}),C.onopen=()=>{if(c?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...u?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};C.send(JSON.stringify(P))},C.onmessage=(P)=>{let h=dh(P.data);if(!h)return;switch(h.type){case"backfill":if(h.stream==="logs"){for(let N of h.entries)m.push(N);j()}break;case"log":m.push(h.entry),j();break;case"error":y=Error(`Observability gateway error: ${h.error}`),v=!0,j();break;case"ready":break;default:break}},C.onerror=()=>{y=Error(`Cannot connect to the observability gateway at ${p}.`),v=!0,j()},C.onclose=(P)=>{if(!v){if(P.code!==1000)y=Error(P.reason?`Observability WebSocket closed: ${P.reason}`:`Observability WebSocket closed with code ${P.code}.`);v=!0,j()}};try{while(!0){if(m.length>0){yield m.shift();continue}if(y)throw y;if(v)return;await new Promise((P)=>{_=P})}}finally{Z()}}function mh(e,t){return new Promise((r)=>{if(t?.aborted)return r();let n=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(n),r()},{once:!0})})}import{createServer as hh}from"node:http";import{randomUUID as gh}from"node:crypto";import{spawn as vh}from"node:child_process";import{createInterface as Lr}from"node:readline/promises";import{stdin as ut,stdout as Ve}from"node:process";var yh=180000,bh=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function Rt(e){let t=[];for(let r=0;r<e.length;r+=1){let n=e[r];if(n===void 0)continue;if(bh.has(n)){r+=1;continue}if(n.startsWith("-"))continue;t.push(n)}return t}function E(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function we(e,t){return e.includes(t)}function dt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function ke(e){te();let t=await ks();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:ct(e)}:{}}}async function $s(e){let t=Lr({input:ut,output:Ve});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function pt(e,t){let r=Lr({input:ut,output:Ve});try{let n=r.question(`${e}: `);if(t){if(ut.isTTY&&Ve.isTTY)Ve.write("\x1B[90m");if(r.write(t),ut.isTTY&&Ve.isTTY)Ve.write("\x1B[0m")}return(await n).trim()||t||""}finally{r.close()}}async function At(e,t,r){if(t.length===0)throw Error(`${e}: no options available`);if(t.length===1)return t[0];console.log(e),t.forEach((o,a)=>{console.log(` ${a+1}. ${r(o)}`)});let n=Lr({input:ut,output:Ve});try{while(!0){let o=(await n.question(`Choose 1-${t.length}: `)).trim(),a=Number(o);if(Number.isInteger(a)&&a>=1&&a<=t.length)return t[a-1];console.log(`Enter a number from 1 to ${t.length}.`)}}finally{n.close()}}async function Ms(e){if(!ut.isTTY)return!1;let t=Lr({input:ut,output:Ve});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function Zn(e){let t=gh(),{code:r,close:n}=await xh(t);try{let o=r.callbackUrl,a=`${ct(e)}/cli-auth/start?`+new URLSearchParams({callback:o,state:t});await wh(a),Th(a),console.log(`Opening ${a}`);let s=await _h(r.promise,yh),i=await fetch(`${s.baseUrl}/v1/account/auth/exchange`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:s.code})});if(!i.ok)throw Error(`Login exchange failed: ${i.status} ${await i.text()}`);let c=await i.json(),u={baseUrl:s.baseUrl,dashboardUrl:ct(e),token:c.token,createdAt:new Date().toISOString(),...c.user?{user:c.user}:{},...c.org?{org:c.org}:{},...c.account?{account:c.account}:{}};return await Zr(u),u}finally{n()}}async function wh(e){let t=await fetch(e,{method:"GET",redirect:"manual"});if(t.status===404){let r=new URL(e);throw Error(`${r.origin} does not expose /cli-auth/start yet. Deploy the dashboard changes first, or use --dashboard-url http://localhost:3000 with a local dashboard dev server.`)}if(t.status>=500)throw Error(`Dashboard CLI auth route failed: ${t.status} ${await t.text()}`)}function xh(e){return new Promise((t,r)=>{let n=hh((c,u)=>{try{let d=new URL(c.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),f=d.searchParams.get("code"),m=d.searchParams.get("base_url");if(p!==e||!f){u.writeHead(400).end("Invalid broods login callback.");return}if(!m){u.writeHead(400).end("Login callback omitted base_url; update the dashboard deployment."),a(Error("Login callback did not advertise the API base URL (base_url). Deploy a dashboard build that includes the Convex-direct CLI auth flow."));return}u.writeHead(200,{"Content-Type":"text/plain"}).end("broods CLI login complete. You can close this tab."),o({code:f,baseUrl:ct(m)})}catch(d){a(d)}}),o,a,s=new Promise((c,u)=>{o=c,a=u}),i=Sh();n.on("error",(c)=>{if(!process.env.BROODS_LOGIN_PORT&&i!==0&&c.code==="EADDRINUSE"){n.listen(0,"127.0.0.1");return}r(c)}),n.listen(i,"127.0.0.1",()=>{let c=n.address();if(!c||typeof c==="string"){r(Error("Failed to allocate callback port"));return}t({code:{callbackUrl:`http://127.0.0.1:${c.port}/callback`,promise:s},close:()=>n.close()})})})}async function _h(e,t){let r,n=new Promise((o,a)=>{r=setTimeout(()=>a(Error(`Timed out waiting for browser login to complete.
|
|
61
61
|
Check the browser tab and the dashboard logs for an error. If the browser shows
|
|
62
62
|
404 on /cli-auth/start, deploy the dashboard build that includes CLI auth or pass
|
|
63
63
|
--dashboard-url for the environment you deployed. Other common causes are missing
|
|
64
|
-
cliAuth Convex functions or no active API account (Settings -> API Access).`)),t)});try{return await Promise.race([e,
|
|
65
|
-
`)}function
|
|
66
|
-
Error message: ${
|
|
67
|
-
Error message: ${Yt(r)}`,cause:r});this[Bs]=!0,this.value=t,this.context=o}static isInstance(t){return k.hasMarker(t,bi)}static wrap({value:t,cause:r,context:o}){var n,a,s;if(e.isInstance(r)&&r.value===t&&((n=r.context)==null?void 0:n.field)===(o==null?void 0:o.field)&&((a=r.context)==null?void 0:a.entityName)===(o==null?void 0:o.entityName)&&((s=r.context)==null?void 0:s.entityId)===(o==null?void 0:o.entityId))return r;return new e({value:t,cause:r,context:o})}},xi="AI_UnsupportedFunctionalityError",_i=`vercel.ai.error.${xi}`,xh=Symbol.for(_i),Ws,Vs,lS=class extends(Vs=k,Ws=xh,Vs){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:xi,message:t});this[Ws]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,_i)}};var Si;function g(e,t,r){function o(i,u){if(!i._zod)Object.defineProperty(i,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1});if(i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,u);let c=s.prototype,d=Object.keys(c);for(let p=0;p<d.length;p++){let f=d[p];if(!(f in i))i[f]=c[f].bind(i)}}let n=r?.Parent??Object;class a extends n{}Object.defineProperty(a,"name",{value:e});function s(i){var u;let c=r?.Parent?new a:this;o(c,i),(u=c._zod).deferred??(u.deferred=[]);for(let d of c._zod.deferred)d();return c}return Object.defineProperty(s,"init",{value:o}),Object.defineProperty(s,Symbol.hasInstance,{value:(i)=>{if(r?.Parent&&i instanceof r.Parent)return!0;return i?._zod?.traits?.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}var SS=Symbol("zod_brand");class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Xt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Si=globalThis).__zod_globalConfig??(Si.__zod_globalConfig={});var Mt=globalThis.__zod_globalConfig;function be(e){if(e)Object.assign(Mt,e);return Mt}var O={};_h(O,{BIGINT_FORMAT_RANGES:()=>$i,Class:()=>Ci,NUMBER_FORMAT_RANGES:()=>Wo,aborted:()=>Je,allowsEval:()=>Fo,assert:()=>kh,assertEqual:()=>Sh,assertIs:()=>Ih,assertNever:()=>Eh,assertNotEqual:()=>Th,assignProp:()=>We,base64ToUint8Array:()=>Ri,base64urlToUint8Array:()=>Vh,cached:()=>At,captureStackTrace:()=>Fr,cleanEnum:()=>Wh,cleanRegex:()=>rr,clone:()=>xe,cloneDef:()=>Rh,createTransparentProxy:()=>zh,defineLazy:()=>A,esc:()=>Lr,escapeRegex:()=>Ne,explicitlyAborted:()=>Vo,extend:()=>Uh,finalizeIssue:()=>ye,floatSafeRemainder:()=>Zo,getElementAtPath:()=>Ah,getEnumValues:()=>er,getLengthableOrigin:()=>or,getParsedType:()=>Nh,getSizableOrigin:()=>Mi,hexToUint8Array:()=>Kh,isObject:()=>ct,isPlainObject:()=>Ve,issue:()=>Ct,joinValues:()=>$h,jsonStringifyReplacer:()=>Rt,merge:()=>Lh,mergeDefs:()=>Pe,normalizeParams:()=>I,nullish:()=>tr,numKeys:()=>Ph,objectClone:()=>Mh,omit:()=>Dh,optionalKeys:()=>qo,parsedType:()=>qh,partial:()=>Fh,pick:()=>jh,prefixIssues:()=>ze,primitiveTypes:()=>Ei,promiseAllObject:()=>Ch,propertyKeyTypes:()=>Bo,randomString:()=>Oh,required:()=>Bh,safeExtend:()=>Zh,shallowClone:()=>Ii,slugify:()=>Lo,stringifyPrimitive:()=>ki,uint8ArrayToBase64:()=>Ai,uint8ArrayToBase64url:()=>Jh,uint8ArrayToHex:()=>Gh,unwrapMessage:()=>Qt});function Sh(e){return e}function Th(e){return e}function Ih(e){}function Eh(e){throw Error("Unexpected value in exhaustive check")}function kh(e){}function er(e){let t=Object.values(e).filter((o)=>typeof o==="number");return Object.entries(e).filter(([o,n])=>t.indexOf(+o)===-1).map(([o,n])=>n)}function $h(e,t="|"){return e.map((r)=>ki(r)).join(t)}function Rt(e,t){if(typeof t==="bigint")return t.toString();return t}function At(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function tr(e){return e===null||e===void 0}function rr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Zo(e,t){let r=e/t,o=Math.round(r),n=Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-o)<n)return 0;return r-o}var Ti=Symbol("evaluating");function A(e,t,r){let o=void 0;Object.defineProperty(e,t,{get(){if(o===Ti)return;if(o===void 0)o=Ti,o=r();return o},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function Mh(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function We(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Pe(...e){let t={};for(let r of e){let o=Object.getOwnPropertyDescriptors(r);Object.assign(t,o)}return Object.defineProperties({},t)}function Rh(e){return Pe(e._zod.def)}function Ah(e,t){if(!t)return e;return t.reduce((r,o)=>r?.[o],e)}function Ch(e){let t=Object.keys(e),r=t.map((o)=>e[o]);return Promise.all(r).then((o)=>{let n={};for(let a=0;a<t.length;a++)n[t[a]]=o[a];return n})}function Oh(e=10){let r="";for(let o=0;o<e;o++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function Lr(e){return JSON.stringify(e)}function Lo(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Fr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ct(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Fo=At(()=>{if(Mt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Ve(e){if(ct(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(ct(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Ii(e){if(Ve(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}function Ph(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var Nh=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Bo=new Set(["string","number","symbol"]),Ei=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ne(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xe(e,t,r){let o=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)o._zod.parent=e;return o}function I(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function zh(e){let t;return new Proxy({},{get(r,o,n){return t??(t=e()),Reflect.get(t,o,n)},set(r,o,n,a){return t??(t=e()),Reflect.set(t,o,n,a)},has(r,o){return t??(t=e()),Reflect.has(t,o)},deleteProperty(r,o){return t??(t=e()),Reflect.deleteProperty(t,o)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,o){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,o)},defineProperty(r,o,n){return t??(t=e()),Reflect.defineProperty(t,o,n)}})}function ki(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function qo(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Wo={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},$i={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function jh(e,t){let r=e._zod.def,o=r.checks;if(o&&o.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let a=Pe(e._zod.def,{get shape(){let s={};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;s[i]=r.shape[i]}return We(this,"shape",s),s},checks:[]});return xe(e,a)}function Dh(e,t){let r=e._zod.def,o=r.checks;if(o&&o.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let a=Pe(e._zod.def,{get shape(){let s={...e._zod.def.shape};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;delete s[i]}return We(this,"shape",s),s},checks:[]});return xe(e,a)}function Uh(e,t){if(!Ve(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let a=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(a,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let n=Pe(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return We(this,"shape",a),a}});return xe(e,n)}function Zh(e,t){if(!Ve(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=Pe(e._zod.def,{get shape(){let o={...e._zod.def.shape,...t};return We(this,"shape",o),o}});return xe(e,r)}function Lh(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=Pe(e._zod.def,{get shape(){let o={...e._zod.def.shape,...t._zod.def.shape};return We(this,"shape",o),o},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return xe(e,r)}function Fh(e,t,r){let n=t._zod.def.checks;if(n&&n.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let s=Pe(t._zod.def,{get shape(){let i=t._zod.def.shape,u={...i};if(r)for(let c in r){if(!(c in i))throw Error(`Unrecognized key: "${c}"`);if(!r[c])continue;u[c]=e?new e({type:"optional",innerType:i[c]}):i[c]}else for(let c in i)u[c]=e?new e({type:"optional",innerType:i[c]}):i[c];return We(this,"shape",u),u},checks:[]});return xe(t,s)}function Bh(e,t,r){let o=Pe(t._zod.def,{get shape(){let n=t._zod.def.shape,a={...n};if(r)for(let s in r){if(!(s in a))throw Error(`Unrecognized key: "${s}"`);if(!r[s])continue;a[s]=new e({type:"nonoptional",innerType:n[s]})}else for(let s in n)a[s]=new e({type:"nonoptional",innerType:n[s]});return We(this,"shape",a),a}});return xe(t,o)}function Je(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Vo(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function ze(e,t){return t.map((r)=>{var o;return(o=r).path??(o.path=[]),r.path.unshift(e),r})}function Qt(e){return typeof e==="string"?e:e?.message}function ye(e,t,r){let o=e.message?e.message:Qt(e.inst?._zod.def?.error?.(e))??Qt(t?.error?.(e))??Qt(r.customError?.(e))??Qt(r.localeError?.(e))??"Invalid input",{inst:n,continue:a,input:s,...i}=e;if(i.path??(i.path=[]),i.message=o,t?.reportInput)i.input=s;return i}function Mi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function or(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function qh(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Ct(...e){let[t,r,o]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:o};return{...t}}function Wh(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function Ri(e){let t=atob(e),r=new Uint8Array(t.length);for(let o=0;o<t.length;o++)r[o]=t.charCodeAt(o);return r}function Ai(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function Vh(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return Ri(t+r)}function Jh(e){return Ai(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Kh(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let r=new Uint8Array(t.length/2);for(let o=0;o<t.length;o+=2)r[o/2]=Number.parseInt(t.slice(o,o+2),16);return r}function Gh(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Ci{constructor(...e){}}var Oi=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Rt,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Br=g("$ZodError",Oi),Jo=g("$ZodError",Oi,{Parent:Error});function Pi(e,t=(r)=>r.message){let r={},o=[];for(let n of e.issues)if(n.path.length>0)r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(t(n));else o.push(t(n));return{formErrors:o,fieldErrors:r}}function Ni(e,t=(r)=>r.message){let r={_errors:[]},o=(n,a=[])=>{for(let s of n.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map((i)=>o({issues:i},[...a,...s.path]));else if(s.code==="invalid_key")o({issues:s.issues},[...a,...s.path]);else if(s.code==="invalid_element")o({issues:s.issues},[...a,...s.path]);else{let i=[...a,...s.path];if(i.length===0)r._errors.push(t(s));else{let u=r,c=0;while(c<i.length){let d=i[c];if(c!==i.length-1)u[d]=u[d]||{_errors:[]};else u[d]=u[d]||{_errors:[]},u[d]._errors.push(t(s));u=u[d],c++}}}};return o(e),r}var qr=(e)=>(t,r,o,n)=>{let a=o?{...o,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)throw new Oe;if(s.issues.length){let i=new(n?.Err??e)(s.issues.map((u)=>ye(u,a,be())));throw Fr(i,n?.callee),i}return s.value};var Wr=(e)=>async(t,r,o,n)=>{let a=o?{...o,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)s=await s;if(s.issues.length){let i=new(n?.Err??e)(s.issues.map((u)=>ye(u,a,be())));throw Fr(i,n?.callee),i}return s.value};var nr=(e)=>(t,r,o)=>{let n=o?{...o,async:!1}:{async:!1},a=t._zod.run({value:r,issues:[]},n);if(a instanceof Promise)throw new Oe;return a.issues.length?{success:!1,error:new(e??Br)(a.issues.map((s)=>ye(s,n,be())))}:{success:!0,data:a.value}},zi=nr(Jo),ar=(e)=>async(t,r,o)=>{let n=o?{...o,async:!0}:{async:!0},a=t._zod.run({value:r,issues:[]},n);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((s)=>ye(s,n,be())))}:{success:!0,data:a.value}},ji=ar(Jo),Di=(e)=>(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return qr(e)(t,r,n)};var Ui=(e)=>(t,r,o)=>qr(e)(t,r,o);var Zi=(e)=>async(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return Wr(e)(t,r,n)};var Li=(e)=>async(t,r,o)=>Wr(e)(t,r,o);var Fi=(e)=>(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return nr(e)(t,r,n)};var Bi=(e)=>(t,r,o)=>nr(e)(t,r,o);var qi=(e)=>async(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return ar(e)(t,r,n)};var Wi=(e)=>async(t,r,o)=>ar(e)(t,r,o);var Vi=/^[cC][0-9a-z]{6,}$/,Ji=/^[0-9a-z]+$/,Ki=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gi=/^[0-9a-vA-V]{20}$/,Hi=/^[A-Za-z0-9]{27}$/,Yi=/^[a-zA-Z0-9_-]{21}$/,Xi=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Qi=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ko=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var el=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Yh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function tl(){return new RegExp(Yh,"u")}var rl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ol=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var nl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,al=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,sl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Go=/^[A-Za-z0-9_-]*$/;var il=/^https?$/,ll=/^\+[1-9]\d{6,14}$/,cl="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ul=new RegExp(`^${cl}$`);function dl(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function pl(e){return new RegExp(`^${dl(e)}$`)}function fl(e){let t=dl({precision:e.precision}),r=["Z"];if(e.local)r.push("");if(e.offset)r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let o=`${t}(?:${r.join("|")})`;return new RegExp(`^${cl}T(?:${o})$`)}var ml=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var hl=/^-?\d+$/,Vr=/^-?\d+(?:\.\d+)?$/,gl=/^(?:true|false)$/i,vl=/^null$/i;var yl=/^[^A-Z]*$/,wl=/^[^a-z]*$/;var Q=g("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),bl={number:"number",bigint:"bigint",object:"date"},Ho=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let r=bl[typeof t.value];e._zod.onattach.push((o)=>{let n=o._zod.bag,a=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)n.maximum=t.value;else n.exclusiveMaximum=t.value}),e._zod.check=(o)=>{if(t.inclusive?o.value<=t.value:o.value<t.value)return;o.issues.push({origin:r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Yo=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let r=bl[typeof t.value];e._zod.onattach.push((o)=>{let n=o._zod.bag,a=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)n.minimum=t.value;else n.exclusiveMinimum=t.value}),e._zod.check=(o)=>{if(t.inclusive?o.value>=t.value:o.value>t.value)return;o.issues.push({origin:r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),xl=g("$ZodCheckMultipleOf",(e,t)=>{Q.init(e,t),e._zod.onattach.push((r)=>{var o;(o=r._zod.bag).multipleOf??(o.multipleOf=t.value)}),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?r.value%t.value===BigInt(0):Zo(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),_l=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),o=r?"int":"number",[n,a]=Wo[t.format];e._zod.onattach.push((s)=>{let i=s._zod.bag;if(i.format=t.format,i.minimum=n,i.maximum=a,r)i.pattern=hl}),e._zod.check=(s)=>{let i=s.value;if(r){if(!Number.isInteger(i)){s.issues.push({expected:o,format:t.format,code:"invalid_type",continue:!1,input:i,inst:e});return}if(!Number.isSafeInteger(i)){if(i>0)s.issues.push({input:i,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort});else s.issues.push({input:i,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort});return}}if(i<n)s.issues.push({origin:"number",input:i,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(i>a)s.issues.push({origin:"number",input:i,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}});var Sl=g("$ZodCheckMaxLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<n)o._zod.bag.maximum=t.maximum}),e._zod.check=(o)=>{let n=o.value;if(n.length<=t.maximum)return;let s=or(n);o.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:n,inst:e,continue:!t.abort})}}),Tl=g("$ZodCheckMinLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>n)o._zod.bag.minimum=t.minimum}),e._zod.check=(o)=>{let n=o.value;if(n.length>=t.minimum)return;let s=or(n);o.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:n,inst:e,continue:!t.abort})}}),Il=g("$ZodCheckLengthEquals",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=(o)=>{let n=o.value,a=n.length;if(a===t.length)return;let s=or(n),i=a>t.length;o.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:o.value,inst:e,continue:!t.abort})}}),sr=g("$ZodCheckStringFormat",(e,t)=>{var r,o;if(Q.init(e,t),e._zod.onattach.push((n)=>{let a=n._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(r=e._zod).check??(r.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(o=e._zod).check??(o.check=()=>{})}),El=g("$ZodCheckRegex",(e,t)=>{sr.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),kl=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=yl),sr.init(e,t)}),$l=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=wl),sr.init(e,t)}),Ml=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let r=Ne(t.includes),o=new RegExp(typeof t.position==="number"?`^.{${t.position}}${r}`:r);t.pattern=o,e._zod.onattach.push((n)=>{let a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(o)}),e._zod.check=(n)=>{if(n.value.includes(t.includes,t.position))return;n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Rl=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`^${Ne(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.startsWith(t.prefix))return;o.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:o.value,inst:e,continue:!t.abort})}}),Al=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`.*${Ne(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.endsWith(t.suffix))return;o.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:o.value,inst:e,continue:!t.abort})}});var Cl=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class Xo{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
68
|
-
`).filter((a)=>a),
|
|
69
|
-
`))}}var Pl={major:4,minor:4,patch:3};var F=g("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Pl;let o=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))o.unshift(e);for(let n of o)for(let a of n._zod.onattach)a(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let n=(s,i,u)=>{let c=Je(s),d;for(let p of i){if(p._zod.def.when){if(Vo(s))continue;if(!p._zod.def.when(s))continue}else if(c)continue;let f=s.issues.length,h=p._zod.check(s);if(h instanceof Promise&&u?.async===!1)throw new Oe;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,s.issues.length===f)return;if(!c)c=Je(s,f)});else{if(s.issues.length===f)continue;if(!c)c=Je(s,f)}}if(d)return d.then(()=>s);return s},a=(s,i,u)=>{if(Je(s))return s.aborted=!0,s;let c=n(i,o,u);if(c instanceof Promise){if(u.async===!1)throw new Oe;return c.then((d)=>e._zod.parse(d,u))}return e._zod.parse(c,u)};e._zod.run=(s,i)=>{if(i.skipChecks)return e._zod.parse(s,i);if(i.direction==="backward"){let c=e._zod.parse({value:s.value,issues:[]},{...i,skipChecks:!0});if(c instanceof Promise)return c.then((d)=>a(d,s,i));return a(c,s,i)}let u=e._zod.parse(s,i);if(u instanceof Promise){if(i.async===!1)throw new Oe;return u.then((c)=>n(c,o,i))}return n(u,o,i)}}A(e,"~standard",()=>({validate:(n)=>{try{let a=zi(e,n);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return ji(e,n).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Hr=g("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??ml(e._zod.bag),e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=String(r.value)}catch(n){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),B=g("$ZodStringFormat",(e,t)=>{sr.init(e,t),Hr.init(e,t)}),Bl=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Qi),B.init(e,t)}),ql=g("$ZodUUID",(e,t)=>{if(t.version){let o={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(o===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Ko(o))}else t.pattern??(t.pattern=Ko());B.init(e,t)}),Wl=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=el),B.init(e,t)}),Vl=g("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let o=r.value.trim();if(!t.normalize&&t.protocol?.source===il.source){if(!/^https?:\/\//i.test(o)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}}let n=new URL(o);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(n.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})}if(t.normalize)r.value=n.href;else r.value=o;return}catch(o){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Jl=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=tl()),B.init(e,t)}),Kl=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Yi),B.init(e,t)}),Gl=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Vi),B.init(e,t)}),Hl=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ji),B.init(e,t)}),Yl=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Ki),B.init(e,t)}),Xl=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Gi),B.init(e,t)}),Ql=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Hi),B.init(e,t)}),ec=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=fl(t)),B.init(e,t)}),tc=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)}),rc=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=pl(t)),B.init(e,t)}),oc=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Xi),B.init(e,t)}),nc=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=rl),B.init(e,t),e._zod.bag.format="ipv4"}),ac=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=ol),B.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(r)=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}});var sc=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=nl),B.init(e,t)}),ic=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=al),B.init(e,t),e._zod.check=(r)=>{let o=r.value.split("/");try{if(o.length!==2)throw Error();let[n,a]=o;if(!a)throw Error();let s=Number(a);if(`${s}`!==a)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function lc(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var cc=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=sl),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(lc(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Xh(e){if(!Go.test(e))return!1;let t=e.replace(/[-_]/g,(o)=>o==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return lc(r)}var uc=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Go),B.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(r)=>{if(Xh(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),dc=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ll),B.init(e,t)});function Qh(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[o]=r;if(!o)return!1;let n=JSON.parse(atob(o));if("typ"in n&&n?.typ!=="JWT")return!1;if(!n.alg)return!1;if(t&&(!("alg"in n)||n.alg!==t))return!1;return!0}catch{return!1}}var pc=g("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(Qh(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var en=g("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Vr,e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=Number(r.value)}catch(s){}let n=r.value;if(typeof n==="number"&&!Number.isNaN(n)&&Number.isFinite(n))return r;let a=typeof n==="number"?Number.isNaN(n)?"NaN":!Number.isFinite(n)?"Infinity":void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:n,inst:e,...a?{received:a}:{}}),r}}),fc=g("$ZodNumberFormat",(e,t)=>{_l.init(e,t),en.init(e,t)}),mc=g("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=gl,e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(a){}let n=r.value;if(typeof n==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:e}),r}});var hc=g("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=vl,e._zod.values=new Set([null]),e._zod.parse=(r,o)=>{let n=r.value;if(n===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:n,inst:e}),r}});var gc=g("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),vc=g("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Nl(e,t,r){if(e.issues.length)t.issues.push(...ze(r,e.issues));t.value[r]=e.value}var yc=g("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:e}),r;r.value=Array(n.length);let a=[];for(let s=0;s<n.length;s++){let i=n[s],u=t.element._zod.run({value:i,issues:[]},o);if(u instanceof Promise)a.push(u.then((c)=>Nl(c,r,s)));else Nl(u,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function Gr(e,t,r,o,n,a){let s=r in o;if(e.issues.length){if(n&&a&&!s)return;t.issues.push(...ze(r,e.issues))}if(!s&&!n){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(s)t.value[r]=void 0}else t.value[r]=e.value}function wc(e){let t=Object.keys(e.shape);for(let o of t)if(!e.shape?.[o]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${o}": expected a Zod schema`);let r=qo(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function bc(e,t,r,o,n,a){let s=[],i=n.keySet,u=n.catchall._zod,c=u.def.type,d=u.optin==="optional",p=u.optout==="optional";for(let f in t){if(f==="__proto__")continue;if(i.has(f))continue;if(c==="never"){s.push(f);continue}let h=u.run({value:t[f],issues:[]},o);if(h instanceof Promise)e.push(h.then((y)=>Gr(y,r,f,t,d,p)));else Gr(h,r,f,t,d,p)}if(s.length)r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:a});if(!e.length)return r;return Promise.all(e).then(()=>r)}var eg=g("$ZodObject",(e,t)=>{if(F.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let i=t.shape;Object.defineProperty(t,"shape",{get:()=>{let u={...i};return Object.defineProperty(t,"shape",{value:u}),u}})}let o=At(()=>wc(t));A(e._zod,"propValues",()=>{let i=t.shape,u={};for(let c in i){let d=i[c]._zod;if(d.values){u[c]??(u[c]=new Set);for(let p of d.values)u[c].add(p)}}return u});let n=ct,a=t.catchall,s;e._zod.parse=(i,u)=>{s??(s=o.value);let c=i.value;if(!n(c))return i.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),i;i.value={};let d=[],p=s.shape;for(let f of s.keys){let h=p[f],y=h._zod.optin==="optional",v=h._zod.optout==="optional",_=h._zod.run({value:c[f],issues:[]},u);if(_ instanceof Promise)d.push(_.then((j)=>Gr(j,i,f,c,y,v)));else Gr(_,i,f,c,y,v)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return bc(d,c,i,u,o.value,e)}}),xc=g("$ZodObjectJIT",(e,t)=>{eg.init(e,t);let r=e._zod.parse,o=At(()=>wc(t)),n=(f)=>{let h=new Xo(["shape","payload","ctx"]),y=o.value,v=(Z)=>{let R=Lr(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};h.write("const input = payload.value;");let _=Object.create(null),j=0;for(let Z of y.keys)_[Z]=`key_${j++}`;h.write("const newResult = {};");for(let Z of y.keys){let R=_[Z],P=Lr(Z),m=f[Z],N=m?._zod?.optin==="optional",V=m?._zod?.optout==="optional";if(h.write(`const ${R} = ${v(Z)};`),N&&V)h.write(`
|
|
64
|
+
cliAuth Convex functions or no active API account (Settings -> API Access).`)),t)});try{return await Promise.race([e,n])}finally{if(r)clearTimeout(r)}}function Sh(){let e=process.env.BROODS_LOGIN_PORT;if(e){let t=Number(e);if(Number.isInteger(t)&&t>0&&t<65536)return t;throw Error("BROODS_LOGIN_PORT must be a TCP port number")}return 18987}function Th(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"cmd":"xdg-open",r=process.platform==="win32"?["/c","start",e]:[e];vh(t,r,{stdio:"ignore",detached:!0}).unref()}function Ih(e,t={}){let r=Xt(t),n=Rh(e.stage),o=n==="Development",a=ue("▌",o?"\x1B[32m":"\x1B[33m",r),s=r?`${o?"\x1B[42m\x1B[30m\x1B[1m":"\x1B[43m\x1B[30m\x1B[1m"} ${n} \x1B[0m`:`[${n}]`,i=r?ue("dashboard","\x1B[4m",r):"dashboard",c=`${e.dashboardUrl}?project=${encodeURIComponent(e.project)}&stage=${encodeURIComponent(e.stage)}`,u=ue(c,"\x1B[2m\x1B[4m",r);return[`${a} Syncing ${n}: ${ue(e.project,"",r)}`,`${a} ${s} ${e.stage} (${i})`,`${a} ${ue("└─","\x1B[2m",r)} ${u}`].join(`
|
|
65
|
+
`)}function Eh(e,t={}){let r=(t.now??new Date).toTimeString().slice(0,8);return`${ue("✔","\x1B[32m",Xt(t))} ${r} Resources ready! (${Ch(e)})`}function kh(e,t={}){let r=Xt(t),n=ue("▌","\x1B[32m",r),o=ue("↑","\x1B[32m",r);return`${n} ${o} Synced ${e.length} env var(s) from .env.local: ${e.join(", ")}`}function $h(e,t={}){let r=Xt(t);return e.map((n)=>{let o=Ah(n.operation,r);if(n.operation==="rename"&&n.previousName)return` ${o} ${n.kind}:${n.previousName} -> ${n.name}`;return` ${o} ${n.kind}:${n.name}`})}function Mh(e,t={}){return ue(e,"\x1B[33m",Xt(t))}function Rs(e){console.error(Eh(e))}function As(e){console.error(Ih(e))}function Cs(e){console.error(kh(e))}function Fr(e){for(let t of $h(e))console.log(t)}function J(e){console.log(Mh(e))}function Xt(e){if(e.color!==void 0)return e.color;if(Object.hasOwn(process.env,"NO_COLOR"))return!1;if(process.env.FORCE_COLOR&&process.env.FORCE_COLOR!=="0")return!0;return process.stderr.isTTY&&process.env.TERM!=="dumb"}function ue(e,t,r){return r?`${t}${e}\x1B[0m`:e}function Rh(e){let t=e.trim().toLowerCase();if(t==="development")return"Development";if(t==="production")return"Production";return e.trim()}function Ah(e,t){if(e==="create")return`[${ue("+","\x1B[32m",t)}]`;if(e==="rename")return`[${ue("~","\x1B[33m",t)}]`;if(e==="update")return`[${ue("*","\x1B[36m",t)}]`;return`[${ue("-","\x1B[31m",t)}]`}function Ch(e){if(e>=1000)return`${(e/1000).toFixed(2)}s`;return`${Math.max(e,0).toFixed(1)}ms`}var ci="vercel.ai.error",Oh=Symbol.for(ci),Os,Ps,k=class e extends(Ps=Error,Os=Oh,Ps){constructor({name:t,message:r,cause:n}){super(r);this[Os]=!0,this.name=t,this.cause=n}static isInstance(t){return e.hasMarker(t,ci)}static hasMarker(t,r){let n=Symbol.for(r);return t!=null&&typeof t==="object"&&n in t&&typeof t[n]==="boolean"&&t[n]===!0}},ui="AI_APICallError",di=`vercel.ai.error.${ui}`,Ph=Symbol.for(di),Ns,zs,LS=class extends(zs=k,Ns=Ph,zs){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:o,responseBody:a,cause:s,isRetryable:i=n!=null&&(n===408||n===409||n===429||n>=500),data:c}){super({name:ui,message:e,cause:s});this[Ns]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=o,this.responseBody=a,this.isRetryable=i,this.data=c}static isInstance(e){return k.hasMarker(e,di)}},pi="AI_EmptyResponseBodyError",fi=`vercel.ai.error.${pi}`,Nh=Symbol.for(fi),js,Ds,FS=class extends(Ds=k,js=Nh,Ds){constructor({message:e="Empty response body"}={}){super({name:pi,message:e});this[js]=!0}static isInstance(e){return k.hasMarker(e,fi)}};function Qt(e){if(e==null)return"unknown error";if(typeof e==="string")return e;if(e instanceof Error)return e.toString();return JSON.stringify(e)}var mi="AI_InvalidArgumentError",hi=`vercel.ai.error.${mi}`,zh=Symbol.for(hi),Us,Zs,gi=class extends(Zs=k,Us=zh,Zs){constructor({message:e,cause:t,argument:r}){super({name:mi,message:e,cause:t});this[Us]=!0,this.argument=r}static isInstance(e){return k.hasMarker(e,hi)}},vi="AI_InvalidPromptError",yi=`vercel.ai.error.${vi}`,jh=Symbol.for(yi),Ls,Fs,BS=class extends(Fs=k,Ls=jh,Fs){constructor({prompt:e,message:t,cause:r}){super({name:vi,message:`Invalid prompt: ${t}`,cause:r});this[Ls]=!0,this.prompt=e}static isInstance(e){return k.hasMarker(e,yi)}},bi="AI_InvalidResponseDataError",wi=`vercel.ai.error.${bi}`,Dh=Symbol.for(wi),Bs,qs,qS=class extends(qs=k,Bs=Dh,qs){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:bi,message:t});this[Bs]=!0,this.data=e}static isInstance(e){return k.hasMarker(e,wi)}},xi="AI_JSONParseError",_i=`vercel.ai.error.${xi}`,Uh=Symbol.for(_i),Ws,Vs,Ln=class extends(Vs=k,Ws=Uh,Vs){constructor({text:e,cause:t}){super({name:xi,message:`JSON parsing failed: Text: ${e}.
|
|
66
|
+
Error message: ${Qt(t)}`,cause:t});this[Ws]=!0,this.text=e}static isInstance(e){return k.hasMarker(e,_i)}},Si="AI_LoadAPIKeyError",Ti=`vercel.ai.error.${Si}`,Zh=Symbol.for(Ti),Gs,Js,WS=class extends(Js=k,Gs=Zh,Js){constructor({message:e}){super({name:Si,message:e});this[Gs]=!0}static isInstance(e){return k.hasMarker(e,Ti)}},Ii="AI_LoadSettingError",Ei=`vercel.ai.error.${Ii}`,Lh=Symbol.for(Ei),Ks,Hs,VS=class extends(Hs=k,Ks=Lh,Hs){constructor({message:e}){super({name:Ii,message:e});this[Ks]=!0}static isInstance(e){return k.hasMarker(e,Ei)}},ki="AI_NoContentGeneratedError",$i=`vercel.ai.error.${ki}`,Fh=Symbol.for($i),Ys,Xs,GS=class extends(Xs=k,Ys=Fh,Xs){constructor({message:e="No content generated."}={}){super({name:ki,message:e});this[Ys]=!0}static isInstance(e){return k.hasMarker(e,$i)}},Mi="AI_NoSuchModelError",Ri=`vercel.ai.error.${Mi}`,Bh=Symbol.for(Ri),Qs,ei,JS=class extends(ei=k,Qs=Bh,ei){constructor({errorName:e=Mi,modelId:t,modelType:r,message:n=`No such ${r}: ${t}`}){super({name:e,message:n});this[Qs]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return k.hasMarker(e,Ri)}},Ai="AI_NoSuchProviderReferenceError",Ci=`vercel.ai.error.${Ai}`,qh=Symbol.for(Ci),ti,ri,KS=class extends(ri=k,ti=qh,ri){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:Ai,message:r});this[ti]=!0,this.provider=e,this.reference=t}static isInstance(e){return k.hasMarker(e,Ci)}},Oi="AI_TooManyEmbeddingValuesForCallError",Pi=`vercel.ai.error.${Oi}`,Wh=Symbol.for(Pi),ni,oi,HS=class extends(oi=k,ni=Wh,oi){constructor(e){super({name:Oi,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`});this[ni]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return k.hasMarker(e,Pi)}},Ni="AI_TypeValidationError",zi=`vercel.ai.error.${Ni}`,Vh=Symbol.for(zi),ai,si,$e=class e extends(si=k,ai=Vh,si){constructor({value:t,cause:r,context:n}){let o="Type validation failed";if(n==null?void 0:n.field)o+=` for ${n.field}`;if((n==null?void 0:n.entityName)||(n==null?void 0:n.entityId)){o+=" (";let a=[];if(n.entityName)a.push(n.entityName);if(n.entityId)a.push(`id: "${n.entityId}"`);o+=a.join(", "),o+=")"}super({name:Ni,message:`${o}: Value: ${JSON.stringify(t)}.
|
|
67
|
+
Error message: ${Qt(r)}`,cause:r});this[ai]=!0,this.value=t,this.context=n}static isInstance(t){return k.hasMarker(t,zi)}static wrap({value:t,cause:r,context:n}){var o,a,s;if(e.isInstance(r)&&r.value===t&&((o=r.context)==null?void 0:o.field)===(n==null?void 0:n.field)&&((a=r.context)==null?void 0:a.entityName)===(n==null?void 0:n.entityName)&&((s=r.context)==null?void 0:s.entityId)===(n==null?void 0:n.entityId))return r;return new e({value:t,cause:r,context:n})}},ji="AI_UnsupportedFunctionalityError",Di=`vercel.ai.error.${ji}`,Gh=Symbol.for(Di),ii,li,YS=class extends(li=k,ii=Gh,li){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:ji,message:t});this[ii]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,Di)}};var Ui;function g(e,t,r){function n(i,c){if(!i._zod)Object.defineProperty(i,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1});if(i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,c);let u=s.prototype,d=Object.keys(u);for(let p=0;p<d.length;p++){let f=d[p];if(!(f in i))i[f]=u[f].bind(i)}}let o=r?.Parent??Object;class a extends o{}Object.defineProperty(a,"name",{value:e});function s(i){var c;let u=r?.Parent?new a:this;n(u,i),(c=u._zod).deferred??(c.deferred=[]);for(let d of u._zod.deferred)d();return u}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:(i)=>{if(r?.Parent&&i instanceof r.Parent)return!0;return i?._zod?.traits?.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}var pT=Symbol("zod_brand");class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class er extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Ui=globalThis).__zod_globalConfig??(Ui.__zod_globalConfig={});var Ct=globalThis.__zod_globalConfig;function xe(e){if(e)Object.assign(Ct,e);return Ct}var O={};Jh(O,{BIGINT_FORMAT_RANGES:()=>qi,Class:()=>Ji,NUMBER_FORMAT_RANGES:()=>Jn,aborted:()=>Ke,allowsEval:()=>Wn,assert:()=>Qh,assertEqual:()=>Kh,assertIs:()=>Yh,assertNever:()=>Xh,assertNotEqual:()=>Hh,assignProp:()=>Ge,base64ToUint8Array:()=>Vi,base64urlToUint8Array:()=>yg,cached:()=>Pt,captureStackTrace:()=>qr,cleanEnum:()=>vg,cleanRegex:()=>or,clone:()=>_e,cloneDef:()=>rg,createTransparentProxy:()=>lg,defineLazy:()=>A,esc:()=>Br,escapeRegex:()=>Ne,explicitlyAborted:()=>Kn,extend:()=>dg,finalizeIssue:()=>ye,floatSafeRemainder:()=>Bn,getElementAtPath:()=>ng,getEnumValues:()=>rr,getLengthableOrigin:()=>ar,getParsedType:()=>ig,getSizableOrigin:()=>Wi,hexToUint8Array:()=>wg,isObject:()=>ft,isPlainObject:()=>Je,issue:()=>Nt,joinValues:()=>eg,jsonStringifyReplacer:()=>Ot,merge:()=>fg,mergeDefs:()=>Pe,normalizeParams:()=>I,nullish:()=>nr,numKeys:()=>sg,objectClone:()=>tg,omit:()=>ug,optionalKeys:()=>Gn,parsedType:()=>gg,partial:()=>mg,pick:()=>cg,prefixIssues:()=>ze,primitiveTypes:()=>Fi,promiseAllObject:()=>og,propertyKeyTypes:()=>Vn,randomString:()=>ag,required:()=>hg,safeExtend:()=>pg,shallowClone:()=>Li,slugify:()=>qn,stringifyPrimitive:()=>Bi,uint8ArrayToBase64:()=>Gi,uint8ArrayToBase64url:()=>bg,uint8ArrayToHex:()=>xg,unwrapMessage:()=>tr});function Kh(e){return e}function Hh(e){return e}function Yh(e){}function Xh(e){throw Error("Unexpected value in exhaustive check")}function Qh(e){}function rr(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function eg(e,t="|"){return e.map((r)=>Bi(r)).join(t)}function Ot(e,t){if(typeof t==="bigint")return t.toString();return t}function Pt(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function nr(e){return e===null||e===void 0}function or(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Bn(e,t){let r=e/t,n=Math.round(r),o=Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}var Zi=Symbol("evaluating");function A(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Zi)return;if(n===void 0)n=Zi,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function tg(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Ge(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Pe(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function rg(e){return Pe(e._zod.def)}function ng(e,t){if(!t)return e;return t.reduce((r,n)=>r?.[n],e)}function og(e){let t=Object.keys(e),r=t.map((n)=>e[n]);return Promise.all(r).then((n)=>{let o={};for(let a=0;a<t.length;a++)o[t[a]]=n[a];return o})}function ag(e=10){let r="";for(let n=0;n<e;n++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function Br(e){return JSON.stringify(e)}function qn(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var qr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ft(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Wn=Pt(()=>{if(Ct.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Je(e){if(ft(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(ft(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Li(e){if(Je(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}function sg(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var ig=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Vn=new Set(["string","number","symbol"]),Fi=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ne(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _e(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function I(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function lg(e){let t;return new Proxy({},{get(r,n,o){return t??(t=e()),Reflect.get(t,n,o)},set(r,n,o,a){return t??(t=e()),Reflect.set(t,n,o,a)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,o){return t??(t=e()),Reflect.defineProperty(t,n,o)}})}function Bi(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Gn(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Jn={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},qi={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function cg(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let a=Pe(e._zod.def,{get shape(){let s={};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;s[i]=r.shape[i]}return Ge(this,"shape",s),s},checks:[]});return _e(e,a)}function ug(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let a=Pe(e._zod.def,{get shape(){let s={...e._zod.def.shape};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;delete s[i]}return Ge(this,"shape",s),s},checks:[]});return _e(e,a)}function dg(e,t){if(!Je(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let a=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(a,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=Pe(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Ge(this,"shape",a),a}});return _e(e,o)}function pg(e,t){if(!Je(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=Pe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Ge(this,"shape",n),n}});return _e(e,r)}function fg(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=Pe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Ge(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return _e(e,r)}function mg(e,t,r){let o=t._zod.def.checks;if(o&&o.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let s=Pe(t._zod.def,{get shape(){let i=t._zod.def.shape,c={...i};if(r)for(let u in r){if(!(u in i))throw Error(`Unrecognized key: "${u}"`);if(!r[u])continue;c[u]=e?new e({type:"optional",innerType:i[u]}):i[u]}else for(let u in i)c[u]=e?new e({type:"optional",innerType:i[u]}):i[u];return Ge(this,"shape",c),c},checks:[]});return _e(t,s)}function hg(e,t,r){let n=Pe(t._zod.def,{get shape(){let o=t._zod.def.shape,a={...o};if(r)for(let s in r){if(!(s in a))throw Error(`Unrecognized key: "${s}"`);if(!r[s])continue;a[s]=new e({type:"nonoptional",innerType:o[s]})}else for(let s in o)a[s]=new e({type:"nonoptional",innerType:o[s]});return Ge(this,"shape",a),a}});return _e(t,n)}function Ke(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Kn(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function ze(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function tr(e){return typeof e==="string"?e:e?.message}function ye(e,t,r){let n=e.message?e.message:tr(e.inst?._zod.def?.error?.(e))??tr(t?.error?.(e))??tr(r.customError?.(e))??tr(r.localeError?.(e))??"Invalid input",{inst:o,continue:a,input:s,...i}=e;if(i.path??(i.path=[]),i.message=n,t?.reportInput)i.input=s;return i}function Wi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function ar(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function gg(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Nt(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function vg(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function Vi(e){let t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}function Gi(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function yg(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return Vi(t+r)}function bg(e){return Gi(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function wg(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let r=new Uint8Array(t.length/2);for(let n=0;n<t.length;n+=2)r[n/2]=Number.parseInt(t.slice(n,n+2),16);return r}function xg(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Ji{constructor(...e){}}var Ki=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Ot,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Wr=g("$ZodError",Ki),Hn=g("$ZodError",Ki,{Parent:Error});function Hi(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function Yi(e,t=(r)=>r.message){let r={_errors:[]},n=(o,a=[])=>{for(let s of o.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map((i)=>n({issues:i},[...a,...s.path]));else if(s.code==="invalid_key")n({issues:s.issues},[...a,...s.path]);else if(s.code==="invalid_element")n({issues:s.issues},[...a,...s.path]);else{let i=[...a,...s.path];if(i.length===0)r._errors.push(t(s));else{let c=r,u=0;while(u<i.length){let d=i[u];if(u!==i.length-1)c[d]=c[d]||{_errors:[]};else c[d]=c[d]||{_errors:[]},c[d]._errors.push(t(s));c=c[d],u++}}}};return n(e),r}var Vr=(e)=>(t,r,n,o)=>{let a=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)throw new Oe;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>ye(c,a,xe())));throw qr(i,o?.callee),i}return s.value};var Gr=(e)=>async(t,r,n,o)=>{let a=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)s=await s;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>ye(c,a,xe())));throw qr(i,o?.callee),i}return s.value};var sr=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new Oe;return a.issues.length?{success:!1,error:new(e??Wr)(a.issues.map((s)=>ye(s,o,xe())))}:{success:!0,data:a.value}},Xi=sr(Hn),ir=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((s)=>ye(s,o,xe())))}:{success:!0,data:a.value}},Qi=ir(Hn),el=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Vr(e)(t,r,o)};var tl=(e)=>(t,r,n)=>Vr(e)(t,r,n);var rl=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Gr(e)(t,r,o)};var nl=(e)=>async(t,r,n)=>Gr(e)(t,r,n);var ol=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return sr(e)(t,r,o)};var al=(e)=>(t,r,n)=>sr(e)(t,r,n);var sl=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ir(e)(t,r,o)};var il=(e)=>async(t,r,n)=>ir(e)(t,r,n);var ll=/^[cC][0-9a-z]{6,}$/,cl=/^[0-9a-z]+$/,ul=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,dl=/^[0-9a-vA-V]{20}$/,pl=/^[A-Za-z0-9]{27}$/,fl=/^[a-zA-Z0-9_-]{21}$/,ml=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var hl=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Yn=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var gl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Sg="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function vl(){return new RegExp(Sg,"u")}var yl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,bl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var wl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,xl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,_l=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xn=/^[A-Za-z0-9_-]*$/;var Sl=/^https?$/,Tl=/^\+[1-9]\d{6,14}$/,Il="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",El=new RegExp(`^${Il}$`);function kl(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function $l(e){return new RegExp(`^${kl(e)}$`)}function Ml(e){let t=kl({precision:e.precision}),r=["Z"];if(e.local)r.push("");if(e.offset)r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${Il}T(?:${n})$`)}var Rl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Al=/^-?\d+$/,Jr=/^-?\d+(?:\.\d+)?$/,Cl=/^(?:true|false)$/i,Ol=/^null$/i;var Pl=/^[^A-Z]*$/,Nl=/^[^a-z]*$/;var Q=g("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),zl={number:"number",bigint:"bigint",object:"date"},Qn=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let r=zl[typeof t.value];e._zod.onattach.push((n)=>{let o=n._zod.bag,a=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)o.maximum=t.value;else o.exclusiveMaximum=t.value}),e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),eo=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let r=zl[typeof t.value];e._zod.onattach.push((n)=>{let o=n._zod.bag,a=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)o.minimum=t.value;else o.exclusiveMinimum=t.value}),e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),jl=g("$ZodCheckMultipleOf",(e,t)=>{Q.init(e,t),e._zod.onattach.push((r)=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?r.value%t.value===BigInt(0):Bn(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Dl=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,a]=Jn[t.format];e._zod.onattach.push((s)=>{let i=s._zod.bag;if(i.format=t.format,i.minimum=o,i.maximum=a,r)i.pattern=Al}),e._zod.check=(s)=>{let i=s.value;if(r){if(!Number.isInteger(i)){s.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:i,inst:e});return}if(!Number.isSafeInteger(i)){if(i>0)s.issues.push({input:i,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else s.issues.push({input:i,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(i<o)s.issues.push({origin:"number",input:i,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(i>a)s.issues.push({origin:"number",input:i,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}});var Ul=g("$ZodCheckMaxLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)n._zod.bag.maximum=t.maximum}),e._zod.check=(n)=>{let o=n.value;if(o.length<=t.maximum)return;let s=ar(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Zl=g("$ZodCheckMinLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)n._zod.bag.minimum=t.minimum}),e._zod.check=(n)=>{let o=n.value;if(o.length>=t.minimum)return;let s=ar(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ll=g("$ZodCheckLengthEquals",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=(n)=>{let o=n.value,a=o.length;if(a===t.length)return;let s=ar(o),i=a>t.length;n.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),lr=g("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Q.init(e,t),e._zod.onattach.push((o)=>{let a=o._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),Fl=g("$ZodCheckRegex",(e,t)=>{lr.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Bl=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Pl),lr.init(e,t)}),ql=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Nl),lr.init(e,t)}),Wl=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let r=Ne(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push((o)=>{let a=o._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(n)}),e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Vl=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`^${Ne(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Gl=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`.*${Ne(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var Jl=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class to{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
68
|
+
`).filter((a)=>a),n=Math.min(...r.map((a)=>a.length-a.trimStart().length)),o=r.map((a)=>a.slice(n)).map((a)=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[""]).map((o)=>` ${o}`)];return new e(...t,n.join(`
|
|
69
|
+
`))}}var Hl={major:4,minor:4,patch:3};var F=g("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Hl;let n=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))n.unshift(e);for(let o of n)for(let a of o._zod.onattach)a(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(s,i,c)=>{let u=Ke(s),d;for(let p of i){if(p._zod.def.when){if(Kn(s))continue;if(!p._zod.def.when(s))continue}else if(u)continue;let f=s.issues.length,m=p._zod.check(s);if(m instanceof Promise&&c?.async===!1)throw new Oe;if(d||m instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await m,s.issues.length===f)return;if(!u)u=Ke(s,f)});else{if(s.issues.length===f)continue;if(!u)u=Ke(s,f)}}if(d)return d.then(()=>s);return s},a=(s,i,c)=>{if(Ke(s))return s.aborted=!0,s;let u=o(i,n,c);if(u instanceof Promise){if(c.async===!1)throw new Oe;return u.then((d)=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(s,i)=>{if(i.skipChecks)return e._zod.parse(s,i);if(i.direction==="backward"){let u=e._zod.parse({value:s.value,issues:[]},{...i,skipChecks:!0});if(u instanceof Promise)return u.then((d)=>a(d,s,i));return a(u,s,i)}let c=e._zod.parse(s,i);if(c instanceof Promise){if(i.async===!1)throw new Oe;return c.then((u)=>o(u,n,i))}return o(c,n,i)}}A(e,"~standard",()=>({validate:(o)=>{try{let a=Xi(e,o);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Qi(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Xr=g("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Rl(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),B=g("$ZodStringFormat",(e,t)=>{lr.init(e,t),Xr.init(e,t)}),ac=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=hl),B.init(e,t)}),sc=g("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Yn(n))}else t.pattern??(t.pattern=Yn());B.init(e,t)}),ic=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=gl),B.init(e,t)}),lc=g("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim();if(!t.normalize&&t.protocol?.source===Sl.source){if(!/^https?:\/\//i.test(n)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}}let o=new URL(n);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(o.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})}if(t.normalize)r.value=o.href;else r.value=n;return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),cc=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=vl()),B.init(e,t)}),uc=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=fl),B.init(e,t)}),dc=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=ll),B.init(e,t)}),pc=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=cl),B.init(e,t)}),fc=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)}),mc=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=dl),B.init(e,t)}),hc=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=pl),B.init(e,t)}),gc=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ml(t)),B.init(e,t)}),vc=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=El),B.init(e,t)}),yc=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=$l(t)),B.init(e,t)}),bc=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=ml),B.init(e,t)}),wc=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=yl),B.init(e,t),e._zod.bag.format="ipv4"}),xc=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=bl),B.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(r)=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}});var _c=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=wl),B.init(e,t)}),Sc=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=xl),B.init(e,t),e._zod.check=(r)=>{let n=r.value.split("/");try{if(n.length!==2)throw Error();let[o,a]=n;if(!a)throw Error();let s=Number(a);if(`${s}`!==a)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function Tc(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Ic=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=_l),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(Tc(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Tg(e){if(!Xn.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Tc(r)}var Ec=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Xn),B.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(r)=>{if(Tg(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),kc=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Tl),B.init(e,t)});function Ig(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var $c=g("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(Ig(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var no=g("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Jr,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(s){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let a=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?"Infinity":void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...a?{received:a}:{}}),r}}),Mc=g("$ZodNumberFormat",(e,t)=>{Dl.init(e,t),no.init(e,t)}),Rc=g("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=Cl,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(a){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var Ac=g("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=Ol,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;if(o===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}});var Cc=g("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),Oc=g("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Yl(e,t,r){if(e.issues.length)t.issues.push(...ze(r,e.issues));t.value[r]=e.value}var Pc=g("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);let a=[];for(let s=0;s<o.length;s++){let i=o[s],c=t.element._zod.run({value:i,issues:[]},n);if(c instanceof Promise)a.push(c.then((u)=>Yl(u,r,s)));else Yl(c,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function Yr(e,t,r,n,o,a){let s=r in n;if(e.issues.length){if(o&&a&&!s)return;t.issues.push(...ze(r,e.issues))}if(!s&&!o){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(s)t.value[r]=void 0}else t.value[r]=e.value}function Nc(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let r=Gn(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function zc(e,t,r,n,o,a){let s=[],i=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optin==="optional",p=c.optout==="optional";for(let f in t){if(f==="__proto__")continue;if(i.has(f))continue;if(u==="never"){s.push(f);continue}let m=c.run({value:t[f],issues:[]},n);if(m instanceof Promise)e.push(m.then((y)=>Yr(y,r,f,t,d,p)));else Yr(m,r,f,t,d,p)}if(s.length)r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:a});if(!e.length)return r;return Promise.all(e).then(()=>r)}var Eg=g("$ZodObject",(e,t)=>{if(F.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let i=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...i};return Object.defineProperty(t,"shape",{value:c}),c}})}let n=Pt(()=>Nc(t));A(e._zod,"propValues",()=>{let i=t.shape,c={};for(let u in i){let d=i[u]._zod;if(d.values){c[u]??(c[u]=new Set);for(let p of d.values)c[u].add(p)}}return c});let o=ft,a=t.catchall,s;e._zod.parse=(i,c)=>{s??(s=n.value);let u=i.value;if(!o(u))return i.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),i;i.value={};let d=[],p=s.shape;for(let f of s.keys){let m=p[f],y=m._zod.optin==="optional",v=m._zod.optout==="optional",_=m._zod.run({value:u[f],issues:[]},c);if(_ instanceof Promise)d.push(_.then((j)=>Yr(j,i,f,u,y,v)));else Yr(_,i,f,u,y,v)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return zc(d,u,i,c,n.value,e)}}),jc=g("$ZodObjectJIT",(e,t)=>{Eg.init(e,t);let r=e._zod.parse,n=Pt(()=>Nc(t)),o=(f)=>{let m=new to(["shape","payload","ctx"]),y=n.value,v=(Z)=>{let R=Br(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};m.write("const input = payload.value;");let _=Object.create(null),j=0;for(let Z of y.keys)_[Z]=`key_${j++}`;m.write("const newResult = {};");for(let Z of y.keys){let R=_[Z],P=Br(Z),h=f[Z],N=h?._zod?.optin==="optional",V=h?._zod?.optout==="optional";if(m.write(`const ${R} = ${v(Z)};`),N&&V)m.write(`
|
|
70
70
|
if (${R}.issues.length) {
|
|
71
71
|
if (${P} in input) {
|
|
72
72
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
@@ -84,7 +84,7 @@ Error message: ${Yt(r)}`,cause:r});this[Bs]=!0,this.value=t,this.context=o}stati
|
|
|
84
84
|
newResult[${P}] = ${R}.value;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
`);else if(!N)
|
|
87
|
+
`);else if(!N)m.write(`
|
|
88
88
|
const ${R}_present = ${P} in input;
|
|
89
89
|
if (${R}.issues.length) {
|
|
90
90
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
@@ -109,7 +109,7 @@ Error message: ${Yt(r)}`,cause:r});this[Bs]=!0,this.value=t,this.context=o}stati
|
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
`);else
|
|
112
|
+
`);else m.write(`
|
|
113
113
|
if (${R}.issues.length) {
|
|
114
114
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
115
115
|
...iss,
|
|
@@ -125,38 +125,39 @@ Error message: ${Yt(r)}`,cause:r});this[Bs]=!0,this.value=t,this.context=o}stati
|
|
|
125
125
|
newResult[${P}] = ${R}.value;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
`)}h.write("payload.value = newResult;"),h.write("return payload;");let C=h.compile();return(Z,R)=>C(f,Z,R)},a,s=ct,i=!Mt.jitless,c=i&&Fo.value,d=t.catchall,p;e._zod.parse=(f,h)=>{p??(p=o.value);let y=f.value;if(!s(y))return f.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),f;if(i&&c&&h?.async===!1&&h.jitless!==!0){if(!a)a=n(t.shape);if(f=a(f,h),!d)return f;return bc([],y,f,h,p,e)}return r(f,h)}});function zl(e,t,r,o){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let n=e.filter((a)=>!Je(a));if(n.length===1)return t.value=n[0].value,n[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((a)=>a.issues.map((s)=>ye(s,o,be())))}),t}var tn=g("$ZodUnion",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.options.some((o)=>o._zod.optin==="optional")?"optional":void 0),A(e._zod,"optout",()=>t.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),A(e._zod,"values",()=>{if(t.options.every((o)=>o._zod.values))return new Set(t.options.flatMap((o)=>Array.from(o._zod.values)));return}),A(e._zod,"pattern",()=>{if(t.options.every((o)=>o._zod.pattern)){let o=t.options.map((n)=>n._zod.pattern);return new RegExp(`^(${o.map((n)=>rr(n.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(o,n)=>{if(r)return r(o,n);let a=!1,s=[];for(let i of t.options){let u=i._zod.run({value:o.value,issues:[]},n);if(u instanceof Promise)s.push(u),a=!0;else{if(u.issues.length===0)return u;s.push(u)}}if(!a)return zl(s,o,e,n);return Promise.all(s).then((i)=>zl(i,o,e,n))}});var _c=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,tn.init(e,t);let r=e._zod.parse;A(e._zod,"propValues",()=>{let n={};for(let a of t.options){let s=a._zod.propValues;if(!s||Object.keys(s).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[i,u]of Object.entries(s)){if(!n[i])n[i]=new Set;for(let c of u)n[i].add(c)}}return n});let o=At(()=>{let n=t.options,a=new Map;for(let s of n){let i=s._zod.propValues?.[t.discriminator];if(!i||i.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let u of i){if(a.has(u))throw Error(`Duplicate discriminator value "${String(u)}"`);a.set(u,s)}}return a});e._zod.parse=(n,a)=>{let s=n.value;if(!ct(s))return n.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),n;let i=o.value.get(s?.[t.discriminator]);if(i)return i._zod.run(n,a);if(t.unionFallback||a.direction==="backward")return r(n,a);return n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(o.value.keys()),input:s,path:[t.discriminator],inst:e}),n}}),Sc=g("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value,a=t.left._zod.run({value:n,issues:[]},o),s=t.right._zod.run({value:n,issues:[]},o);if(a instanceof Promise||s instanceof Promise)return Promise.all([a,s]).then(([u,c])=>jl(r,u,c));return jl(r,a,s)}});function Qo(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Ve(e)&&Ve(t)){let r=Object.keys(t),o=Object.keys(e).filter((a)=>r.indexOf(a)!==-1),n={...e,...t};for(let a of o){let s=Qo(e[a],t[a]);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};n[a]=s.data}return{valid:!0,data:n}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let o=0;o<e.length;o++){let n=e[o],a=t[o],s=Qo(n,a);if(!s.valid)return{valid:!1,mergeErrorPath:[o,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function jl(e,t,r){let o=new Map,n;for(let i of t.issues)if(i.code==="unrecognized_keys"){n??(n=i);for(let u of i.keys){if(!o.has(u))o.set(u,{});o.get(u).l=!0}}else e.issues.push(i);for(let i of r.issues)if(i.code==="unrecognized_keys")for(let u of i.keys){if(!o.has(u))o.set(u,{});o.get(u).r=!0}else e.issues.push(i);let a=[...o].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(a.length&&n)e.issues.push({...n,keys:a});if(Je(e))return e;let s=Qo(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Tc=g("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value;if(!Ve(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:e}),r;let a=[],s=t.keyType._zod.values;if(s){r.value={};let i=new Set;for(let c of s)if(typeof c==="string"||typeof c==="number"||typeof c==="symbol"){i.add(typeof c==="number"?c.toString():c);let d=t.keyType._zod.run({value:c,issues:[]},o);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((h)=>ye(h,o,be())),input:c,path:[c],inst:e});continue}let p=d.value,f=t.valueType._zod.run({value:n[c],issues:[]},o);if(f instanceof Promise)a.push(f.then((h)=>{if(h.issues.length)r.issues.push(...ze(c,h.issues));r.value[p]=h.value}));else{if(f.issues.length)r.issues.push(...ze(c,f.issues));r.value[p]=f.value}}let u;for(let c in n)if(!i.has(c))u=u??[],u.push(c);if(u&&u.length>0)r.issues.push({code:"unrecognized_keys",input:n,inst:e,keys:u})}else{r.value={};for(let i of Reflect.ownKeys(n)){if(i==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(n,i))continue;let u=t.keyType._zod.run({value:i,issues:[]},o);if(u instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof i==="string"&&Vr.test(i)&&u.issues.length){let p=t.keyType._zod.run({value:Number(i),issues:[]},o);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length===0)u=p}if(u.issues.length){if(t.mode==="loose")r.value[i]=n[i];else r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map((p)=>ye(p,o,be())),input:i,path:[i],inst:e});continue}let d=t.valueType._zod.run({value:n[i],issues:[]},o);if(d instanceof Promise)a.push(d.then((p)=>{if(p.issues.length)r.issues.push(...ze(i,p.issues));r.value[u.value]=p.value}));else{if(d.issues.length)r.issues.push(...ze(i,d.issues));r.value[u.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var Ic=g("$ZodEnum",(e,t)=>{F.init(e,t);let r=er(t.entries),o=new Set(r);e._zod.values=o,e._zod.pattern=new RegExp(`^(${r.filter((n)=>Bo.has(typeof n)).map((n)=>typeof n==="string"?Ne(n):n.toString()).join("|")})$`),e._zod.parse=(n,a)=>{let s=n.value;if(o.has(s))return n;return n.issues.push({code:"invalid_value",values:r,input:s,inst:e}),n}}),Ec=g("$ZodLiteral",(e,t)=>{if(F.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map((o)=>typeof o==="string"?Ne(o):o?Ne(o.toString()):String(o)).join("|")})$`),e._zod.parse=(o,n)=>{let a=o.value;if(r.has(a))return o;return o.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),o}});var kc=g("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,o)=>{if(o.direction==="backward")throw new Xt(e.constructor.name);let n=t.transform(r.value,r);if(o.async)return(n instanceof Promise?n:Promise.resolve(n)).then((s)=>(r.value=s,r.fallback=!0,r));if(n instanceof Promise)throw new Oe;return r.value=n,r.fallback=!0,r}});function Dl(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var rn=g("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${rr(r.source)})?$`):void 0}),e._zod.parse=(r,o)=>{if(t.innerType._zod.optin==="optional"){let n=r.value,a=t.innerType._zod.run(r,o);if(a instanceof Promise)return a.then((s)=>Dl(s,n));return Dl(a,n)}if(r.value===void 0)return r;return t.innerType._zod.run(r,o)}}),$c=g("$ZodExactOptional",(e,t)=>{rn.init(e,t),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,o)=>t.innerType._zod.run(r,o)}),Mc=g("$ZodNullable",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.innerType._zod.optin),A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${rr(r.source)}|null)$`):void 0}),A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,o)=>{if(r.value===null)return r;return t.innerType._zod.run(r,o)}}),Rc=g("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);if(r.value===void 0)return r.value=t.defaultValue,r;let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Ul(a,t));return Ul(n,t)}});function Ul(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Ac=g("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,o)}}),Cc=g("$ZodNonOptional",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,o)=>{let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Zl(a,e));return Zl(n,e)}});function Zl(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}var Oc=g("$ZodCatch",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>{if(r.value=a.value,a.issues.length)r.value=t.catchValue({...r,error:{issues:a.issues.map((s)=>ye(s,o,be()))},input:r.value}),r.issues=[],r.fallback=!0;return r});if(r.value=n.value,n.issues.length)r.value=t.catchValue({...r,error:{issues:n.issues.map((a)=>ye(a,o,be()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var Pc=g("$ZodPipe",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>t.in._zod.values),A(e._zod,"optin",()=>t.in._zod.optin),A(e._zod,"optout",()=>t.out._zod.optout),A(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,o)=>{if(o.direction==="backward"){let a=t.out._zod.run(r,o);if(a instanceof Promise)return a.then((s)=>Kr(s,t.in,o));return Kr(a,t.in,o)}let n=t.in._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Kr(a,t.out,o));return Kr(n,t.out,o)}});function Kr(e,t,r){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},r)}var Nc=g("$ZodReadonly",(e,t)=>{F.init(e,t),A(e._zod,"propValues",()=>t.innerType._zod.propValues),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"optin",()=>t.innerType?._zod?.optin),A(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then(Ll);return Ll(n)}});function Ll(e){return e.value=Object.freeze(e.value),e}var zc=g("$ZodLazy",(e,t)=>{F.init(e,t),A(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),A(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),A(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),A(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),A(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,o)=>e._zod.innerType._zod.run(r,o)}),jc=g("$ZodCustom",(e,t)=>{Q.init(e,t),F.init(e,t),e._zod.parse=(r,o)=>r,e._zod.check=(r)=>{let o=r.value,n=t.fn(o);if(n instanceof Promise)return n.then((a)=>Fl(a,r,o,e));Fl(n,r,o,e);return}});function Fl(e,t,r,o){if(!e){let n={code:"custom",input:r,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};if(o._zod.def.params)n.params=o._zod.def.params;t.issues.push(Ct(n))}}var Dc,ZS=Symbol("ZodOutput"),LS=Symbol("ZodInput");class Uc{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let o={...r,...this._map.get(e)};return Object.keys(o).length?o:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function tg(){return new Uc}(Dc=globalThis).__zod_globalRegistry??(Dc.__zod_globalRegistry=tg());var ut=globalThis.__zod_globalRegistry;function Zc(e,t){return new e({type:"string",...I(t)})}function Lc(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function on(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function Fc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function Bc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function qc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function Wc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function Vc(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function Jc(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function Kc(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function Gc(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function Hc(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function Yc(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function Xc(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function Qc(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function eu(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function tu(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function ru(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function ou(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function nu(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function au(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function su(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function iu(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function lu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function cu(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function uu(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function du(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function pu(e,t){return new e({type:"number",checks:[],...I(t)})}function fu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function mu(e,t){return new e({type:"boolean",...I(t)})}function hu(e,t){return new e({type:"null",...I(t)})}function gu(e){return new e({type:"unknown"})}function vu(e,t){return new e({type:"never",...I(t)})}function Yr(e,t){return new Ho({check:"less_than",...I(t),value:e,inclusive:!1})}function ir(e,t){return new Ho({check:"less_than",...I(t),value:e,inclusive:!0})}function Xr(e,t){return new Yo({check:"greater_than",...I(t),value:e,inclusive:!1})}function lr(e,t){return new Yo({check:"greater_than",...I(t),value:e,inclusive:!0})}function Qr(e,t){return new xl({check:"multiple_of",...I(t),value:e})}function eo(e,t){return new Sl({check:"max_length",...I(t),maximum:e})}function Ot(e,t){return new Tl({check:"min_length",...I(t),minimum:e})}function to(e,t){return new Il({check:"length_equals",...I(t),length:e})}function nn(e,t){return new El({check:"string_format",format:"regex",...I(t),pattern:e})}function an(e){return new kl({check:"string_format",format:"lowercase",...I(e)})}function sn(e){return new $l({check:"string_format",format:"uppercase",...I(e)})}function ln(e,t){return new Ml({check:"string_format",format:"includes",...I(t),includes:e})}function cn(e,t){return new Rl({check:"string_format",format:"starts_with",...I(t),prefix:e})}function un(e,t){return new Al({check:"string_format",format:"ends_with",...I(t),suffix:e})}function Ke(e){return new Cl({check:"overwrite",tx:e})}function dn(e){return Ke((t)=>t.normalize(e))}function pn(){return Ke((e)=>e.trim())}function fn(){return Ke((e)=>e.toLowerCase())}function mn(){return Ke((e)=>e.toUpperCase())}function hn(){return Ke((e)=>Lo(e))}function yu(e,t,r){return new e({type:"array",element:t,...I(r)})}function wu(e,t,r){let o=I(r);return o.abort??(o.abort=!0),new e({type:"custom",check:"custom",fn:t,...o})}function bu(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function xu(e,t){let r=rg((o)=>(o.addIssue=(n)=>{if(typeof n==="string")o.issues.push(Ct(n,o.value,r._zod.def));else{let a=n;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=o.value),a.inst??(a.inst=r),a.continue??(a.continue=!r._zod.def.abort),o.issues.push(Ct(a))}},e(o.value,o)),t);return r}function rg(e,t){let r=new Q({check:"custom",...I(t)});return r._zod.check=e,r}function ur(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??ut,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function L(e,t,r={path:[],schemaPath:[]}){var o;let n=e._zod.def,a=t.seen.get(e);if(a){if(a.count++,r.schemaPath.includes(e))a.cycle=r.path;return a.schema}let s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);let i=e._zod.toJSONSchema?.();if(i)s.schema=i;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{let f=s.schema,h=t.processors[n.type];if(!h)throw Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);h(e,t,f,d)}let p=e._zod.parent;if(p){if(!s.ref)s.ref=p;L(p,t,d),t.seen.get(p).isParent=!0}}let u=t.metadataRegistry.get(e);if(u)Object.assign(s.schema,u);if(t.io==="input"&&re(e))delete s.schema.examples,delete s.schema.default;if(t.io==="input"&&"_prefault"in s.schema)(o=s.schema).default??(o.default=s.schema._prefault);return delete s.schema._prefault,t.seen.get(e).schema}function dr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let o=new Map;for(let s of e.seen.entries()){let i=e.metadataRegistry.get(s[0])?.id;if(i){let u=o.get(i);if(u&&u!==s[0])throw Error(`Duplicate schema id "${i}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);o.set(i,s[0])}}let n=(s)=>{let i=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let p=e.external.registry.get(s[0])?.id,f=e.external.uri??((y)=>y);if(p)return{ref:f(p)};let h=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=h,{defId:h,ref:`${f("__shared")}#/${i}/${h}`}}if(s[1]===r)return{ref:"#"};let c=`${"#"}/${i}/`,d=s[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:c+d}},a=(s)=>{if(s[1].schema.$ref)return;let i=s[1],{ref:u,defId:c}=n(s);if(i.def={...i.schema},c)i.defId=c;let d=i.schema;for(let p in d)delete d[p];d.$ref=u};if(e.cycles==="throw")for(let s of e.seen.entries()){let i=s[1];if(i.cycle)throw Error(`Cycle detected: #/${i.cycle?.join("/")}/<root>
|
|
128
|
+
`)}m.write("payload.value = newResult;"),m.write("return payload;");let C=m.compile();return(Z,R)=>C(f,Z,R)},a,s=ft,i=!Ct.jitless,u=i&&Wn.value,d=t.catchall,p;e._zod.parse=(f,m)=>{p??(p=n.value);let y=f.value;if(!s(y))return f.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),f;if(i&&u&&m?.async===!1&&m.jitless!==!0){if(!a)a=o(t.shape);if(f=a(f,m),!d)return f;return zc([],y,f,m,p,e)}return r(f,m)}});function Xl(e,t,r,n){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let o=e.filter((a)=>!Ke(a));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((a)=>a.issues.map((s)=>ye(s,n,xe())))}),t}var oo=g("$ZodUnion",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.options.some((n)=>n._zod.optin==="optional")?"optional":void 0),A(e._zod,"optout",()=>t.options.some((n)=>n._zod.optout==="optional")?"optional":void 0),A(e._zod,"values",()=>{if(t.options.every((n)=>n._zod.values))return new Set(t.options.flatMap((n)=>Array.from(n._zod.values)));return}),A(e._zod,"pattern",()=>{if(t.options.every((n)=>n._zod.pattern)){let n=t.options.map((o)=>o._zod.pattern);return new RegExp(`^(${n.map((o)=>or(o.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let a=!1,s=[];for(let i of t.options){let c=i._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)s.push(c),a=!0;else{if(c.issues.length===0)return c;s.push(c)}}if(!a)return Xl(s,n,e,o);return Promise.all(s).then((i)=>Xl(i,n,e,o))}});var Dc=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,oo.init(e,t);let r=e._zod.parse;A(e._zod,"propValues",()=>{let o={};for(let a of t.options){let s=a._zod.propValues;if(!s||Object.keys(s).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[i,c]of Object.entries(s)){if(!o[i])o[i]=new Set;for(let u of c)o[i].add(u)}}return o});let n=Pt(()=>{let o=t.options,a=new Map;for(let s of o){let i=s._zod.propValues?.[t.discriminator];if(!i||i.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of i){if(a.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);a.set(c,s)}}return a});e._zod.parse=(o,a)=>{let s=o.value;if(!ft(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let i=n.value.get(s?.[t.discriminator]);if(i)return i._zod.run(o,a);if(t.unionFallback||a.direction==="backward")return r(o,a);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(n.value.keys()),input:s,path:[t.discriminator],inst:e}),o}}),Uc=g("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,a=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);if(a instanceof Promise||s instanceof Promise)return Promise.all([a,s]).then(([c,u])=>Ql(r,c,u));return Ql(r,a,s)}});function ro(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Je(e)&&Je(t)){let r=Object.keys(t),n=Object.keys(e).filter((a)=>r.indexOf(a)!==-1),o={...e,...t};for(let a of n){let s=ro(e[a],t[a]);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};o[a]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],a=t[n],s=ro(o,a);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Ql(e,t,r){let n=new Map,o;for(let i of t.issues)if(i.code==="unrecognized_keys"){o??(o=i);for(let c of i.keys){if(!n.has(c))n.set(c,{});n.get(c).l=!0}}else e.issues.push(i);for(let i of r.issues)if(i.code==="unrecognized_keys")for(let c of i.keys){if(!n.has(c))n.set(c,{});n.get(c).r=!0}else e.issues.push(i);let a=[...n].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(a.length&&o)e.issues.push({...o,keys:a});if(Ke(e))return e;let s=ro(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Zc=g("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Je(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;let a=[],s=t.keyType._zod.values;if(s){r.value={};let i=new Set;for(let u of s)if(typeof u==="string"||typeof u==="number"||typeof u==="symbol"){i.add(typeof u==="number"?u.toString():u);let d=t.keyType._zod.run({value:u,issues:[]},n);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((m)=>ye(m,n,xe())),input:u,path:[u],inst:e});continue}let p=d.value,f=t.valueType._zod.run({value:o[u],issues:[]},n);if(f instanceof Promise)a.push(f.then((m)=>{if(m.issues.length)r.issues.push(...ze(u,m.issues));r.value[p]=m.value}));else{if(f.issues.length)r.issues.push(...ze(u,f.issues));r.value[p]=f.value}}let c;for(let u in o)if(!i.has(u))c=c??[],c.push(u);if(c&&c.length>0)r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(o,i))continue;let c=t.keyType._zod.run({value:i,issues:[]},n);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof i==="string"&&Jr.test(i)&&c.issues.length){let p=t.keyType._zod.run({value:Number(i),issues:[]},n);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length===0)c=p}if(c.issues.length){if(t.mode==="loose")r.value[i]=o[i];else r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>ye(p,n,xe())),input:i,path:[i],inst:e});continue}let d=t.valueType._zod.run({value:o[i],issues:[]},n);if(d instanceof Promise)a.push(d.then((p)=>{if(p.issues.length)r.issues.push(...ze(i,p.issues));r.value[c.value]=p.value}));else{if(d.issues.length)r.issues.push(...ze(i,d.issues));r.value[c.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var Lc=g("$ZodEnum",(e,t)=>{F.init(e,t);let r=rr(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter((o)=>Vn.has(typeof o)).map((o)=>typeof o==="string"?Ne(o):o.toString()).join("|")})$`),e._zod.parse=(o,a)=>{let s=o.value;if(n.has(s))return o;return o.issues.push({code:"invalid_value",values:r,input:s,inst:e}),o}}),Fc=g("$ZodLiteral",(e,t)=>{if(F.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map((n)=>typeof n==="string"?Ne(n):n?Ne(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,o)=>{let a=n.value;if(r.has(a))return n;return n.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),n}});var Bc=g("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new er(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((s)=>(r.value=s,r.fallback=!0,r));if(o instanceof Promise)throw new Oe;return r.value=o,r.fallback=!0,r}});function ec(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var ao=g("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${or(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){let o=r.value,a=t.innerType._zod.run(r,n);if(a instanceof Promise)return a.then((s)=>ec(s,o));return ec(a,o)}if(r.value===void 0)return r;return t.innerType._zod.run(r,n)}}),qc=g("$ZodExactOptional",(e,t)=>{ao.init(e,t),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Wc=g("$ZodNullable",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.innerType._zod.optin),A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${or(r.source)}|null)$`):void 0}),A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),Vc=g("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>tc(a,t));return tc(o,t)}});function tc(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Gc=g("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),Jc=g("$ZodNonOptional",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter((n)=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>rc(a,e));return rc(o,e)}});function rc(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}var Kc=g("$ZodCatch",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>{if(r.value=a.value,a.issues.length)r.value=t.catchValue({...r,error:{issues:a.issues.map((s)=>ye(s,n,xe()))},input:r.value}),r.issues=[],r.fallback=!0;return r});if(r.value=o.value,o.issues.length)r.value=t.catchValue({...r,error:{issues:o.issues.map((a)=>ye(a,n,xe()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var Hc=g("$ZodPipe",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>t.in._zod.values),A(e._zod,"optin",()=>t.in._zod.optin),A(e._zod,"optout",()=>t.out._zod.optout),A(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let a=t.out._zod.run(r,n);if(a instanceof Promise)return a.then((s)=>Hr(s,t.in,n));return Hr(a,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>Hr(a,t.out,n));return Hr(o,t.out,n)}});function Hr(e,t,r){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},r)}var Yc=g("$ZodReadonly",(e,t)=>{F.init(e,t),A(e._zod,"propValues",()=>t.innerType._zod.propValues),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"optin",()=>t.innerType?._zod?.optin),A(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(nc);return nc(o)}});function nc(e){return e.value=Object.freeze(e.value),e}var Xc=g("$ZodLazy",(e,t)=>{F.init(e,t),A(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),A(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),A(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),A(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),A(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Qc=g("$ZodCustom",(e,t)=>{Q.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((a)=>oc(a,r,n,e));oc(o,r,n,e);return}});function oc(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(Nt(o))}}var eu,MT=Symbol("ZodOutput"),RT=Symbol("ZodInput");class tu{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function kg(){return new tu}(eu=globalThis).__zod_globalRegistry??(eu.__zod_globalRegistry=kg());var mt=globalThis.__zod_globalRegistry;function ru(e,t){return new e({type:"string",...I(t)})}function nu(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function so(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function ou(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function au(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function su(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function iu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function lu(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function cu(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function uu(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function du(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function pu(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function fu(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function mu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function hu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function gu(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function vu(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function yu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function bu(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function wu(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function xu(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function _u(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function Su(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function Tu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function Iu(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function Eu(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function ku(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function $u(e,t){return new e({type:"number",checks:[],...I(t)})}function Mu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function Ru(e,t){return new e({type:"boolean",...I(t)})}function Au(e,t){return new e({type:"null",...I(t)})}function Cu(e){return new e({type:"unknown"})}function Ou(e,t){return new e({type:"never",...I(t)})}function Qr(e,t){return new Qn({check:"less_than",...I(t),value:e,inclusive:!1})}function cr(e,t){return new Qn({check:"less_than",...I(t),value:e,inclusive:!0})}function en(e,t){return new eo({check:"greater_than",...I(t),value:e,inclusive:!1})}function ur(e,t){return new eo({check:"greater_than",...I(t),value:e,inclusive:!0})}function tn(e,t){return new jl({check:"multiple_of",...I(t),value:e})}function rn(e,t){return new Ul({check:"max_length",...I(t),maximum:e})}function zt(e,t){return new Zl({check:"min_length",...I(t),minimum:e})}function nn(e,t){return new Ll({check:"length_equals",...I(t),length:e})}function io(e,t){return new Fl({check:"string_format",format:"regex",...I(t),pattern:e})}function lo(e){return new Bl({check:"string_format",format:"lowercase",...I(e)})}function co(e){return new ql({check:"string_format",format:"uppercase",...I(e)})}function uo(e,t){return new Wl({check:"string_format",format:"includes",...I(t),includes:e})}function po(e,t){return new Vl({check:"string_format",format:"starts_with",...I(t),prefix:e})}function fo(e,t){return new Gl({check:"string_format",format:"ends_with",...I(t),suffix:e})}function He(e){return new Jl({check:"overwrite",tx:e})}function mo(e){return He((t)=>t.normalize(e))}function ho(){return He((e)=>e.trim())}function go(){return He((e)=>e.toLowerCase())}function vo(){return He((e)=>e.toUpperCase())}function yo(){return He((e)=>qn(e))}function Pu(e,t,r){return new e({type:"array",element:t,...I(r)})}function Nu(e,t,r){let n=I(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function zu(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function ju(e,t){let r=$g((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Nt(o,n.value,r._zod.def));else{let a=o;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=r),a.continue??(a.continue=!r._zod.def.abort),n.issues.push(Nt(a))}},e(n.value,n)),t);return r}function $g(e,t){let r=new Q({check:"custom",...I(t)});return r._zod.check=e,r}function pr(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??mt,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function L(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,a=t.seen.get(e);if(a){if(a.count++,r.schemaPath.includes(e))a.cycle=r.path;return a.schema}let s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);let i=e._zod.toJSONSchema?.();if(i)s.schema=i;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{let f=s.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,d)}let p=e._zod.parent;if(p){if(!s.ref)s.ref=p;L(p,t,d),t.seen.get(p).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Object.assign(s.schema,c);if(t.io==="input"&&re(e))delete s.schema.examples,delete s.schema.default;if(t.io==="input"&&"_prefault"in s.schema)(n=s.schema).default??(n.default=s.schema._prefault);return delete s.schema._prefault,t.seen.get(e).schema}function fr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let s of e.seen.entries()){let i=e.metadataRegistry.get(s[0])?.id;if(i){let c=n.get(i);if(c&&c!==s[0])throw Error(`Duplicate schema id "${i}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(i,s[0])}}let o=(s)=>{let i=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let p=e.external.registry.get(s[0])?.id,f=e.external.uri??((y)=>y);if(p)return{ref:f(p)};let m=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=m,{defId:m,ref:`${f("__shared")}#/${i}/${m}`}}if(s[1]===r)return{ref:"#"};let u=`${"#"}/${i}/`,d=s[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:u+d}},a=(s)=>{if(s[1].schema.$ref)return;let i=s[1],{ref:c,defId:u}=o(s);if(i.def={...i.schema},u)i.defId=u;let d=i.schema;for(let p in d)delete d[p];d.$ref=c};if(e.cycles==="throw")for(let s of e.seen.entries()){let i=s[1];if(i.cycle)throw Error(`Cycle detected: #/${i.cycle?.join("/")}/<root>
|
|
129
129
|
|
|
130
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let s of e.seen.entries()){let i=s[1];if(t===s[0]){a(s);continue}if(e.external){let c=e.external.registry.get(s[0])?.id;if(t!==s[0]&&c){a(s);continue}}if(e.metadataRegistry.get(s[0])?.id){a(s);continue}if(i.cycle){a(s);continue}if(i.count>1){if(e.reused==="ref"){a(s);continue}}}}function pr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let o=(i)=>{let u=e.seen.get(i);if(u.ref===null)return;let c=u.def??u.schema,d={...c},p=u.ref;if(u.ref=null,p){o(p);let h=e.seen.get(p),y=h.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))c.allOf=c.allOf??[],c.allOf.push(y);else Object.assign(c,y);if(Object.assign(c,d),i._zod.parent===p)for(let _ in c){if(_==="$ref"||_==="allOf")continue;if(!(_ in d))delete c[_]}if(y.$ref&&h.def)for(let _ in c){if(_==="$ref"||_==="allOf")continue;if(_ in h.def&&JSON.stringify(c[_])===JSON.stringify(h.def[_]))delete c[_]}}let f=i._zod.parent;if(f&&f!==p){o(f);let h=e.seen.get(f);if(h?.schema.$ref){if(c.$ref=h.schema.$ref,h.def)for(let y in c){if(y==="$ref"||y==="allOf")continue;if(y in h.def&&JSON.stringify(c[y])===JSON.stringify(h.def[y]))delete c[y]}}}e.override({zodSchema:i,jsonSchema:c,path:u.path??[]})};for(let i of[...e.seen.entries()].reverse())o(i[0]);let n={};if(e.target==="draft-2020-12")n.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")n.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")n.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let i=e.external.registry.get(t)?.id;if(!i)throw Error("Schema is missing an `id` property");n.$id=e.external.uri(i)}Object.assign(n,r.def??r.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&n.id===a)delete n.id;let s=e.external?.defs??{};for(let i of e.seen.entries()){let u=i[1];if(u.def&&u.defId){if(u.def.id===u.defId)delete u.def.id;s[u.defId]=u.def}}if(e.external);else if(Object.keys(s).length>0)if(e.target==="draft-2020-12")n.$defs=s;else n.definitions=s;try{let i=JSON.parse(JSON.stringify(n));return Object.defineProperty(i,"~standard",{value:{...t["~standard"],jsonSchema:{input:cr(t,"input",e.processors),output:cr(t,"output",e.processors)}},enumerable:!1,writable:!1}),i}catch(i){throw Error("Error converting schema to JSON.")}}function re(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let o=e._zod.def;if(o.type==="transform")return!0;if(o.type==="array")return re(o.element,r);if(o.type==="set")return re(o.valueType,r);if(o.type==="lazy")return re(o.getter(),r);if(o.type==="promise"||o.type==="optional"||o.type==="nonoptional"||o.type==="nullable"||o.type==="readonly"||o.type==="default"||o.type==="prefault")return re(o.innerType,r);if(o.type==="intersection")return re(o.left,r)||re(o.right,r);if(o.type==="record"||o.type==="map")return re(o.keyType,r)||re(o.valueType,r);if(o.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return re(o.in,r)||re(o.out,r)}if(o.type==="object"){for(let n in o.shape)if(re(o.shape[n],r))return!0;return!1}if(o.type==="union"){for(let n of o.options)if(re(n,r))return!0;return!1}if(o.type==="tuple"){for(let n of o.items)if(re(n,r))return!0;if(o.rest&&re(o.rest,r))return!0;return!1}return!1}var _u=(e,t={})=>(r)=>{let o=ur({...r,processors:t});return L(e,o),dr(o,e),pr(o,e)},cr=(e,t,r={})=>(o)=>{let{libraryOptions:n,target:a}=o??{},s=ur({...n??{},target:a,io:t,processors:r});return L(e,s),dr(s,e),pr(s,e)};var og={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},gn=(e,t,r,o)=>{let n=r;n.type="string";let{minimum:a,maximum:s,format:i,patterns:u,contentEncoding:c}=e._zod.bag;if(typeof a==="number")n.minLength=a;if(typeof s==="number")n.maxLength=s;if(i){if(n.format=og[i]??i,n.format==="")delete n.format;if(i==="time")delete n.format}if(c)n.contentEncoding=c;if(u&&u.size>0){let d=[...u];if(d.length===1)n.pattern=d[0].source;else if(d.length>1)n.allOf=[...d.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},vn=(e,t,r,o)=>{let n=r,{minimum:a,maximum:s,format:i,multipleOf:u,exclusiveMaximum:c,exclusiveMinimum:d}=e._zod.bag;if(typeof i==="string"&&i.includes("int"))n.type="integer";else n.type="number";let p=typeof d==="number"&&d>=(a??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(s??Number.POSITIVE_INFINITY),h=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(h)n.minimum=d,n.exclusiveMinimum=!0;else n.exclusiveMinimum=d;else if(typeof a==="number")n.minimum=a;if(f)if(h)n.maximum=c,n.exclusiveMaximum=!0;else n.exclusiveMaximum=c;else if(typeof s==="number")n.maximum=s;if(typeof u==="number")n.multipleOf=u},yn=(e,t,r,o)=>{r.type="boolean"},Tu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Iu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},wn=(e,t,r,o)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},Eu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},ku=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},bn=(e,t,r,o)=>{r.not={}},$u=(e,t,r,o)=>{},xn=(e,t,r,o)=>{},Mu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},_n=(e,t,r,o)=>{let n=e._zod.def,a=er(n.entries);if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";r.enum=a},Sn=(e,t,r,o)=>{let n=e._zod.def,a=[];for(let s of n.values)if(s===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(s));else a.push(s);if(a.length===0);else if(a.length===1){let s=a[0];if(r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[s];else r.const=s}else{if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";if(a.every((s)=>typeof s==="boolean"))r.type="boolean";if(a.every((s)=>s===null))r.type="null";r.enum=a}},Ru=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Au=(e,t,r,o)=>{let n=r,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");n.type="string",n.pattern=a.source},Cu=(e,t,r,o)=>{let n=r,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:u}=e._zod.bag;if(s!==void 0)a.minLength=s;if(i!==void 0)a.maxLength=i;if(u)if(u.length===1)a.contentMediaType=u[0],Object.assign(n,a);else Object.assign(n,a),n.anyOf=u.map((c)=>({contentMediaType:c}));else Object.assign(n,a)},Ou=(e,t,r,o)=>{r.type="boolean"},Tn=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Pu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},In=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Nu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},zu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},En=(e,t,r,o)=>{let n=r,a=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;if(typeof s==="number")n.minItems=s;if(typeof i==="number")n.maxItems=i;n.type="array",n.items=L(a.element,t,{...o,path:[...o.path,"items"]})},kn=(e,t,r,o)=>{let n=r,a=e._zod.def;n.type="object",n.properties={};let s=a.shape;for(let c in s)n.properties[c]=L(s[c],t,{...o,path:[...o.path,"properties",c]});let i=new Set(Object.keys(s)),u=new Set([...i].filter((c)=>{let d=a.shape[c]._zod;if(t.io==="input")return d.optin===void 0;else return d.optout===void 0}));if(u.size>0)n.required=Array.from(u);if(a.catchall?._zod.def.type==="never")n.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")n.additionalProperties=!1}else if(a.catchall)n.additionalProperties=L(a.catchall,t,{...o,path:[...o.path,"additionalProperties"]})},$n=(e,t,r,o)=>{let n=e._zod.def,a=n.inclusive===!1,s=n.options.map((i,u)=>L(i,t,{...o,path:[...o.path,a?"oneOf":"anyOf",u]}));if(a)r.oneOf=s;else r.anyOf=s},Mn=(e,t,r,o)=>{let n=e._zod.def,a=L(n.left,t,{...o,path:[...o.path,"allOf",0]}),s=L(n.right,t,{...o,path:[...o.path,"allOf",1]}),i=(c)=>("allOf"in c)&&Object.keys(c).length===1,u=[...i(a)?a.allOf:[a],...i(s)?s.allOf:[s]];r.allOf=u},ju=(e,t,r,o)=>{let n=r,a=e._zod.def;n.type="array";let s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",u=a.items.map((f,h)=>L(f,t,{...o,path:[...o.path,s,h]})),c=a.rest?L(a.rest,t,{...o,path:[...o.path,i,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(n.prefixItems=u,c)n.items=c}else if(t.target==="openapi-3.0"){if(n.items={anyOf:u},c)n.items.anyOf.push(c);if(n.minItems=u.length,!c)n.maxItems=u.length}else if(n.items=u,c)n.additionalItems=c;let{minimum:d,maximum:p}=e._zod.bag;if(typeof d==="number")n.minItems=d;if(typeof p==="number")n.maxItems=p},Rn=(e,t,r,o)=>{let n=r,a=e._zod.def;n.type="object";let s=a.keyType,u=s._zod.bag?.patterns;if(a.mode==="loose"&&u&&u.size>0){let d=L(a.valueType,t,{...o,path:[...o.path,"patternProperties","*"]});n.patternProperties={};for(let p of u)n.patternProperties[p.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")n.propertyNames=L(a.keyType,t,{...o,path:[...o.path,"propertyNames"]});n.additionalProperties=L(a.valueType,t,{...o,path:[...o.path,"additionalProperties"]})}let c=s._zod.values;if(c){let d=[...c].filter((p)=>typeof p==="string"||typeof p==="number");if(d.length>0)n.required=d}},An=(e,t,r,o)=>{let n=e._zod.def,a=L(n.innerType,t,o),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=n.innerType,r.nullable=!0;else r.anyOf=[a,{type:"null"}]},Cn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},On=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType,r.default=JSON.parse(JSON.stringify(n.defaultValue))},Pn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);if(a.ref=n.innerType,t.io==="input")r._prefault=JSON.parse(JSON.stringify(n.defaultValue))},Nn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType;let s;try{s=n.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},zn=(e,t,r,o)=>{let n=e._zod.def,a=n.in._zod.traits.has("$ZodTransform"),s=t.io==="input"?a?n.out:n.in:n.out;L(s,t,o);let i=t.seen.get(e);i.ref=s},jn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType,r.readOnly=!0},Du=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},ro=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},Dn=(e,t,r,o)=>{let n=e._zod.innerType;L(n,t,o);let a=t.seen.get(e);a.ref=n},Su={string:gn,number:vn,boolean:yn,bigint:Tu,symbol:Iu,null:wn,undefined:Eu,void:ku,never:bn,any:$u,unknown:xn,date:Mu,enum:_n,literal:Sn,nan:Ru,template_literal:Au,file:Cu,success:Ou,custom:Tn,function:Pu,transform:In,map:Nu,set:zu,array:En,object:kn,union:$n,intersection:Mn,tuple:ju,record:Rn,nullable:An,nonoptional:Cn,default:On,prefault:Pn,catch:Nn,pipe:zn,readonly:jn,promise:Du,optional:ro,lazy:Dn};function Un(e,t){if("_idmap"in e){let o=e,n=ur({...t,processors:Su}),a={};for(let u of o._idmap.entries()){let[c,d]=u;L(d,n)}let s={},i={registry:o,uri:t?.uri,defs:a};n.external=i;for(let u of o._idmap.entries()){let[c,d]=u;dr(n,d),s[c]=pr(n,d)}if(Object.keys(a).length>0){let u=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[u]:a}}return{schemas:s}}let r=ur({...t,processors:Su});return L(e,r),dr(r,e),pr(r,e)}var ug=g("ZodISODateTime",(e,t)=>{ec.init(e,t),W.init(e,t)});function Uu(e){return lu(ug,e)}var dg=g("ZodISODate",(e,t)=>{tc.init(e,t),W.init(e,t)});function Zu(e){return cu(dg,e)}var pg=g("ZodISOTime",(e,t)=>{rc.init(e,t),W.init(e,t)});function Lu(e){return uu(pg,e)}var fg=g("ZodISODuration",(e,t)=>{oc.init(e,t),W.init(e,t)});function Fu(e){return du(fg,e)}var gg=(e,t)=>{Br.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>Ni(e,r)},flatten:{value:(r)=>Pi(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Rt,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Rt,2)}},isEmpty:{get(){return e.issues.length===0}}})};var de=g("ZodError",gg,{Parent:Error});var Bu=qr(de),qu=Wr(de),Wu=nr(de),no=ar(de),Vu=Di(de),Ju=Ui(de),Ku=Zi(de),Gu=Li(de),Hu=Fi(de),Yu=Bi(de),Xu=qi(de),Qu=Wi(de);var ed=new WeakMap;function mr(e,t,r){let o=Object.getPrototypeOf(e),n=ed.get(o);if(!n)n=new Set,ed.set(o,n);if(n.has(t))return;n.add(t);for(let a in r){let s=r[a];Object.defineProperty(o,a,{configurable:!0,enumerable:!1,get(){let i=s.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i}),i},set(i){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i})}})}}var q=g("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:cr(e,"input"),output:cr(e,"output")}}),e.toJSONSchema=_u(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,o)=>Bu(e,r,o,{callee:e.parse}),e.safeParse=(r,o)=>Wu(e,r,o),e.parseAsync=async(r,o)=>qu(e,r,o,{callee:e.parseAsync}),e.safeParseAsync=async(r,o)=>no(e,r,o),e.spa=e.safeParseAsync,e.encode=(r,o)=>Vu(e,r,o),e.decode=(r,o)=>Ju(e,r,o),e.encodeAsync=async(r,o)=>Ku(e,r,o),e.decodeAsync=async(r,o)=>Gu(e,r,o),e.safeEncode=(r,o)=>Hu(e,r,o),e.safeDecode=(r,o)=>Yu(e,r,o),e.safeEncodeAsync=async(r,o)=>Xu(e,r,o),e.safeDecodeAsync=async(r,o)=>Qu(e,r,o),mr(e,"ZodType",{check(...r){let o=this.def;return this.clone(O.mergeDefs(o,{checks:[...o.checks??[],...r.map((n)=>typeof n==="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,o){return xe(this,r,o)},brand(){return this},register(r,o){return r.add(this,o),this},refine(r,o){return this.check(lv(r,o))},superRefine(r,o){return this.check(cv(r,o))},overwrite(r){return this.check(Ke(r))},optional(){return nd(this)},exactOptional(){return Gg(this)},nullable(){return ad(this)},nullish(){return nd(ad(this))},nonoptional(r){return tv(this,r)},array(){return Bn(this)},or(r){return qn([this,r])},and(r){return qg(this,r)},transform(r){return sd(this,Jg(r))},default(r){return Xg(this,r)},prefault(r){return ev(this,r)},catch(r){return ov(this,r)},pipe(r){return sd(this,r)},readonly(){return sv(this)},describe(r){let o=this.clone();return ut.add(o,{description:r}),o},meta(...r){if(r.length===0)return ut.get(this);let o=this.clone();return ut.add(o,r[0]),o},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(e,"description",{get(){return ut.get(e)?.description},configurable:!0}),e)),id=g("_ZodString",(e,t)=>{Hr.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>gn(e,o,n,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,mr(e,"_ZodString",{regex(...o){return this.check(nn(...o))},includes(...o){return this.check(ln(...o))},startsWith(...o){return this.check(cn(...o))},endsWith(...o){return this.check(un(...o))},min(...o){return this.check(Ot(...o))},max(...o){return this.check(eo(...o))},length(...o){return this.check(to(...o))},nonempty(...o){return this.check(Ot(1,...o))},lowercase(o){return this.check(an(o))},uppercase(o){return this.check(sn(o))},trim(){return this.check(pn())},normalize(...o){return this.check(dn(...o))},toLowerCase(){return this.check(fn())},toUpperCase(){return this.check(mn())},slugify(){return this.check(hn())}})}),yg=g("ZodString",(e,t)=>{Hr.init(e,t),id.init(e,t),e.email=(r)=>e.check(Lc(wg,r)),e.url=(r)=>e.check(Vc(bg,r)),e.jwt=(r)=>e.check(iu(Ng,r)),e.emoji=(r)=>e.check(Jc(xg,r)),e.guid=(r)=>e.check(on(td,r)),e.uuid=(r)=>e.check(Fc(ao,r)),e.uuidv4=(r)=>e.check(Bc(ao,r)),e.uuidv6=(r)=>e.check(qc(ao,r)),e.uuidv7=(r)=>e.check(Wc(ao,r)),e.nanoid=(r)=>e.check(Kc(_g,r)),e.guid=(r)=>e.check(on(td,r)),e.cuid=(r)=>e.check(Gc(Sg,r)),e.cuid2=(r)=>e.check(Hc(Tg,r)),e.ulid=(r)=>e.check(Yc(Ig,r)),e.base64=(r)=>e.check(nu(Cg,r)),e.base64url=(r)=>e.check(au(Og,r)),e.xid=(r)=>e.check(Xc(Eg,r)),e.ksuid=(r)=>e.check(Qc(kg,r)),e.ipv4=(r)=>e.check(eu($g,r)),e.ipv6=(r)=>e.check(tu(Mg,r)),e.cidrv4=(r)=>e.check(ru(Rg,r)),e.cidrv6=(r)=>e.check(ou(Ag,r)),e.e164=(r)=>e.check(su(Pg,r)),e.datetime=(r)=>e.check(Uu(r)),e.date=(r)=>e.check(Zu(r)),e.time=(r)=>e.check(Lu(r)),e.duration=(r)=>e.check(Fu(r))});function Ln(e){return Zc(yg,e)}var W=g("ZodStringFormat",(e,t)=>{B.init(e,t),id.init(e,t)}),wg=g("ZodEmail",(e,t)=>{Wl.init(e,t),W.init(e,t)});var td=g("ZodGUID",(e,t)=>{Bl.init(e,t),W.init(e,t)});var ao=g("ZodUUID",(e,t)=>{ql.init(e,t),W.init(e,t)});var bg=g("ZodURL",(e,t)=>{Vl.init(e,t),W.init(e,t)});var xg=g("ZodEmoji",(e,t)=>{Jl.init(e,t),W.init(e,t)});var _g=g("ZodNanoID",(e,t)=>{Kl.init(e,t),W.init(e,t)});var Sg=g("ZodCUID",(e,t)=>{Gl.init(e,t),W.init(e,t)});var Tg=g("ZodCUID2",(e,t)=>{Hl.init(e,t),W.init(e,t)});var Ig=g("ZodULID",(e,t)=>{Yl.init(e,t),W.init(e,t)});var Eg=g("ZodXID",(e,t)=>{Xl.init(e,t),W.init(e,t)});var kg=g("ZodKSUID",(e,t)=>{Ql.init(e,t),W.init(e,t)});var $g=g("ZodIPv4",(e,t)=>{nc.init(e,t),W.init(e,t)});var Mg=g("ZodIPv6",(e,t)=>{ac.init(e,t),W.init(e,t)});var Rg=g("ZodCIDRv4",(e,t)=>{sc.init(e,t),W.init(e,t)});var Ag=g("ZodCIDRv6",(e,t)=>{ic.init(e,t),W.init(e,t)});var Cg=g("ZodBase64",(e,t)=>{cc.init(e,t),W.init(e,t)});var Og=g("ZodBase64URL",(e,t)=>{uc.init(e,t),W.init(e,t)});var Pg=g("ZodE164",(e,t)=>{dc.init(e,t),W.init(e,t)});var Ng=g("ZodJWT",(e,t)=>{pc.init(e,t),W.init(e,t)});var ld=g("ZodNumber",(e,t)=>{en.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>vn(e,o,n,a),mr(e,"ZodNumber",{gt(o,n){return this.check(Xr(o,n))},gte(o,n){return this.check(lr(o,n))},min(o,n){return this.check(lr(o,n))},lt(o,n){return this.check(Yr(o,n))},lte(o,n){return this.check(ir(o,n))},max(o,n){return this.check(ir(o,n))},int(o){return this.check(rd(o))},safe(o){return this.check(rd(o))},positive(o){return this.check(Xr(0,o))},nonnegative(o){return this.check(lr(0,o))},negative(o){return this.check(Yr(0,o))},nonpositive(o){return this.check(ir(0,o))},multipleOf(o,n){return this.check(Qr(o,n))},step(o,n){return this.check(Qr(o,n))},finite(){return this}});let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??0.5),e.isFinite=!0,e.format=r.format??null});function cd(e){return pu(ld,e)}var zg=g("ZodNumberFormat",(e,t)=>{fc.init(e,t),ld.init(e,t)});function rd(e){return fu(zg,e)}var jg=g("ZodBoolean",(e,t)=>{mc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>yn(e,r,o,n)});function ud(e){return mu(jg,e)}var Dg=g("ZodNull",(e,t)=>{hc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>wn(e,r,o,n)});function dd(e){return hu(Dg,e)}var Ug=g("ZodUnknown",(e,t)=>{gc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>xn(e,r,o,n)});function fr(){return gu(Ug)}var Zg=g("ZodNever",(e,t)=>{vc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>bn(e,r,o,n)});function Fn(e){return vu(Zg,e)}var Lg=g("ZodArray",(e,t)=>{yc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>En(e,r,o,n),e.element=t.element,mr(e,"ZodArray",{min(r,o){return this.check(Ot(r,o))},nonempty(r){return this.check(Ot(1,r))},max(r,o){return this.check(eo(r,o))},length(r,o){return this.check(to(r,o))},unwrap(){return this.element}})});function Bn(e,t){return yu(Lg,e,t)}var pd=g("ZodObject",(e,t)=>{xc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>kn(e,r,o,n),O.defineLazy(e,"shape",()=>t.shape),mr(e,"ZodObject",{keyof(){return Wn(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:fr()})},loose(){return this.clone({...this._zod.def,catchall:fr()})},strict(){return this.clone({...this._zod.def,catchall:Fn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return O.extend(this,r)},safeExtend(r){return O.safeExtend(this,r)},merge(r){return O.merge(this,r)},pick(r){return O.pick(this,r)},omit(r){return O.omit(this,r)},partial(...r){return O.partial(wd,this,r[0])},required(...r){return O.required(bd,this,r[0])}})});function fd(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new pd(r)}function md(e,t){return new pd({type:"object",shape:e,catchall:fr(),...O.normalizeParams(t)})}var hd=g("ZodUnion",(e,t)=>{tn.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>$n(e,r,o,n),e.options=t.options});function qn(e,t){return new hd({type:"union",options:e,...O.normalizeParams(t)})}var Fg=g("ZodDiscriminatedUnion",(e,t)=>{hd.init(e,t),_c.init(e,t)});function gd(e,t,r){return new Fg({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var Bg=g("ZodIntersection",(e,t)=>{Sc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Mn(e,r,o,n)});function qg(e,t){return new Bg({type:"intersection",left:e,right:t})}var od=g("ZodRecord",(e,t)=>{Tc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Rn(e,r,o,n),e.keyType=t.keyType,e.valueType=t.valueType});function vd(e,t,r){if(!t||!t._zod)return new od({type:"record",keyType:Ln(),valueType:e,...O.normalizeParams(t)});return new od({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Zn=g("ZodEnum",(e,t)=>{Ic.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>_n(e,o,n,a),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(o,n)=>{let a={};for(let s of o)if(r.has(s))a[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new Zn({...t,checks:[],...O.normalizeParams(n),entries:a})},e.exclude=(o,n)=>{let a={...t.entries};for(let s of o)if(r.has(s))delete a[s];else throw Error(`Key ${s} not found in enum`);return new Zn({...t,checks:[],...O.normalizeParams(n),entries:a})}});function Wn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((o)=>[o,o])):e;return new Zn({type:"enum",entries:r,...O.normalizeParams(t)})}var Wg=g("ZodLiteral",(e,t)=>{Ec.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Sn(e,r,o,n),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function yd(e,t){return new Wg({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var Vg=g("ZodTransform",(e,t)=>{kc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>In(e,r,o,n),e._zod.parse=(r,o)=>{if(o.direction==="backward")throw new Xt(e.constructor.name);r.addIssue=(a)=>{if(typeof a==="string")r.issues.push(O.issue(a,r.value,t));else{let s=a;if(s.fatal)s.continue=!1;s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(O.issue(s))}};let n=t.transform(r.value,r);if(n instanceof Promise)return n.then((a)=>(r.value=a,r.fallback=!0,r));return r.value=n,r.fallback=!0,r}});function Jg(e){return new Vg({type:"transform",transform:e})}var wd=g("ZodOptional",(e,t)=>{rn.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>ro(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function nd(e){return new wd({type:"optional",innerType:e})}var Kg=g("ZodExactOptional",(e,t)=>{$c.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>ro(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function Gg(e){return new Kg({type:"optional",innerType:e})}var Hg=g("ZodNullable",(e,t)=>{Mc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>An(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function ad(e){return new Hg({type:"nullable",innerType:e})}var Yg=g("ZodDefault",(e,t)=>{Rc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>On(e,r,o,n),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Xg(e,t){return new Yg({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Qg=g("ZodPrefault",(e,t)=>{Ac.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Pn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function ev(e,t){return new Qg({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var bd=g("ZodNonOptional",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Cn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function tv(e,t){return new bd({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var rv=g("ZodCatch",(e,t)=>{Oc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Nn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ov(e,t){return new rv({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var nv=g("ZodPipe",(e,t)=>{Pc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>zn(e,r,o,n),e.in=t.in,e.out=t.out});function sd(e,t){return new nv({type:"pipe",in:e,out:t})}var av=g("ZodReadonly",(e,t)=>{Nc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>jn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function sv(e){return new av({type:"readonly",innerType:e})}var iv=g("ZodLazy",(e,t)=>{zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Dn(e,r,o,n),e.unwrap=()=>e._zod.def.getter()});function xd(e){return new iv({type:"lazy",getter:e})}var Vn=g("ZodCustom",(e,t)=>{jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Tn(e,r,o,n)});function _d(e,t){return wu(Vn,e??(()=>!0),t)}function lv(e,t={}){return bu(Vn,e,t)}function cv(e,t){return xu(e,t)}function Sd(e,t={}){let r=new Vn({type:"custom",check:"custom",fn:(o)=>o instanceof e,abort:!0,...O.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=(o)=>{if(!(o.value instanceof e))o.issues.push({code:"invalid_type",expected:e.name,input:o.value,inst:r,path:[...r._zod.def.path??[]]})},r}var uv=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],pI=[...uv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var dv=12,pv=131072,fI=pv+dv;async function so(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Od="AI_DownloadError",Pd=`vercel.ai.error.${Od}`,fv=Symbol.for(Pd),Td,Id,ne=class extends(Id=k,Td=fv,Id){constructor({url:e,statusCode:t,statusText:r,cause:o,message:n=o==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${o}`}){super({name:Od,message:n,cause:o});this[Td]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,Pd)}};function mv(e=globalThis){return e.window!=null}function Ed(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function hv(e){let t;try{t=new URL(e)}catch(o){throw new ne({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new ne({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new ne({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new ne({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let o=r.slice(1,-1);if(Nd(o))throw new ne({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(Xn(r)){if(Qn(r))throw new ne({url:e,message:`URL with IP address ${r} is not allowed`});return}}function gv({address:e,family:t,hostname:r}){if(t===4?!Xn(e)||Qn(e):t===6?Nd(e):!0)throw new ne({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function Xn(e){let t=e.split(".");if(t.length!==4)return!1;return t.every((r)=>{let o=Number(r);return Number.isInteger(o)&&o>=0&&o<=255&&String(o)===r})}function Qn(e){let t=e.split(".").map(Number),[r,o,n]=t;if(r===0)return!0;if(r===10)return!0;if(r===100&&o>=64&&o<=127)return!0;if(r===127)return!0;if(r===169&&o===254)return!0;if(r===172&&o>=16&&o<=31)return!0;if(r===192&&o===0&&n===0)return!0;if(r===192&&o===0&&n===2)return!0;if(r===192&&o===168)return!0;if(r===198&&(o===18||o===19))return!0;if(r===198&&o===51&&n===100)return!0;if(r===203&&o===0&&n===113)return!0;if(r>=224)return!0;return!1}function vv(e){let t=e.toLowerCase(),r=t.indexOf("%");if(r!==-1)t=t.slice(0,r);let o=t.split("::");if(o.length>2)return null;let n=(s)=>{if(s==="")return[];let i=[],u=s.split(":");for(let c=0;c<u.length;c++){let d=u[c];if(d.includes(".")){if(c!==u.length-1||!Xn(d))return null;let[p,f,h,y]=d.split(".").map(Number);i.push(p<<8|f,h<<8|y);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;i.push(parseInt(d,16))}return i},a=n(o[0]);if(a===null)return null;if(o.length===2){let s=n(o[1]);if(s===null)return null;let i=8-a.length-s.length;if(i<0)return null;return[...a,...Array(i).fill(0),...s]}return a.length===8?a:null}function Nd(e){let t=vv(e);if(t===null)return!0;let r=(n)=>t.slice(0,n).every((a)=>a===0);if(r(7)&&(t[7]===0||t[7]===1))return!0;if((t[0]&65024)===64512)return!0;if((t[0]&65472)===65152)return!0;if((t[0]&65472)===65216)return!0;if((t[0]&65280)===65280)return!0;if(t[0]===8193&&t[1]===3512)return!0;if(t[0]===16383&&(t[1]&61440)===0)return!0;if(r(6)||r(5)&&t[5]===65535||r(4)&&t[4]===65535&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===0&&t[3]===0&&t[4]===0&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===1){let n=t[6]>>8&255,a=t[6]&255,s=t[7]>>8&255,i=t[7]&255;return Qn(`${n}.${a}.${s}.${i}`)}return!1}function yv(e){return(t,r,o)=>{e(t,{...r,all:!0},(n,a)=>{if(n){o(n);return}try{let[s]=a;if(s==null)throw Error(`Hostname ${t} did not resolve to an address`);for(let{address:i,family:u}of a)gv({address:i,family:u,hostname:t});if(r.all===!0)o(null,a);else o(null,s.address,s.family)}catch(s){o(s instanceof Error?s:Error(String(s)))}})}}var Jn,zd=globalThis.fetch,wv=_v(zd);function bv(){var e,t;let r=globalThis.process;return((e=r==null?void 0:r.release)==null?void 0:e.name)==="node"&&((t=r.versions)==null?void 0:t.bun)==null}async function xv(){if(!bv()||!wv||globalThis.fetch!==zd)return globalThis.fetch;return Jn!=null?Jn:Jn=Promise.resolve().then(Sv)}function _v(e){let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}function Sv(){let{createRequire:e}=kd("node:module"),{lookup:t}=kd("node:dns"),{Agent:r,fetch:o}=e(jd())("undici"),n=new r({connect:{lookup:yv(t)}});return(a,s)=>o(a,{...s,dispatcher:n})}function kd(e){var t;let r=globalThis.process,o=(t=r==null?void 0:r.getBuiltinModule)==null?void 0:t.call(r,e);if(o==null)throw Error(`Node.js built-in module ${e} is unavailable`);return o}function jd(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(n,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,jd);let[r]=t.stack,o=r==null?void 0:r.getFileName();if(o==null)throw Error("Unable to determine the current module path");return o}finally{Error.prepareStackTrace=e}}var Tv=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function Iv(e){let t=new Headers(e);for(let r of Tv)t.delete(r);return t}var Ev=10,kv=new Set([301,302,303,307,308]);async function Dd({url:e,headers:t,abortSignal:r,maxRedirects:o=Ev,fetch:n,trustedOrigin:a}){let s=t===void 0?void 0:Iv(t),i=(c)=>{let d={signal:r,redirect:c};if(s!==void 0)d.headers=new Headers(s);return d},u=e;for(let c=0;c<=o;c++){let d=a!==void 0&&Ed(u,a);if(!d)hv(u);let p=n!=null?n:d?globalThis.fetch:await xv(),f=await p(u,i("manual"));if(f.type==="opaqueredirect"){if(!mv())throw new ne({url:e,message:`Redirect from ${u} could not be validated and was blocked`});return await p(u,i("follow"))}let h=f.headers.get("location");if(kv.has(f.status)&&h){await so(f);let y=new URL(h,u).toString();if(s!==void 0&&!Ed(y,u)){let v=s.get("user-agent");s=new Headers(v==null?void 0:{"user-agent":v})}u=y;continue}return f}throw new ne({url:e,message:`Too many redirects (max ${o})`})}var ea=2147483648;async function Ud({response:e,url:t,maxBytes:r=ea}){let o=e.headers.get("content-length");if(o!=null){let d=parseInt(o,10);if(!isNaN(d)&&d>r)throw await so(e),new ne({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${d}).`})}let n=e.body;if(n==null)return new Uint8Array(0);let a=n.getReader(),s=[],i=0;try{while(!0){let{done:d,value:p}=await a.read();if(d)break;if(i+=p.length,i>r)throw new ne({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});s.push(p)}}finally{try{await a.cancel()}finally{a.releaseLock()}}let u=new Uint8Array(i),c=0;for(let d of s)u.set(d,c),c+=d.length;return u}var J=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:o="-"}={})=>{let n=()=>{let a=r.length,s=Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*a|0];return s.join("")};if(e==null)return n;if(r.includes(o))throw new ei({argument:"separator",message:`The separator "${o}" must not be part of the alphabet "${r}".`});return()=>`${e}${o}${n()}`},Pt=J();function Zd(e=globalThis){var t,r,o;if(e.window)return"runtime/browser";if((t=e.navigator)==null?void 0:t.userAgent)return`runtime/${e.navigator.userAgent.toLowerCase()}`;if((o=(r=e.process)==null?void 0:r.versions)==null?void 0:o.node)return`runtime/node.js/${e.process.version.substring(0)}`;if(e.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function $v(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((r,o)=>{t[o.toLowerCase()]=r});else{if(!Array.isArray(e))e=Object.entries(e);for(let[r,o]of e)if(o!=null)t[r.toLowerCase()]=o}return t}function Nt(e,...t){let r=new Headers($v(e)),o=r.get("user-agent")||"";return r.set("user-agent",[o,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function Ld(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function Fd(e){return e!=null}var Mv=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Rv=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function $d(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(Mv.test(e)===!1&&Rv.test(e)===!1)return t;return Av(t)}function Av(e){let t=[e];while(t.length){let r=t;t=[];for(let o of r){if(Object.prototype.hasOwnProperty.call(o,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(o,"constructor")&&o.constructor!==null&&typeof o.constructor==="object"&&Object.prototype.hasOwnProperty.call(o.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let n in o){let a=o[n];if(a&&typeof a==="object")t.push(a)}}}return e}function Cv(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return $d(e)}try{return $d(e)}finally{Error.stackTraceLimit=t}}function ta(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;let{properties:r}=e;if(r!=null)for(let o of Object.keys(r))r[o]=dt(r[o])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(dt):dt(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(dt);if(e.allOf!=null)e.allOf=e.allOf.map(dt);if(e.oneOf!=null)e.oneOf=e.oneOf.map(dt);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=dt(t[r]);return e}function dt(e){if(typeof e==="boolean")return e;return ta(e)}var Ov=Symbol("Let zodToJsonSchema decide on which parser to use"),Md={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Pv=(e)=>typeof e==="string"?{...Md,name:e}:{...Md,...e};function pe(){return{}}function Nv(e,t){var r,o,n;let a={type:"array"};if(((r=e.type)==null?void 0:r._def)&&((n=(o=e.type)==null?void 0:o._def)==null?void 0:n.typeName)!=="ZodAny")a.items=U(e.type._def,{...t,currentPath:[...t.currentPath,"items"]});if(e.minLength)a.minItems=e.minLength.value;if(e.maxLength)a.maxItems=e.maxLength.value;if(e.exactLength)a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value;return a}function zv(e){let t={type:"integer",format:"int64"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function jv(){return{type:"boolean"}}function Bd(e,t){return U(e.type._def,t)}var Dv=(e,t)=>U(e.innerType._def,t);function qd(e,t,r){let o=r!=null?r:t.dateStrategy;if(Array.isArray(o))return{anyOf:o.map((n)=>qd(e,t,n))};switch(o){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Uv(e)}}var Uv=(e)=>{let t={type:"integer",format:"unix-time"};for(let r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function Zv(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function Lv(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):pe()}function Fv(e){return{type:"string",enum:Array.from(e.values)}}var Bv=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function qv(e,t){let r=[U(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),U(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter((n)=>!!n),o=[];return r.forEach((n)=>{if(Bv(n))o.push(...n.allOf);else{let a=n;if("additionalProperties"in n&&n.additionalProperties===!1){let{additionalProperties:s,...i}=n;a=i}o.push(a)}}),o.length?{allOf:o}:void 0}function Wv(e){let t=typeof e.value;if(t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string")return{type:Array.isArray(e.value)?"array":"object"};return{type:t==="bigint"?"integer":t,const:e.value}}var Kn=void 0,_e={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(Kn===void 0)Kn=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Kn},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Wd(e,t){let r={type:"string"};if(e.checks)for(let o of e.checks)switch(o.kind){case"min":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,o.value):o.value;break;case"max":r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,o.value):o.value;break;case"email":switch(t.emailStrategy){case"format:email":Se(r,"email",o.message,t);break;case"format:idn-email":Se(r,"idn-email",o.message,t);break;case"pattern:zod":oe(r,_e.email,o.message,t);break}break;case"url":Se(r,"uri",o.message,t);break;case"uuid":Se(r,"uuid",o.message,t);break;case"regex":oe(r,o.regex,o.message,t);break;case"cuid":oe(r,_e.cuid,o.message,t);break;case"cuid2":oe(r,_e.cuid2,o.message,t);break;case"startsWith":oe(r,RegExp(`^${Gn(o.value,t)}`),o.message,t);break;case"endsWith":oe(r,RegExp(`${Gn(o.value,t)}$`),o.message,t);break;case"datetime":Se(r,"date-time",o.message,t);break;case"date":Se(r,"date",o.message,t);break;case"time":Se(r,"time",o.message,t);break;case"duration":Se(r,"duration",o.message,t);break;case"length":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,o.value):o.value,r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,o.value):o.value;break;case"includes":{oe(r,RegExp(Gn(o.value,t)),o.message,t);break}case"ip":{if(o.version!=="v6")Se(r,"ipv4",o.message,t);if(o.version!=="v4")Se(r,"ipv6",o.message,t);break}case"base64url":oe(r,_e.base64url,o.message,t);break;case"jwt":oe(r,_e.jwt,o.message,t);break;case"cidr":{if(o.version!=="v6")oe(r,_e.ipv4Cidr,o.message,t);if(o.version!=="v4")oe(r,_e.ipv6Cidr,o.message,t);break}case"emoji":oe(r,_e.emoji(),o.message,t);break;case"ulid":{oe(r,_e.ulid,o.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Se(r,"binary",o.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{oe(r,_e.base64,o.message,t);break}}break}case"nanoid":oe(r,_e.nanoid,o.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Gn(e,t){return t.patternStrategy==="escape"?Jv(e):e}var Vv=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Jv(e){let t="";for(let r=0;r<e.length;r++){if(!Vv.has(e[r]))t+="\\";t+=e[r]}return t}function Se(e,t,r,o){var n;if(e.format||((n=e.anyOf)==null?void 0:n.some((a)=>a.format))){if(!e.anyOf)e.anyOf=[];if(e.format)e.anyOf.push({format:e.format}),delete e.format;e.anyOf.push({format:t,...r&&o.errorMessages&&{errorMessage:{format:r}}})}else e.format=t}function oe(e,t,r,o){var n;if(e.pattern||((n=e.allOf)==null?void 0:n.some((a)=>a.pattern))){if(!e.allOf)e.allOf=[];if(e.pattern)e.allOf.push({pattern:e.pattern}),delete e.pattern;e.allOf.push({pattern:Rd(t,o),...r&&o.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=Rd(t,o)}function Rd(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let o={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=o.i?e.source.toLowerCase():e.source,a="",s=!1,i=!1,u=!1;for(let c=0;c<n.length;c++){if(s){a+=n[c],s=!1;continue}if(o.i){if(i){if(n[c].match(/[a-z]/)){if(u)a+=n[c],a+=`${n[c-2]}-${n[c]}`.toUpperCase(),u=!1;else if(n[c+1]==="-"&&((r=n[c+2])==null?void 0:r.match(/[a-z]/)))a+=n[c],u=!0;else a+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){a+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(o.m){if(n[c]==="^"){a+=`(^|(?<=[\r
|
|
131
|
-
]))`;continue}else if(
|
|
132
|
-
]))`;continue}}if(
|
|
133
|
-
`:`[${
|
|
134
|
-
]`;continue}if(a+=n[c],n[c]==="\\")s=!0;else if(i&&n[c]==="]")i=!1;else if(!i&&n[c]==="[")i=!0}try{new RegExp(a)}catch(c){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return a}function Vd(e,t){var r,o,n,a,s,i;let u={type:"object",additionalProperties:(r=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((o=e.keyType)==null?void 0:o._def.typeName)==="ZodString"&&((n=e.keyType._def.checks)==null?void 0:n.length)){let{type:c,...d}=Wd(e.keyType._def,t);return{...u,propertyNames:d}}else if(((a=e.keyType)==null?void 0:a._def.typeName)==="ZodEnum")return{...u,propertyNames:{enum:e.keyType._def.values}};else if(((s=e.keyType)==null?void 0:s._def.typeName)==="ZodBranded"&&e.keyType._def.type._def.typeName==="ZodString"&&((i=e.keyType._def.type._def.checks)==null?void 0:i.length)){let{type:c,...d}=Bd(e.keyType._def,t);return{...u,propertyNames:d}}return u}function Kv(e,t){if(t.mapStrategy==="record")return Vd(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||pe(),o=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||pe();return{type:"array",maxItems:125,items:{type:"array",items:[r,o],minItems:2,maxItems:2}}}function Gv(e){let t=e.values,o=Object.keys(e.values).filter((a)=>typeof t[t[a]]!=="number").map((a)=>t[a]),n=Array.from(new Set(o.map((a)=>typeof a)));return{type:n.length===1?n[0]==="string"?"string":"number":["string","number"],enum:o}}function Hv(){return{not:pe()}}function Yv(){return{type:"null"}}var Hn={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Xv(e,t){let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every((o)=>(o._def.typeName in Hn)&&(!o._def.checks||!o._def.checks.length))){let o=r.reduce((n,a)=>{let s=Hn[a._def.typeName];return s&&!n.includes(s)?[...n,s]:n},[]);return{type:o.length>1?o:o[0]}}else if(r.every((o)=>o._def.typeName==="ZodLiteral"&&!o.description)){let o=r.reduce((n,a)=>{let s=typeof a._def.value;switch(s){case"string":case"number":case"boolean":return[...n,s];case"bigint":return[...n,"integer"];case"object":if(a._def.value===null)return[...n,"null"];case"symbol":case"undefined":case"function":default:return n}},[]);if(o.length===r.length){let n=o.filter((a,s,i)=>i.indexOf(a)===s);return{type:n.length>1?n:n[0],enum:r.reduce((a,s)=>a.includes(s._def.value)?a:[...a,s._def.value],[])}}}else if(r.every((o)=>o._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((o,n)=>[...o,...n._def.values.filter((a)=>!o.includes(a))],[])};return Qv(e,t)}var Qv=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((o,n)=>U(o._def,{...t,currentPath:[...t.currentPath,"anyOf",`${n}`]})).filter((o)=>!!o&&(!t.strictUnions||typeof o==="object"&&Object.keys(o).length>0));return r.length?{anyOf:r}:void 0};function ey(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Hn[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function ty(e){let t={type:"number"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function ry(e,t){let r={type:"object",properties:{}},o=[],n=e.shape();for(let s in n){let i=n[s];if(i===void 0||i._def===void 0)continue;let u=ny(i),c=U(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});if(c===void 0)continue;if(r.properties[s]=c,!u)o.push(s)}if(o.length)r.required=o;let a=oy(e,t);if(a!==void 0)r.additionalProperties=a;return r}function oy(e,t){if(e.catchall._def.typeName!=="ZodNever")return U(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function ny(e){try{return e.isOptional()}catch(t){return!0}}var ay=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return U(e.innerType._def,t);let o=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return o?{anyOf:[{not:pe()},o]}:pe()},sy=(e,t)=>{if(t.pipeStrategy==="input")return U(e.in._def,t);else if(t.pipeStrategy==="output")return U(e.out._def,t);let r=U(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),o=U(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,o].filter((n)=>n!==void 0)}};function iy(e,t){return U(e.type._def,t)}function ly(e,t){let o={type:"array",uniqueItems:!0,items:U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};if(e.minSize)o.minItems=e.minSize.value;if(e.maxSize)o.maxItems=e.maxSize.value;return o}function cy(e,t){if(e.rest)return{type:"array",minItems:e.items.length,items:e.items.map((r,o)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[]),additionalItems:U(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})};else return{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,o)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[])}}function uy(){return{not:pe()}}function dy(){return pe()}var py=(e,t)=>U(e.innerType._def,t),fy=(e,t,r)=>{switch(t){case"ZodString":return Wd(e,r);case"ZodNumber":return ty(e);case"ZodObject":return ry(e,r);case"ZodBigInt":return zv(e);case"ZodBoolean":return jv();case"ZodDate":return qd(e,r);case"ZodUndefined":return uy();case"ZodNull":return Yv();case"ZodArray":return Nv(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return Xv(e,r);case"ZodIntersection":return qv(e,r);case"ZodTuple":return cy(e,r);case"ZodRecord":return Vd(e,r);case"ZodLiteral":return Wv(e);case"ZodEnum":return Fv(e);case"ZodNativeEnum":return Gv(e);case"ZodNullable":return ey(e,r);case"ZodOptional":return ay(e,r);case"ZodMap":return Kv(e,r);case"ZodSet":return ly(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return iy(e,r);case"ZodNaN":case"ZodNever":return Hv();case"ZodEffects":return Lv(e,r);case"ZodAny":return pe();case"ZodUnknown":return dy();case"ZodDefault":return Zv(e,r);case"ZodBranded":return Bd(e,r);case"ZodReadonly":return py(e,r);case"ZodCatch":return Dv(e,r);case"ZodPipeline":return sy(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((o)=>{return})(t)}},my=(e,t)=>{let r=0;for(;r<e.length&&r<t.length;r++)if(e[r]!==t[r])break;return[(e.length-r).toString(),...t.slice(r)].join("/")};function U(e,t,r=!1){var o;let n=t.seen.get(e);if(t.override){let u=(o=t.override)==null?void 0:o.call(t,e,t,n,r);if(u!==Ov)return u}if(n&&!r){let u=hy(n,t);if(u!==void 0)return u}let a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);let s=fy(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)gy(e,t,i);if(t.postProcess){let u=t.postProcess(i,e,t);return a.jsonSchema=i,u}return a.jsonSchema=i,i}var hy=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:my(t.currentPath,e.path)};case"none":case"seen":{if(e.path.length<t.currentPath.length&&e.path.every((r,o)=>t.currentPath[o]===r))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),pe();return t.$refStrategy==="seen"?pe():void 0}}},gy=(e,t,r)=>{if(e.description)r.description=e.description;return r},vy=(e)=>{let t=Pv(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([o,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,o],jsonSchema:void 0}]))}},yy=(e,t)=>{var r;let o=vy(t),n=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((c,[d,p])=>{var f;return{...c,[d]:(f=U(p._def,{...o,currentPath:[...o.basePath,o.definitionPath,d]},!0))!=null?f:pe()}},{}):void 0,a=typeof t==="string"?t:(t==null?void 0:t.nameStrategy)==="title"?void 0:t==null?void 0:t.name,s=(r=U(e._def,a===void 0?o:{...o,currentPath:[...o.basePath,o.definitionPath,a]},!1))!=null?r:pe(),i=typeof t==="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;if(i!==void 0)s.title=i;let u=a===void 0?n?{...s,[o.definitionPath]:n}:s:{$ref:[...o.$refStrategy==="relative"?[]:o.basePath,o.definitionPath,a].join("/"),[o.definitionPath]:{...n,[a]:s}};return u.$schema="http://json-schema.org/draft-07/schema#",u},Yn=Symbol.for("vercel.ai.schema");function io(e){let t;return()=>{if(t==null)t=e();return t}}function hr(e,{validate:t}={}){return{[Yn]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function wy(e){return typeof e==="object"&&e!==null&&Yn in e&&e[Yn]===!0&&"jsonSchema"in e&&"validate"in e}function gr(e){return e==null?hr({type:"object",properties:{},additionalProperties:!1}):wy(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?zt(e):by(e):e()}function by(e){return hr(()=>{if(!xy(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return ta(e["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async(t)=>{let r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new $e({value:t,cause:r.issues})}}})}function xy(e){return e["~standard"].jsonSchema!=null}function _y(e,t){var r;let o=(r=t==null?void 0:t.useReferences)!=null?r:!1;return hr(()=>yy(e,{$refStrategy:o?"root":"none"}),{validate:async(n)=>{let a=await e.safeParseAsync(n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Sy(e,t){var r;let o=(r=t==null?void 0:t.useReferences)!=null?r:!1;return hr(()=>ta(Un(e,{target:"draft-7",io:"input",reused:o?"ref":"inline"})),{validate:async(n)=>{let a=await no(e,n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Ty(e){return"_zod"in e}function zt(e,t){if(Ty(e))return Sy(e,t);else return _y(e,t)}async function lo({value:e,schema:t,context:r}){let o=await jt({value:e,schema:t,context:r});if(!o.success)throw $e.wrap({value:e,cause:o.error,context:r});return o.value}async function jt({value:e,schema:t,context:r}){let o=gr(t);try{if(o.validate==null)return{success:!0,value:e,rawValue:e};let n=await o.validate(e);if(n.success)return{success:!0,value:n.value,rawValue:e};return{success:!1,error:$e.wrap({value:e,cause:n.error,context:r}),rawValue:e}}catch(n){return{success:!1,error:$e.wrap({value:e,cause:n,context:r}),rawValue:e}}}async function Ge({text:e,schema:t}){try{let r=Cv(e);if(t==null)return{success:!0,value:r,rawValue:r};return await jt({value:r,schema:t})}catch(r){return{success:!1,error:Do.isInstance(r)?r:new Do({text:e,cause:r}),rawValue:void 0}}}async function ra(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var Jd="AI_SerializationError",Kd=`vercel.ai.error.${Jd}`,Iy=Symbol.for(Kd),Ad,Cd,_I=class extends(Cd=k,Ad=Iy,Cd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:Jd,message:e,cause:t});this[Ad]=!0}static isInstance(e){return k.hasMarker(e,Kd)}};var $y=Object.defineProperty,My=(e,t)=>{for(var r in t)$y(e,r,{get:t[r],enumerable:!0})},Ry="AI_InvalidArgumentError",Ay=`vercel.ai.error.${Ry}`,Cy=Symbol.for(Ay),Oy;Oy=Cy;var Py="AI_InvalidStreamPartError",Ny=`vercel.ai.error.${Py}`,zy=Symbol.for(Ny),jy;jy=zy;var Dy="AI_InvalidToolApprovalError",Uy=`vercel.ai.error.${Dy}`,Zy=Symbol.for(Uy),Ly;Ly=Zy;var Fy="AI_InvalidToolApprovalSignatureError",By=`vercel.ai.error.${Fy}`,qy=Symbol.for(By),Wy;Wy=qy;var Vy="AI_InvalidToolInputError",Jy=`vercel.ai.error.${Vy}`,Ky=Symbol.for(Jy),Gy;Gy=Ky;var Hy="AI_ToolCallNotFoundForApprovalError",Yy=`vercel.ai.error.${Hy}`,Xy=Symbol.for(Yy),Qy;Qy=Xy;var ew="AI_MissingToolResultsError",tw=`vercel.ai.error.${ew}`,rw=Symbol.for(tw),ow;ow=rw;var nw="AI_NoImageGeneratedError",aw=`vercel.ai.error.${nw}`,sw=Symbol.for(aw),iw;iw=sw;var tp="AI_NoObjectGeneratedError",rp=`vercel.ai.error.${tp}`,lw=Symbol.for(rp),op,Ye=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:o,usage:n,finishReason:a}){super({name:tp,message:e,cause:t});this[op]=!0,this.text=r,this.response=o,this.usage=n,this.finishReason=a}static isInstance(e){return k.hasMarker(e,rp)}};op=lw;var cw="AI_NoOutputGeneratedError",uw=`vercel.ai.error.${cw}`,dw=Symbol.for(uw),pw;pw=dw;var fw="AI_NoSpeechGeneratedError",mw=`vercel.ai.error.${fw}`,hw=Symbol.for(mw),gw;gw=hw;var vw="AI_NoTranscriptGeneratedError",yw=`vercel.ai.error.${vw}`,ww=Symbol.for(yw),bw;bw=ww;var xw="AI_NoTranslationGeneratedError",_w=`vercel.ai.error.${xw}`,Sw=Symbol.for(_w),Tw;Tw=Sw;var Iw="AI_NoVideoGeneratedError",Ew=`vercel.ai.error.${Iw}`,kw=Symbol.for(Ew),$w;$w=kw;var Mw="AI_NoSuchToolError",Rw=`vercel.ai.error.${Mw}`,Aw=Symbol.for(Rw),Cw;Cw=Aw;var Ow="AI_ToolCallRepairError",Pw=`vercel.ai.error.${Ow}`,Nw=Symbol.for(Pw),zw;zw=Nw;var np="AI_UIMessageStreamError",ap=`vercel.ai.error.${np}`,jw=Symbol.for(ap),sp,pt=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:np,message:r});this[sp]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,ap)}};sp=jw;var Dw="AI_InvalidDataContentError",Uw=`vercel.ai.error.${Dw}`,Zw=Symbol.for(Uw),Lw;Lw=Zw;var Fw="AI_InvalidMessageRoleError",Bw=`vercel.ai.error.${Fw}`,qw=Symbol.for(Bw),Ww;Ww=qw;var ip="AI_MessageConversionError",lp=`vercel.ai.error.${ip}`,Vw=Symbol.for(lp),cp,Jw=class extends k{constructor({originalMessage:e,message:t}){super({name:ip,message:t});this[cp]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,lp)}};cp=Vw;var Kw="AI_RetryError",Gw=`vercel.ai.error.${Kw}`,Hw=Symbol.for(Gw),Yw;Yw=Hw;var Xw="7.0.58",Qw=async({url:e,maxBytes:t,abortSignal:r})=>{var o;let n=e.toString();try{let a=Nt({},`ai-sdk/${Xw}`,Zd()),s=await Dd({url:n,headers:a,abortSignal:r});if(!s.ok)throw await so(s),new ne({url:n,statusCode:s.status,statusText:s.statusText});return{data:await Ud({response:s,url:n,maxBytes:t!=null?t:ea}),mediaType:(o=s.headers.get("content-type"))!=null?o:void 0}}catch(a){if(ne.isInstance(a))throw a;throw new ne({url:n,cause:a})}};function up(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let r={...e};for(let o in t){if(o==="__proto__"||o==="constructor"||o==="prototype")continue;if(Object.prototype.hasOwnProperty.call(t,o)){let n=t[o];if(n===void 0)continue;let a=o in e?e[o]:void 0,s=n!==null&&typeof n==="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof RegExp),i=a!==null&&a!==void 0&&typeof a==="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);if(s&&i)r[o]=up(a,n);else r[o]=n}}return r}async function Gd({toolCallId:e,input:t,output:r,tool:o,errorMode:n}){if(n==="text")return{type:"error-text",value:Yt(r)};else if(n==="json")return{type:"error-json",value:Hd(r)};if(o==null?void 0:o.toModelOutput)return await o.toModelOutput({toolCallId:e,input:t,output:r});return typeof r==="string"?{type:"text",value:r}:{type:"json",value:Hd(r)}}function Hd(e){return e===void 0?null:e}var l={array:Bn,boolean:ud,custom:_d,discriminatedUnion:gd,enum:Wn,instanceof:Sd,lazy:xd,literal:yd,looseObject:md,never:Fn,null:dd,number:cd,object:fd,record:vd,string:Ln,union:qn,unknown:fr},ft=l.lazy(()=>l.union([l.null(),l.string(),l.number(),l.boolean(),l.record(l.string(),ft.optional()),l.array(ft)])),S=l.record(l.string(),l.record(l.string(),ft.optional())),wr=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(Ld,{message:"Must be a Buffer"})]),la=l.record(l.string(),l.string()),dp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),eb=l.object({type:l.literal("image"),image:l.union([wr,l.instanceof(URL),la]),mediaType:l.string().optional(),providerOptions:S.optional()}),pp=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:wr}),l.object({type:l.literal("url"),url:l.instanceof(URL)}),l.object({type:l.literal("reference"),reference:la}),l.object({type:l.literal("text"),text:l.string()})]),tb=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:wr}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),fp=l.object({type:l.literal("file"),data:l.union([pp,wr,l.instanceof(URL),la]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),rb=l.object({type:l.literal("reasoning"),text:l.string(),providerOptions:S.optional()}),ob=l.object({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerOptions:S.optional()}),nb=l.object({type:l.literal("reasoning-file"),data:l.union([tb,wr,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),ab=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),sb=l.discriminatedUnion("type",[l.object({type:l.literal("text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("json"),value:ft,providerOptions:S.optional()}),l.object({type:l.literal("execution-denied"),reason:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("error-text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("error-json"),value:ft,providerOptions:S.optional()}),l.object({type:l.literal("content"),value:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("file"),data:pp,mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-data"),data:l.string(),mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-url"),url:l.string(),mediaType:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("image-data"),data:l.string(),mediaType:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-url"),url:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("image-file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("custom"),providerOptions:S.optional()})]))})]),mp=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:sb,providerOptions:S.optional()}),ib=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),lb=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),cb=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),ub=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([dp,eb,fp]))]),providerOptions:S.optional()}),db=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([dp,ob,fp,rb,nb,ab,mp,ib]))]),providerOptions:S.optional()}),pb=l.object({role:l.literal("tool"),content:l.array(l.union([mp,lb])),providerOptions:S.optional()}),FI=l.union([cb,ub,db,pb]);function Yd(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var fb={};My(fb,{array:()=>vb,choice:()=>yb,json:()=>wb,object:()=>gb,text:()=>hb});function mb(e){let t=["ROOT"],r=-1,o=null,n=0;function a(d){return d>="0"&&d<="9"||d>="A"&&d<="F"||d>="a"&&d<="f"}function s(d,p,f){switch(d){case'"':{r=p,t.pop(),t.push(f),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=p,o=p,t.pop(),t.push(f),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(f),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=p,t.pop(),t.push(f),t.push("INSIDE_NUMBER");break}case"{":{r=p,t.pop(),t.push(f),t.push("INSIDE_OBJECT_START");break}case"[":{r=p,t.pop(),t.push(f),t.push("INSIDE_ARRAY_START");break}}}function i(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=p,t.pop();break}}}function u(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=p,t.pop();break}}}for(let d=0;d<e.length;d++){let p=e[d];switch(t[t.length-1]){case"ROOT":s(p,d,"FINISH");break;case"INSIDE_OBJECT_START":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=d,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(p){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(p,d,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{i(p,d);break}case"INSIDE_STRING":{switch(p){case'"':{t.pop(),r=d;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=d}break}case"INSIDE_ARRAY_START":{switch(p){case"]":{r=d,t.pop();break}default:{r=d,s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(p){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=d,t.pop();break}default:{r=d;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{if(t.pop(),p==="u")n=0,t.push("INSIDE_STRING_UNICODE_ESCAPE");else r=d;break}case"INSIDE_STRING_UNICODE_ESCAPE":{if(a(p)){if(n++,n===4)t.pop(),r=d}break}case"INSIDE_NUMBER":{switch(p){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=d;break}case"e":case"E":case"-":case".":break;case",":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")u(p,d);if(t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"}":{if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"]":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")u(p,d);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{let h=e.substring(o,d+1);if(!"false".startsWith(h)&&!"true".startsWith(h)&&!"null".startsWith(h)){if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);else if(t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")u(p,d)}else r=d;break}}}let c=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{c+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{c+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{c+="]";break}case"INSIDE_LITERAL":{let f=e.substring(o,e.length);if("true".startsWith(f))c+="true".slice(f.length);else if("false".startsWith(f))c+="false".slice(f.length);else if("null".startsWith(f))c+="null".slice(f.length)}}return c}async function br(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ge({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Ge({text:mb(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var hb=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),gb=({schema:e,name:t,description:r})=>{let o=gr(e);return{name:"object",responseFormat:ra(o.jsonSchema).then((n)=>({type:"json",schema:n,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:n},a){let s=await Ge({text:n});if(!s.success)throw new Ye({message:"No object generated: could not parse the response.",cause:s.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=await jt({value:s.value,schema:o});if(!i.success)throw new Ye({message:"No object generated: response did not match schema.",cause:i.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});return i.value},async parsePartialOutput({text:n}){let a=await br(n);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){return}}},vb=({element:e,name:t,description:r})=>{let o=gr(e);return{name:"array",responseFormat:ra(o.jsonSchema).then((n)=>{let{$schema:a,...s}=n;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:s}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:n},a){let s=await Ge({text:n});if(!s.success)throw new Ye({message:"No object generated: could not parse the response.",cause:s.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=s.value;if(i==null||typeof i!=="object"||!("elements"in i)||!Array.isArray(i.elements))throw new Ye({message:"No object generated: response did not match schema.",cause:new $e({value:i,cause:"response must be an object with an elements array"}),text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});let u=[];for(let c of i.elements){let d=await jt({value:c,schema:o});if(!d.success)throw new Ye({message:"No object generated: response did not match schema.",cause:d.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});u.push(d.value)}return u},async parsePartialOutput({text:n}){let a=await br(n);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let s=a.value;if(s==null||typeof s!=="object"||!("elements"in s)||!Array.isArray(s.elements))return;let i=a.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,u=[];for(let c of i){let d=await jt({value:c,schema:o});if(d.success)u.push(d.value)}return{partial:u}}}},createElementStreamTransform(){let n=0;return new TransformStream({transform({partialOutput:a},s){if(a!=null)for(;n<a.length;n++)s.enqueue(a[n])}})}}},yb=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:o},n){let a=await Ge({text:o});if(!a.success)throw new Ye({message:"No object generated: could not parse the response.",cause:a.error,text:o,response:n.response,usage:n.usage,finishReason:n.finishReason});let s=a.value;if(s==null||typeof s!=="object"||!("result"in s)||typeof s.result!=="string"||!e.includes(s.result))throw new Ye({message:"No object generated: response did not match schema.",cause:new $e({value:s,cause:"response must be an object that contains a choice value."}),text:o,response:n.response,usage:n.usage,finishReason:n.finishReason});return s.result},async parsePartialOutput({text:o}){let n=await br(o);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=n.value;if(a==null||typeof a!=="object"||!("result"in a)||typeof a.result!=="string")return;let s=e.filter((i)=>i.startsWith(a.result));if(n.state==="successful-parse")return s.includes(a.result)?{partial:a.result}:void 0;else return s.length===1?{partial:s[0]}:void 0}}},createElementStreamTransform(){return}}),wb=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},o){let n=await Ge({text:r});if(!n.success)throw new Ye({message:"No object generated: could not parse the response.",cause:n.error,text:r,response:o.response,usage:o.usage,finishReason:o.finishReason});return n.value},async parsePartialOutput({text:r}){let o=await br(r);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return o.value===void 0?void 0:{partial:o.value}}},createElementStreamTransform(){return}});var VI=J({prefix:"aitxt",size:24}),JI=J({prefix:"call",size:24});function hp({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var GI=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
130
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let s of e.seen.entries()){let i=s[1];if(t===s[0]){a(s);continue}if(e.external){let u=e.external.registry.get(s[0])?.id;if(t!==s[0]&&u){a(s);continue}}if(e.metadataRegistry.get(s[0])?.id){a(s);continue}if(i.cycle){a(s);continue}if(i.count>1){if(e.reused==="ref"){a(s);continue}}}}function mr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(i)=>{let c=e.seen.get(i);if(c.ref===null)return;let u=c.def??c.schema,d={...u},p=c.ref;if(c.ref=null,p){n(p);let m=e.seen.get(p),y=m.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(y);else Object.assign(u,y);if(Object.assign(u,d),i._zod.parent===p)for(let _ in u){if(_==="$ref"||_==="allOf")continue;if(!(_ in d))delete u[_]}if(y.$ref&&m.def)for(let _ in u){if(_==="$ref"||_==="allOf")continue;if(_ in m.def&&JSON.stringify(u[_])===JSON.stringify(m.def[_]))delete u[_]}}let f=i._zod.parent;if(f&&f!==p){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.def[y]))delete u[y]}}}e.override({zodSchema:i,jsonSchema:u,path:c.path??[]})};for(let i of[...e.seen.entries()].reverse())n(i[0]);let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let i=e.external.registry.get(t)?.id;if(!i)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(i)}Object.assign(o,r.def??r.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&o.id===a)delete o.id;let s=e.external?.defs??{};for(let i of e.seen.entries()){let c=i[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;s[c.defId]=c.def}}if(e.external);else if(Object.keys(s).length>0)if(e.target==="draft-2020-12")o.$defs=s;else o.definitions=s;try{let i=JSON.parse(JSON.stringify(o));return Object.defineProperty(i,"~standard",{value:{...t["~standard"],jsonSchema:{input:dr(t,"input",e.processors),output:dr(t,"output",e.processors)}},enumerable:!1,writable:!1}),i}catch(i){throw Error("Error converting schema to JSON.")}}function re(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return re(n.element,r);if(n.type==="set")return re(n.valueType,r);if(n.type==="lazy")return re(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return re(n.innerType,r);if(n.type==="intersection")return re(n.left,r)||re(n.right,r);if(n.type==="record"||n.type==="map")return re(n.keyType,r)||re(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return re(n.in,r)||re(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(re(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(re(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(re(o,r))return!0;if(n.rest&&re(n.rest,r))return!0;return!1}return!1}var Du=(e,t={})=>(r)=>{let n=pr({...r,processors:t});return L(e,n),fr(n,e),mr(n,e)},dr=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:a}=n??{},s=pr({...o??{},target:a,io:t,processors:r});return L(e,s),fr(s,e),mr(s,e)};var Mg={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},bo=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:a,maximum:s,format:i,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof a==="number")o.minLength=a;if(typeof s==="number")o.maxLength=s;if(i){if(o.format=Mg[i]??i,o.format==="")delete o.format;if(i==="time")delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let d=[...c];if(d.length===1)o.pattern=d[0].source;else if(d.length>1)o.allOf=[...d.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},wo=(e,t,r,n)=>{let o=r,{minimum:a,maximum:s,format:i,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:d}=e._zod.bag;if(typeof i==="string"&&i.includes("int"))o.type="integer";else o.type="number";let p=typeof d==="number"&&d>=(a??Number.NEGATIVE_INFINITY),f=typeof u==="number"&&u<=(s??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(m)o.minimum=d,o.exclusiveMinimum=!0;else o.exclusiveMinimum=d;else if(typeof a==="number")o.minimum=a;if(f)if(m)o.maximum=u,o.exclusiveMaximum=!0;else o.exclusiveMaximum=u;else if(typeof s==="number")o.maximum=s;if(typeof c==="number")o.multipleOf=c},xo=(e,t,r,n)=>{r.type="boolean"},Zu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Lu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},_o=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},Fu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Bu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},So=(e,t,r,n)=>{r.not={}},qu=(e,t,r,n)=>{},To=(e,t,r,n)=>{},Wu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Io=(e,t,r,n)=>{let o=e._zod.def,a=rr(o.entries);if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";r.enum=a},Eo=(e,t,r,n)=>{let o=e._zod.def,a=[];for(let s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(s));else a.push(s);if(a.length===0);else if(a.length===1){let s=a[0];if(r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[s];else r.const=s}else{if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";if(a.every((s)=>typeof s==="boolean"))r.type="boolean";if(a.every((s)=>s===null))r.type="null";r.enum=a}},Vu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Gu=(e,t,r,n)=>{let o=r,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");o.type="string",o.pattern=a.source},Ju=(e,t,r,n)=>{let o=r,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:c}=e._zod.bag;if(s!==void 0)a.minLength=s;if(i!==void 0)a.maxLength=i;if(c)if(c.length===1)a.contentMediaType=c[0],Object.assign(o,a);else Object.assign(o,a),o.anyOf=c.map((u)=>({contentMediaType:u}));else Object.assign(o,a)},Ku=(e,t,r,n)=>{r.type="boolean"},ko=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Hu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},$o=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Yu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Xu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Mo=(e,t,r,n)=>{let o=r,a=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;if(typeof s==="number")o.minItems=s;if(typeof i==="number")o.maxItems=i;o.type="array",o.items=L(a.element,t,{...n,path:[...n.path,"items"]})},Ro=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="object",o.properties={};let s=a.shape;for(let u in s)o.properties[u]=L(s[u],t,{...n,path:[...n.path,"properties",u]});let i=new Set(Object.keys(s)),c=new Set([...i].filter((u)=>{let d=a.shape[u]._zod;if(t.io==="input")return d.optin===void 0;else return d.optout===void 0}));if(c.size>0)o.required=Array.from(c);if(a.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")o.additionalProperties=!1}else if(a.catchall)o.additionalProperties=L(a.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},Ao=(e,t,r,n)=>{let o=e._zod.def,a=o.inclusive===!1,s=o.options.map((i,c)=>L(i,t,{...n,path:[...n.path,a?"oneOf":"anyOf",c]}));if(a)r.oneOf=s;else r.anyOf=s},Co=(e,t,r,n)=>{let o=e._zod.def,a=L(o.left,t,{...n,path:[...n.path,"allOf",0]}),s=L(o.right,t,{...n,path:[...n.path,"allOf",1]}),i=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...i(a)?a.allOf:[a],...i(s)?s.allOf:[s]];r.allOf=c},Qu=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="array";let s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=a.items.map((f,m)=>L(f,t,{...n,path:[...n.path,s,m]})),u=a.rest?L(a.rest,t,{...n,path:[...n.path,i,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(o.prefixItems=c,u)o.items=u}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(o.minItems=c.length,!u)o.maxItems=c.length}else if(o.items=c,u)o.additionalItems=u;let{minimum:d,maximum:p}=e._zod.bag;if(typeof d==="number")o.minItems=d;if(typeof p==="number")o.maxItems=p},Oo=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="object";let s=a.keyType,c=s._zod.bag?.patterns;if(a.mode==="loose"&&c&&c.size>0){let d=L(a.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let p of c)o.patternProperties[p.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")o.propertyNames=L(a.keyType,t,{...n,path:[...n.path,"propertyNames"]});o.additionalProperties=L(a.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let u=s._zod.values;if(u){let d=[...u].filter((p)=>typeof p==="string"||typeof p==="number");if(d.length>0)o.required=d}},Po=(e,t,r,n)=>{let o=e._zod.def,a=L(o.innerType,t,n),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=o.innerType,r.nullable=!0;else r.anyOf=[a,{type:"null"}]},No=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},zo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},jo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);if(a.ref=o.innerType,t.io==="input")r._prefault=JSON.parse(JSON.stringify(o.defaultValue))},Do=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},Uo=(e,t,r,n)=>{let o=e._zod.def,a=o.in._zod.traits.has("$ZodTransform"),s=t.io==="input"?a?o.out:o.in:o.out;L(s,t,n);let i=t.seen.get(e);i.ref=s},Zo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType,r.readOnly=!0},ed=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},on=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},Lo=(e,t,r,n)=>{let o=e._zod.innerType;L(o,t,n);let a=t.seen.get(e);a.ref=o},Uu={string:bo,number:wo,boolean:xo,bigint:Zu,symbol:Lu,null:_o,undefined:Fu,void:Bu,never:So,any:qu,unknown:To,date:Wu,enum:Io,literal:Eo,nan:Vu,template_literal:Gu,file:Ju,success:Ku,custom:ko,function:Hu,transform:$o,map:Yu,set:Xu,array:Mo,object:Ro,union:Ao,intersection:Co,tuple:Qu,record:Oo,nullable:Po,nonoptional:No,default:zo,prefault:jo,catch:Do,pipe:Uo,readonly:Zo,promise:ed,optional:on,lazy:Lo};function Fo(e,t){if("_idmap"in e){let n=e,o=pr({...t,processors:Uu}),a={};for(let c of n._idmap.entries()){let[u,d]=c;L(d,o)}let s={},i={registry:n,uri:t?.uri,defs:a};o.external=i;for(let c of n._idmap.entries()){let[u,d]=c;fr(o,d),s[u]=mr(o,d)}if(Object.keys(a).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[c]:a}}return{schemas:s}}let r=pr({...t,processors:Uu});return L(e,r),fr(r,e),mr(r,e)}var zg=g("ZodISODateTime",(e,t)=>{gc.init(e,t),W.init(e,t)});function td(e){return Tu(zg,e)}var jg=g("ZodISODate",(e,t)=>{vc.init(e,t),W.init(e,t)});function rd(e){return Iu(jg,e)}var Dg=g("ZodISOTime",(e,t)=>{yc.init(e,t),W.init(e,t)});function nd(e){return Eu(Dg,e)}var Ug=g("ZodISODuration",(e,t)=>{bc.init(e,t),W.init(e,t)});function od(e){return ku(Ug,e)}var Fg=(e,t)=>{Wr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>Yi(e,r)},flatten:{value:(r)=>Hi(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Ot,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Ot,2)}},isEmpty:{get(){return e.issues.length===0}}})};var de=g("ZodError",Fg,{Parent:Error});var ad=Vr(de),sd=Gr(de),id=sr(de),sn=ir(de),ld=el(de),cd=tl(de),ud=rl(de),dd=nl(de),pd=ol(de),fd=al(de),md=sl(de),hd=il(de);var gd=new WeakMap;function gr(e,t,r){let n=Object.getPrototypeOf(e),o=gd.get(n);if(!o)o=new Set,gd.set(n,o);if(o.has(t))return;o.add(t);for(let a in r){let s=r[a];Object.defineProperty(n,a,{configurable:!0,enumerable:!1,get(){let i=s.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i}),i},set(i){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i})}})}}var q=g("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:dr(e,"input"),output:dr(e,"output")}}),e.toJSONSchema=Du(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,n)=>ad(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>id(e,r,n),e.parseAsync=async(r,n)=>sd(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>sn(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>ld(e,r,n),e.decode=(r,n)=>cd(e,r,n),e.encodeAsync=async(r,n)=>ud(e,r,n),e.decodeAsync=async(r,n)=>dd(e,r,n),e.safeEncode=(r,n)=>pd(e,r,n),e.safeDecode=(r,n)=>fd(e,r,n),e.safeEncodeAsync=async(r,n)=>md(e,r,n),e.safeDecodeAsync=async(r,n)=>hd(e,r,n),gr(e,"ZodType",{check(...r){let n=this.def;return this.clone(O.mergeDefs(n,{checks:[...n.checks??[],...r.map((o)=>typeof o==="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,n){return _e(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(Pv(r,n))},superRefine(r,n){return this.check(Nv(r,n))},overwrite(r){return this.check(He(r))},optional(){return wd(this)},exactOptional(){return xv(this)},nullable(){return xd(this)},nullish(){return wd(xd(this))},nonoptional(r){return kv(this,r)},array(){return Vo(this)},or(r){return Go([this,r])},and(r){return gv(this,r)},transform(r){return _d(this,bv(r))},default(r){return Tv(this,r)},prefault(r){return Ev(this,r)},catch(r){return Mv(this,r)},pipe(r){return _d(this,r)},readonly(){return Cv(this)},describe(r){let n=this.clone();return mt.add(n,{description:r}),n},meta(...r){if(r.length===0)return mt.get(this);let n=this.clone();return mt.add(n,r[0]),n},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(e,"description",{get(){return mt.get(e)?.description},configurable:!0}),e)),Sd=g("_ZodString",(e,t)=>{Xr.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>bo(e,n,o,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,gr(e,"_ZodString",{regex(...n){return this.check(io(...n))},includes(...n){return this.check(uo(...n))},startsWith(...n){return this.check(po(...n))},endsWith(...n){return this.check(fo(...n))},min(...n){return this.check(zt(...n))},max(...n){return this.check(rn(...n))},length(...n){return this.check(nn(...n))},nonempty(...n){return this.check(zt(1,...n))},lowercase(n){return this.check(lo(n))},uppercase(n){return this.check(co(n))},trim(){return this.check(ho())},normalize(...n){return this.check(mo(...n))},toLowerCase(){return this.check(go())},toUpperCase(){return this.check(vo())},slugify(){return this.check(yo())}})}),qg=g("ZodString",(e,t)=>{Xr.init(e,t),Sd.init(e,t),e.email=(r)=>e.check(nu(Wg,r)),e.url=(r)=>e.check(lu(Vg,r)),e.jwt=(r)=>e.check(Su(iv,r)),e.emoji=(r)=>e.check(cu(Gg,r)),e.guid=(r)=>e.check(so(vd,r)),e.uuid=(r)=>e.check(ou(ln,r)),e.uuidv4=(r)=>e.check(au(ln,r)),e.uuidv6=(r)=>e.check(su(ln,r)),e.uuidv7=(r)=>e.check(iu(ln,r)),e.nanoid=(r)=>e.check(uu(Jg,r)),e.guid=(r)=>e.check(so(vd,r)),e.cuid=(r)=>e.check(du(Kg,r)),e.cuid2=(r)=>e.check(pu(Hg,r)),e.ulid=(r)=>e.check(fu(Yg,r)),e.base64=(r)=>e.check(wu(ov,r)),e.base64url=(r)=>e.check(xu(av,r)),e.xid=(r)=>e.check(mu(Xg,r)),e.ksuid=(r)=>e.check(hu(Qg,r)),e.ipv4=(r)=>e.check(gu(ev,r)),e.ipv6=(r)=>e.check(vu(tv,r)),e.cidrv4=(r)=>e.check(yu(rv,r)),e.cidrv6=(r)=>e.check(bu(nv,r)),e.e164=(r)=>e.check(_u(sv,r)),e.datetime=(r)=>e.check(td(r)),e.date=(r)=>e.check(rd(r)),e.time=(r)=>e.check(nd(r)),e.duration=(r)=>e.check(od(r))});function qo(e){return ru(qg,e)}var W=g("ZodStringFormat",(e,t)=>{B.init(e,t),Sd.init(e,t)}),Wg=g("ZodEmail",(e,t)=>{ic.init(e,t),W.init(e,t)});var vd=g("ZodGUID",(e,t)=>{ac.init(e,t),W.init(e,t)});var ln=g("ZodUUID",(e,t)=>{sc.init(e,t),W.init(e,t)});var Vg=g("ZodURL",(e,t)=>{lc.init(e,t),W.init(e,t)});var Gg=g("ZodEmoji",(e,t)=>{cc.init(e,t),W.init(e,t)});var Jg=g("ZodNanoID",(e,t)=>{uc.init(e,t),W.init(e,t)});var Kg=g("ZodCUID",(e,t)=>{dc.init(e,t),W.init(e,t)});var Hg=g("ZodCUID2",(e,t)=>{pc.init(e,t),W.init(e,t)});var Yg=g("ZodULID",(e,t)=>{fc.init(e,t),W.init(e,t)});var Xg=g("ZodXID",(e,t)=>{mc.init(e,t),W.init(e,t)});var Qg=g("ZodKSUID",(e,t)=>{hc.init(e,t),W.init(e,t)});var ev=g("ZodIPv4",(e,t)=>{wc.init(e,t),W.init(e,t)});var tv=g("ZodIPv6",(e,t)=>{xc.init(e,t),W.init(e,t)});var rv=g("ZodCIDRv4",(e,t)=>{_c.init(e,t),W.init(e,t)});var nv=g("ZodCIDRv6",(e,t)=>{Sc.init(e,t),W.init(e,t)});var ov=g("ZodBase64",(e,t)=>{Ic.init(e,t),W.init(e,t)});var av=g("ZodBase64URL",(e,t)=>{Ec.init(e,t),W.init(e,t)});var sv=g("ZodE164",(e,t)=>{kc.init(e,t),W.init(e,t)});var iv=g("ZodJWT",(e,t)=>{$c.init(e,t),W.init(e,t)});var Td=g("ZodNumber",(e,t)=>{no.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>wo(e,n,o,a),gr(e,"ZodNumber",{gt(n,o){return this.check(en(n,o))},gte(n,o){return this.check(ur(n,o))},min(n,o){return this.check(ur(n,o))},lt(n,o){return this.check(Qr(n,o))},lte(n,o){return this.check(cr(n,o))},max(n,o){return this.check(cr(n,o))},int(n){return this.check(yd(n))},safe(n){return this.check(yd(n))},positive(n){return this.check(en(0,n))},nonnegative(n){return this.check(ur(0,n))},negative(n){return this.check(Qr(0,n))},nonpositive(n){return this.check(cr(0,n))},multipleOf(n,o){return this.check(tn(n,o))},step(n,o){return this.check(tn(n,o))},finite(){return this}});let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??0.5),e.isFinite=!0,e.format=r.format??null});function Id(e){return $u(Td,e)}var lv=g("ZodNumberFormat",(e,t)=>{Mc.init(e,t),Td.init(e,t)});function yd(e){return Mu(lv,e)}var cv=g("ZodBoolean",(e,t)=>{Rc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xo(e,r,n,o)});function Ed(e){return Ru(cv,e)}var uv=g("ZodNull",(e,t)=>{Ac.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_o(e,r,n,o)});function kd(e){return Au(uv,e)}var dv=g("ZodUnknown",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>To(e,r,n,o)});function hr(){return Cu(dv)}var pv=g("ZodNever",(e,t)=>{Oc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>So(e,r,n,o)});function Wo(e){return Ou(pv,e)}var fv=g("ZodArray",(e,t)=>{Pc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Mo(e,r,n,o),e.element=t.element,gr(e,"ZodArray",{min(r,n){return this.check(zt(r,n))},nonempty(r){return this.check(zt(1,r))},max(r,n){return this.check(rn(r,n))},length(r,n){return this.check(nn(r,n))},unwrap(){return this.element}})});function Vo(e,t){return Pu(fv,e,t)}var $d=g("ZodObject",(e,t)=>{jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ro(e,r,n,o),O.defineLazy(e,"shape",()=>t.shape),gr(e,"ZodObject",{keyof(){return Jo(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:hr()})},loose(){return this.clone({...this._zod.def,catchall:hr()})},strict(){return this.clone({...this._zod.def,catchall:Wo()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return O.extend(this,r)},safeExtend(r){return O.safeExtend(this,r)},merge(r){return O.merge(this,r)},pick(r){return O.pick(this,r)},omit(r){return O.omit(this,r)},partial(...r){return O.partial(Nd,this,r[0])},required(...r){return O.required(zd,this,r[0])}})});function Md(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new $d(r)}function Rd(e,t){return new $d({type:"object",shape:e,catchall:hr(),...O.normalizeParams(t)})}var Ad=g("ZodUnion",(e,t)=>{oo.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ao(e,r,n,o),e.options=t.options});function Go(e,t){return new Ad({type:"union",options:e,...O.normalizeParams(t)})}var mv=g("ZodDiscriminatedUnion",(e,t)=>{Ad.init(e,t),Dc.init(e,t)});function Cd(e,t,r){return new mv({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var hv=g("ZodIntersection",(e,t)=>{Uc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Co(e,r,n,o)});function gv(e,t){return new hv({type:"intersection",left:e,right:t})}var bd=g("ZodRecord",(e,t)=>{Zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Oo(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function Od(e,t,r){if(!t||!t._zod)return new bd({type:"record",keyType:qo(),valueType:e,...O.normalizeParams(t)});return new bd({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Bo=g("ZodEnum",(e,t)=>{Lc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Io(e,n,o,a),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let a={};for(let s of n)if(r.has(s))a[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new Bo({...t,checks:[],...O.normalizeParams(o),entries:a})},e.exclude=(n,o)=>{let a={...t.entries};for(let s of n)if(r.has(s))delete a[s];else throw Error(`Key ${s} not found in enum`);return new Bo({...t,checks:[],...O.normalizeParams(o),entries:a})}});function Jo(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Bo({type:"enum",entries:r,...O.normalizeParams(t)})}var vv=g("ZodLiteral",(e,t)=>{Fc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eo(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Pd(e,t){return new vv({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var yv=g("ZodTransform",(e,t)=>{Bc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$o(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new er(e.constructor.name);r.addIssue=(a)=>{if(typeof a==="string")r.issues.push(O.issue(a,r.value,t));else{let s=a;if(s.fatal)s.continue=!1;s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(O.issue(s))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((a)=>(r.value=a,r.fallback=!0,r));return r.value=o,r.fallback=!0,r}});function bv(e){return new yv({type:"transform",transform:e})}var Nd=g("ZodOptional",(e,t)=>{ao.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>on(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wd(e){return new Nd({type:"optional",innerType:e})}var wv=g("ZodExactOptional",(e,t)=>{qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>on(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xv(e){return new wv({type:"optional",innerType:e})}var _v=g("ZodNullable",(e,t)=>{Wc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xd(e){return new _v({type:"nullable",innerType:e})}var Sv=g("ZodDefault",(e,t)=>{Vc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Tv(e,t){return new Sv({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Iv=g("ZodPrefault",(e,t)=>{Gc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ev(e,t){return new Iv({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var zd=g("ZodNonOptional",(e,t)=>{Jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>No(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function kv(e,t){return new zd({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var $v=g("ZodCatch",(e,t)=>{Kc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Do(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Mv(e,t){return new $v({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var Rv=g("ZodPipe",(e,t)=>{Hc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Uo(e,r,n,o),e.in=t.in,e.out=t.out});function _d(e,t){return new Rv({type:"pipe",in:e,out:t})}var Av=g("ZodReadonly",(e,t)=>{Yc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Cv(e){return new Av({type:"readonly",innerType:e})}var Ov=g("ZodLazy",(e,t)=>{Xc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Lo(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function jd(e){return new Ov({type:"lazy",getter:e})}var Ko=g("ZodCustom",(e,t)=>{Qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ko(e,r,n,o)});function Dd(e,t){return Nu(Ko,e??(()=>!0),t)}function Pv(e,t={}){return zu(Ko,e,t)}function Nv(e,t){return ju(e,t)}function Ud(e,t={}){let r=new Ko({type:"custom",check:"custom",fn:(n)=>n instanceof e,abort:!0,...O.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=(n)=>{if(!(n.value instanceof e))n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var zv=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],t0=[...zv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var jv=12,Dv=131072,r0=Dv+jv;async function cn(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Kd="AI_DownloadError",Hd=`vercel.ai.error.${Kd}`,Uv=Symbol.for(Hd),Zd,Ld,oe=class extends(Ld=k,Zd=Uv,Ld){constructor({url:e,statusCode:t,statusText:r,cause:n,message:o=n==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${n}`}){super({name:Kd,message:o,cause:n});this[Zd]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,Hd)}};function Zv(e=globalThis){return e.window!=null}function Fd(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function Lv(e){let t;try{t=new URL(e)}catch(n){throw new oe({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new oe({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new oe({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new oe({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let n=r.slice(1,-1);if(Yd(n))throw new oe({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(ta(r)){if(ra(r))throw new oe({url:e,message:`URL with IP address ${r} is not allowed`});return}}function Fv({address:e,family:t,hostname:r}){if(t===4?!ta(e)||ra(e):t===6?Yd(e):!0)throw new oe({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function ta(e){let t=e.split(".");if(t.length!==4)return!1;return t.every((r)=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255&&String(n)===r})}function ra(e){let t=e.split(".").map(Number),[r,n,o]=t;if(r===0)return!0;if(r===10)return!0;if(r===100&&n>=64&&n<=127)return!0;if(r===127)return!0;if(r===169&&n===254)return!0;if(r===172&&n>=16&&n<=31)return!0;if(r===192&&n===0&&o===0)return!0;if(r===192&&n===0&&o===2)return!0;if(r===192&&n===168)return!0;if(r===198&&(n===18||n===19))return!0;if(r===198&&n===51&&o===100)return!0;if(r===203&&n===0&&o===113)return!0;if(r>=224)return!0;return!1}function Bv(e){let t=e.toLowerCase(),r=t.indexOf("%");if(r!==-1)t=t.slice(0,r);let n=t.split("::");if(n.length>2)return null;let o=(s)=>{if(s==="")return[];let i=[],c=s.split(":");for(let u=0;u<c.length;u++){let d=c[u];if(d.includes(".")){if(u!==c.length-1||!ta(d))return null;let[p,f,m,y]=d.split(".").map(Number);i.push(p<<8|f,m<<8|y);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;i.push(parseInt(d,16))}return i},a=o(n[0]);if(a===null)return null;if(n.length===2){let s=o(n[1]);if(s===null)return null;let i=8-a.length-s.length;if(i<0)return null;return[...a,...Array(i).fill(0),...s]}return a.length===8?a:null}function Yd(e){let t=Bv(e);if(t===null)return!0;let r=(o)=>t.slice(0,o).every((a)=>a===0);if(r(7)&&(t[7]===0||t[7]===1))return!0;if((t[0]&65024)===64512)return!0;if((t[0]&65472)===65152)return!0;if((t[0]&65472)===65216)return!0;if((t[0]&65280)===65280)return!0;if(t[0]===8193&&t[1]===3512)return!0;if(t[0]===16383&&(t[1]&61440)===0)return!0;if(r(6)||r(5)&&t[5]===65535||r(4)&&t[4]===65535&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===0&&t[3]===0&&t[4]===0&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===1){let o=t[6]>>8&255,a=t[6]&255,s=t[7]>>8&255,i=t[7]&255;return ra(`${o}.${a}.${s}.${i}`)}return!1}function qv(e){return(t,r,n)=>{e(t,{...r,all:!0},(o,a)=>{if(o){n(o);return}try{let[s]=a;if(s==null)throw Error(`Hostname ${t} did not resolve to an address`);for(let{address:i,family:c}of a)Fv({address:i,family:c,hostname:t});if(r.all===!0)n(null,a);else n(null,s.address,s.family)}catch(s){n(s instanceof Error?s:Error(String(s)))}})}}var Ho,Xd=globalThis.fetch,Wv=Jv(Xd);function Vv(){var e,t;let r=globalThis.process;return((e=r==null?void 0:r.release)==null?void 0:e.name)==="node"&&((t=r.versions)==null?void 0:t.bun)==null}async function Gv(){if(!Vv()||!Wv||globalThis.fetch!==Xd)return globalThis.fetch;return Ho!=null?Ho:Ho=Promise.resolve().then(Kv)}function Jv(e){if(typeof e!=="function")return!1;let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}function Kv(){let{createRequire:e}=Bd("node:module"),{lookup:t}=Bd("node:dns"),{Agent:r,fetch:n}=e(Qd())("undici"),o=new r({connect:{lookup:qv(t)}});return(a,s)=>n(a,{...s,dispatcher:o})}function Bd(e){var t;let r=globalThis.process,n=(t=r==null?void 0:r.getBuiltinModule)==null?void 0:t.call(r,e);if(n==null)throw Error(`Node.js built-in module ${e} is unavailable`);return n}function Qd(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(o,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,Qd);let[r]=t.stack,n=r==null?void 0:r.getFileName();if(n==null)throw Error("Unable to determine the current module path");return n}finally{Error.prepareStackTrace=e}}var Hv=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function Yv(e){let t=new Headers(e);for(let r of Hv)t.delete(r);return t}var Xv=10,Qv=new Set([301,302,303,307,308]);async function ep({url:e,headers:t,abortSignal:r,maxRedirects:n=Xv,fetch:o,trustedOrigin:a}){let s=t===void 0?void 0:Yv(t),i=(u)=>{let d={signal:r,redirect:u};if(s!==void 0)d.headers=new Headers(s);return d},c=e;for(let u=0;u<=n;u++){let d=a!==void 0&&Fd(c,a);if(!d)Lv(c);let p=o!=null?o:d?globalThis.fetch:await Gv(),f=await p(c,i("manual"));if(f.type==="opaqueredirect"){if(!Zv())throw new oe({url:e,message:`Redirect from ${c} could not be validated and was blocked`});return await p(c,i("follow"))}let m=f.headers.get("location");if(Qv.has(f.status)&&m){await cn(f);let y=new URL(m,c).toString();if(s!==void 0&&!Fd(y,c)){let v=s.get("user-agent");s=new Headers(v==null?void 0:{"user-agent":v})}c=y;continue}return f}throw new oe({url:e,message:`Too many redirects (max ${n})`})}var na=2147483648;async function tp({response:e,url:t,maxBytes:r=na}){let n=e.headers.get("content-length");if(n!=null){let d=parseInt(n,10);if(!isNaN(d)&&d>r)throw await cn(e),new oe({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${d}).`})}let o=e.body;if(o==null)return new Uint8Array(0);let a=o.getReader(),s=[],i=0;try{while(!0){let{done:d,value:p}=await a.read();if(d)break;if(i+=p.length,i>r)throw new oe({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});s.push(p)}}finally{try{await a.cancel()}catch(d){}finally{a.releaseLock()}}let c=new Uint8Array(i),u=0;for(let d of s)c.set(d,u),u+=d.length;return c}var G=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:n="-"}={})=>{let o=()=>{let a=r.length,s=Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*a|0];return s.join("")};if(e==null)return o;if(r.includes(n))throw new gi({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${o()}`},jt=G();function rp(e=globalThis){var t,r,n;if(e.window)return"runtime/browser";if((t=e.navigator)==null?void 0:t.userAgent)return`runtime/${e.navigator.userAgent.toLowerCase()}`;if((n=(r=e.process)==null?void 0:r.versions)==null?void 0:n.node)return`runtime/node.js/${e.process.version.substring(0)}`;if(e.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function ey(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((r,n)=>{t[n.toLowerCase()]=r});else{if(!Array.isArray(e))e=Object.entries(e);for(let[r,n]of e)if(n!=null)t[r.toLowerCase()]=n}return t}function Dt(e,...t){let r=new Headers(ey(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function np(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function op(e){return e!=null}var ty=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ry=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function qd(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(ty.test(e)===!1&&ry.test(e)===!1)return t;return ny(t)}function ny(e){let t=[e];while(t.length){let r=t;t=[];for(let n of r){if(Object.prototype.hasOwnProperty.call(n,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(n,"constructor")&&n.constructor!==null&&typeof n.constructor==="object"&&Object.prototype.hasOwnProperty.call(n.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let o in n){let a=n[o];if(a&&typeof a==="object")t.push(a)}}}return e}function oy(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return qd(e)}try{return qd(e)}finally{Error.stackTraceLimit=t}}function oa(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;let{properties:r}=e;if(r!=null)for(let n of Object.keys(r))r[n]=ht(r[n])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(ht):ht(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(ht);if(e.allOf!=null)e.allOf=e.allOf.map(ht);if(e.oneOf!=null)e.oneOf=e.oneOf.map(ht);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=ht(t[r]);return e}function ht(e){if(typeof e==="boolean")return e;return oa(e)}var ay=Symbol("Let zodToJsonSchema decide on which parser to use"),Wd={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},sy=(e)=>typeof e==="string"?{...Wd,name:e}:{...Wd,...e};function pe(){return{}}function iy(e,t){var r,n,o;let a={type:"array"};if(((r=e.type)==null?void 0:r._def)&&((o=(n=e.type)==null?void 0:n._def)==null?void 0:o.typeName)!=="ZodAny")a.items=U(e.type._def,{...t,currentPath:[...t.currentPath,"items"]});if(e.minLength)a.minItems=e.minLength.value;if(e.maxLength)a.maxItems=e.maxLength.value;if(e.exactLength)a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value;return a}function ly(e){let t={type:"integer",format:"int64"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function cy(){return{type:"boolean"}}function ap(e,t){return U(e.type._def,t)}var uy=(e,t)=>U(e.innerType._def,t);function sp(e,t,r){let n=r!=null?r:t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o)=>sp(e,t,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return dy(e)}}var dy=(e)=>{let t={type:"integer",format:"unix-time"};for(let r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function py(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function fy(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):pe()}function my(e){return{type:"string",enum:Array.from(e.values)}}var hy=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function gy(e,t){let r=[U(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),U(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter((o)=>!!o),n=[];return r.forEach((o)=>{if(hy(o))n.push(...o.allOf);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){let{additionalProperties:s,...i}=o;a=i}n.push(a)}}),n.length?{allOf:n}:void 0}function vy(e){let t=typeof e.value;if(t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string")return{type:Array.isArray(e.value)?"array":"object"};return{type:t==="bigint"?"integer":t,const:e.value}}var Yo=void 0,Se={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(Yo===void 0)Yo=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Yo},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function ip(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,n.value):n.value;break;case"max":r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,n.value):n.value;break;case"email":switch(t.emailStrategy){case"format:email":Te(r,"email",n.message,t);break;case"format:idn-email":Te(r,"idn-email",n.message,t);break;case"pattern:zod":ne(r,Se.email,n.message,t);break}break;case"url":Te(r,"uri",n.message,t);break;case"uuid":Te(r,"uuid",n.message,t);break;case"regex":ne(r,n.regex,n.message,t);break;case"cuid":ne(r,Se.cuid,n.message,t);break;case"cuid2":ne(r,Se.cuid2,n.message,t);break;case"startsWith":ne(r,RegExp(`^${Xo(n.value,t)}`),n.message,t);break;case"endsWith":ne(r,RegExp(`${Xo(n.value,t)}$`),n.message,t);break;case"datetime":Te(r,"date-time",n.message,t);break;case"date":Te(r,"date",n.message,t);break;case"time":Te(r,"time",n.message,t);break;case"duration":Te(r,"duration",n.message,t);break;case"length":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,n.value):n.value,r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,n.value):n.value;break;case"includes":{ne(r,RegExp(Xo(n.value,t)),n.message,t);break}case"ip":{if(n.version!=="v6")Te(r,"ipv4",n.message,t);if(n.version!=="v4")Te(r,"ipv6",n.message,t);break}case"base64url":ne(r,Se.base64url,n.message,t);break;case"jwt":ne(r,Se.jwt,n.message,t);break;case"cidr":{if(n.version!=="v6")ne(r,Se.ipv4Cidr,n.message,t);if(n.version!=="v4")ne(r,Se.ipv6Cidr,n.message,t);break}case"emoji":ne(r,Se.emoji(),n.message,t);break;case"ulid":{ne(r,Se.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Te(r,"binary",n.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{ne(r,Se.base64,n.message,t);break}}break}case"nanoid":ne(r,Se.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Xo(e,t){return t.patternStrategy==="escape"?by(e):e}var yy=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function by(e){let t="";for(let r=0;r<e.length;r++){if(!yy.has(e[r]))t+="\\";t+=e[r]}return t}function Te(e,t,r,n){var o;if(e.format||((o=e.anyOf)==null?void 0:o.some((a)=>a.format))){if(!e.anyOf)e.anyOf=[];if(e.format)e.anyOf.push({format:e.format}),delete e.format;e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})}else e.format=t}function ne(e,t,r,n){var o;if(e.pattern||((o=e.allOf)==null?void 0:o.some((a)=>a.pattern))){if(!e.allOf)e.allOf=[];if(e.pattern)e.allOf.push({pattern:e.pattern}),delete e.pattern;e.allOf.push({pattern:Vd(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=Vd(t,n)}function Vd(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},o=n.i?e.source.toLowerCase():e.source,a="",s=!1,i=!1,c=!1;for(let u=0;u<o.length;u++){if(s){a+=o[u],s=!1;continue}if(n.i){if(i){if(o[u].match(/[a-z]/)){if(c)a+=o[u],a+=`${o[u-2]}-${o[u]}`.toUpperCase(),c=!1;else if(o[u+1]==="-"&&((r=o[u+2])==null?void 0:r.match(/[a-z]/)))a+=o[u],c=!0;else a+=`${o[u]}${o[u].toUpperCase()}`;continue}}else if(o[u].match(/[a-z]/)){a+=`[${o[u]}${o[u].toUpperCase()}]`;continue}}if(n.m){if(o[u]==="^"){a+=`(^|(?<=[\r
|
|
131
|
+
]))`;continue}else if(o[u]==="$"){a+=`($|(?=[\r
|
|
132
|
+
]))`;continue}}if(n.s&&o[u]==="."){a+=i?`${o[u]}\r
|
|
133
|
+
`:`[${o[u]}\r
|
|
134
|
+
]`;continue}if(a+=o[u],o[u]==="\\")s=!0;else if(i&&o[u]==="]")i=!1;else if(!i&&o[u]==="[")i=!0}try{new RegExp(a)}catch(u){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return a}function lp(e,t){var r,n,o,a,s,i;let c={type:"object",additionalProperties:(r=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((n=e.keyType)==null?void 0:n._def.typeName)==="ZodString"&&((o=e.keyType._def.checks)==null?void 0:o.length)){let{type:u,...d}=ip(e.keyType._def,t);return{...c,propertyNames:d}}else if(((a=e.keyType)==null?void 0:a._def.typeName)==="ZodEnum")return{...c,propertyNames:{enum:e.keyType._def.values}};else if(((s=e.keyType)==null?void 0:s._def.typeName)==="ZodBranded"&&e.keyType._def.type._def.typeName==="ZodString"&&((i=e.keyType._def.type._def.checks)==null?void 0:i.length)){let{type:u,...d}=ap(e.keyType._def,t);return{...c,propertyNames:d}}return c}function wy(e,t){if(t.mapStrategy==="record")return lp(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||pe(),n=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||pe();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function xy(e){let t=e.values,n=Object.keys(e.values).filter((a)=>typeof t[t[a]]!=="number").map((a)=>t[a]),o=Array.from(new Set(n.map((a)=>typeof a)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function _y(){return{not:pe()}}function Sy(){return{type:"null"}}var Qo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Ty(e,t){let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every((n)=>(n._def.typeName in Qo)&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,a)=>{let s=Qo[a._def.typeName];return s&&!o.includes(s)?[...o,s]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every((n)=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,a)=>{let s=typeof a._def.value;switch(s){case"string":case"number":case"boolean":return[...o,s];case"bigint":return[...o,"integer"];case"object":if(a._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((a,s,i)=>i.indexOf(a)===s);return{type:o.length>1?o:o[0],enum:r.reduce((a,s)=>a.includes(s._def.value)?a:[...a,s._def.value],[])}}}else if(r.every((n)=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter((a)=>!n.includes(a))],[])};return Iy(e,t)}var Iy=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,o)=>U(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${o}`]})).filter((n)=>!!n&&(!t.strictUnions||typeof n==="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Ey(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Qo[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function ky(e){let t={type:"number"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function $y(e,t){let r={type:"object",properties:{}},n=[],o=e.shape();for(let s in o){let i=o[s];if(i===void 0||i._def===void 0)continue;let c=Ry(i),u=U(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});if(u===void 0)continue;if(r.properties[s]=u,!c)n.push(s)}if(n.length)r.required=n;let a=My(e,t);if(a!==void 0)r.additionalProperties=a;return r}function My(e,t){if(e.catchall._def.typeName!=="ZodNever")return U(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function Ry(e){try{return e.isOptional()}catch(t){return!0}}var Ay=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return U(e.innerType._def,t);let n=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:pe()},n]}:pe()},Cy=(e,t)=>{if(t.pipeStrategy==="input")return U(e.in._def,t);else if(t.pipeStrategy==="output")return U(e.out._def,t);let r=U(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=U(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter((o)=>o!==void 0)}};function Oy(e,t){return U(e.type._def,t)}function Py(e,t){let n={type:"array",uniqueItems:!0,items:U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};if(e.minSize)n.minItems=e.minSize.value;if(e.maxSize)n.maxItems=e.maxSize.value;return n}function Ny(e,t){if(e.rest)return{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:U(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})};else return{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function zy(){return{not:pe()}}function jy(){return pe()}var Dy=(e,t)=>U(e.innerType._def,t),Uy=(e,t,r)=>{switch(t){case"ZodString":return ip(e,r);case"ZodNumber":return ky(e);case"ZodObject":return $y(e,r);case"ZodBigInt":return ly(e);case"ZodBoolean":return cy();case"ZodDate":return sp(e,r);case"ZodUndefined":return zy();case"ZodNull":return Sy();case"ZodArray":return iy(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return Ty(e,r);case"ZodIntersection":return gy(e,r);case"ZodTuple":return Ny(e,r);case"ZodRecord":return lp(e,r);case"ZodLiteral":return vy(e);case"ZodEnum":return my(e);case"ZodNativeEnum":return xy(e);case"ZodNullable":return Ey(e,r);case"ZodOptional":return Ay(e,r);case"ZodMap":return wy(e,r);case"ZodSet":return Py(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return Oy(e,r);case"ZodNaN":case"ZodNever":return _y();case"ZodEffects":return fy(e,r);case"ZodAny":return pe();case"ZodUnknown":return jy();case"ZodDefault":return py(e,r);case"ZodBranded":return ap(e,r);case"ZodReadonly":return Dy(e,r);case"ZodCatch":return uy(e,r);case"ZodPipeline":return Cy(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((n)=>{return})(t)}},Zy=(e,t)=>{let r=0;for(;r<e.length&&r<t.length;r++)if(e[r]!==t[r])break;return[(e.length-r).toString(),...t.slice(r)].join("/")};function U(e,t,r=!1){var n;let o=t.seen.get(e);if(t.override){let c=(n=t.override)==null?void 0:n.call(t,e,t,o,r);if(c!==ay)return c}if(o&&!r){let c=Ly(o,t);if(c!==void 0)return c}let a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);let s=Uy(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)Fy(e,t,i);if(t.postProcess){let c=t.postProcess(i,e,t);return a.jsonSchema=i,c}return a.jsonSchema=i,i}var Ly=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Zy(t.currentPath,e.path)};case"none":case"seen":{if(e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),pe();return t.$refStrategy==="seen"?pe():void 0}}},Fy=(e,t,r)=>{if(e.description)r.description=e.description;return r},By=(e)=>{let t=sy(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}},qy=(e,t)=>{var r;let n=By(t),o=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[d,p])=>{var f;return{...u,[d]:(f=U(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,d]},!0))!=null?f:pe()}},{}):void 0,a=typeof t==="string"?t:(t==null?void 0:t.nameStrategy)==="title"?void 0:t==null?void 0:t.name,s=(r=U(e._def,a===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,a]},!1))!=null?r:pe(),i=typeof t==="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;if(i!==void 0)s.title=i;let c=a===void 0?o?{...s,[n.definitionPath]:o}:s:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,a].join("/"),[n.definitionPath]:{...o,[a]:s}};return c.$schema="http://json-schema.org/draft-07/schema#",c},ea=Symbol.for("vercel.ai.schema");function un(e){let t;return()=>{if(t==null)t=e();return t}}function vr(e,{validate:t}={}){return{[ea]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function Wy(e){return typeof e==="object"&&e!==null&&ea in e&&e[ea]===!0&&"jsonSchema"in e&&"validate"in e}function yr(e){return e==null?vr({type:"object",properties:{},additionalProperties:!1}):Wy(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?Ut(e):Vy(e):e()}function Vy(e){return vr(()=>{if(!Gy(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return oa(e["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async(t)=>{let r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new $e({value:t,cause:r.issues})}}})}function Gy(e){return e["~standard"].jsonSchema!=null}function Jy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return vr(()=>qy(e,{$refStrategy:n?"root":"none"}),{validate:async(o)=>{let a=await e.safeParseAsync(o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Ky(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return vr(()=>oa(Fo(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async(o)=>{let a=await sn(e,o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Hy(e){return"_zod"in e}function Ut(e,t){if(Hy(e))return Ky(e,t);else return Jy(e,t)}async function dn({value:e,schema:t,context:r}){let n=await Zt({value:e,schema:t,context:r});if(!n.success)throw $e.wrap({value:e,cause:n.error,context:r});return n.value}async function Zt({value:e,schema:t,context:r}){let n=yr(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let o=await n.validate(e);if(o.success)return{success:!0,value:o.value,rawValue:e};return{success:!1,error:$e.wrap({value:e,cause:o.error,context:r}),rawValue:e}}catch(o){return{success:!1,error:$e.wrap({value:e,cause:o,context:r}),rawValue:e}}}async function Ye({text:e,schema:t}){try{let r=oy(e);if(t==null)return{success:!0,value:r,rawValue:r};return await Zt({value:r,schema:t})}catch(r){return{success:!1,error:Ln.isInstance(r)?r:new Ln({text:e,cause:r}),rawValue:void 0}}}async function aa(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var cp="AI_SerializationError",up=`vercel.ai.error.${cp}`,Yy=Symbol.for(up),Gd,Jd,d0=class extends(Jd=k,Gd=Yy,Jd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:cp,message:e,cause:t});this[Gd]=!0}static isInstance(e){return k.hasMarker(e,up)}};var eb=Object.defineProperty,tb=(e,t)=>{for(var r in t)eb(e,r,{get:t[r],enumerable:!0})},rb="AI_InvalidArgumentError",nb=`vercel.ai.error.${rb}`,ob=Symbol.for(nb),ab;ab=ob;var sb="AI_InvalidStreamPartError",ib=`vercel.ai.error.${sb}`,lb=Symbol.for(ib),cb;cb=lb;var ub="AI_InvalidToolApprovalError",db=`vercel.ai.error.${ub}`,pb=Symbol.for(db),fb;fb=pb;var mb="AI_InvalidToolApprovalSignatureError",hb=`vercel.ai.error.${mb}`,gb=Symbol.for(hb),vb;vb=gb;var yb="AI_InvalidToolInputError",bb=`vercel.ai.error.${yb}`,wb=Symbol.for(bb),xb;xb=wb;var _b="AI_ToolCallNotFoundForApprovalError",Sb=`vercel.ai.error.${_b}`,Tb=Symbol.for(Sb),Ib;Ib=Tb;var Eb="AI_MissingToolResultsError",kb=`vercel.ai.error.${Eb}`,$b=Symbol.for(kb),Mb;Mb=$b;var Rb="AI_NoImageGeneratedError",Ab=`vercel.ai.error.${Rb}`,Cb=Symbol.for(Ab),Ob;Ob=Cb;var vp="AI_NoObjectGeneratedError",yp=`vercel.ai.error.${vp}`,Pb=Symbol.for(yp),bp,Qe=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:o,finishReason:a}){super({name:vp,message:e,cause:t});this[bp]=!0,this.text=r,this.response=n,this.usage=o,this.finishReason=a}static isInstance(e){return k.hasMarker(e,yp)}};bp=Pb;var Nb="AI_NoOutputGeneratedError",zb=`vercel.ai.error.${Nb}`,jb=Symbol.for(zb),Db;Db=jb;var Ub="AI_NoSpeechGeneratedError",Zb=`vercel.ai.error.${Ub}`,Lb=Symbol.for(Zb),Fb;Fb=Lb;var Bb="AI_NoTranscriptGeneratedError",qb=`vercel.ai.error.${Bb}`,Wb=Symbol.for(qb),Vb;Vb=Wb;var Gb="AI_NoTranslationGeneratedError",Jb=`vercel.ai.error.${Gb}`,Kb=Symbol.for(Jb),Hb;Hb=Kb;var Yb="AI_NoVideoGeneratedError",Xb=`vercel.ai.error.${Yb}`,Qb=Symbol.for(Xb),ew;ew=Qb;var tw="AI_NoSuchToolError",rw=`vercel.ai.error.${tw}`,nw=Symbol.for(rw),ow;ow=nw;var aw="AI_ToolCallRepairError",sw=`vercel.ai.error.${aw}`,iw=Symbol.for(sw),lw;lw=iw;var wp="AI_UIMessageStreamError",xp=`vercel.ai.error.${wp}`,cw=Symbol.for(xp),_p,gt=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:wp,message:r});this[_p]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,xp)}};_p=cw;var uw="AI_InvalidDataContentError",dw=`vercel.ai.error.${uw}`,pw=Symbol.for(dw),fw;fw=pw;var mw="AI_InvalidMessageRoleError",hw=`vercel.ai.error.${mw}`,gw=Symbol.for(hw),vw;vw=gw;var Sp="AI_MessageConversionError",Tp=`vercel.ai.error.${Sp}`,yw=Symbol.for(Tp),Ip,bw=class extends k{constructor({originalMessage:e,message:t}){super({name:Sp,message:t});this[Ip]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,Tp)}};Ip=yw;var ww="AI_RetryError",xw=`vercel.ai.error.${ww}`,_w=Symbol.for(xw),Sw;Sw=_w;var Tw="7.0.67",Iw=async({url:e,maxBytes:t,abortSignal:r})=>{var n;let o=e.toString();try{let a=Dt({},`ai-sdk/${Tw}`,rp()),s=await ep({url:o,headers:a,abortSignal:r});if(!s.ok)throw await cn(s),new oe({url:o,statusCode:s.status,statusText:s.statusText});return{data:await tp({response:s,url:o,maxBytes:t!=null?t:na}),mediaType:(n=s.headers.get("content-type"))!=null?n:void 0}}catch(a){if(oe.isInstance(a))throw a;throw new oe({url:o,cause:a})}};function Ep(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let r={...e};for(let n in t){if(n==="__proto__"||n==="constructor"||n==="prototype")continue;if(Object.prototype.hasOwnProperty.call(t,n)){let o=t[n];if(o===void 0)continue;let a=n in e?e[n]:void 0,s=o!==null&&typeof o==="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),i=a!==null&&a!==void 0&&typeof a==="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);if(s&&i)r[n]=Ep(a,o);else r[n]=o}}return r}async function dp({toolCallId:e,input:t,output:r,tool:n,errorMode:o}){if(o==="text")return{type:"error-text",value:Qt(r)};else if(o==="json")return{type:"error-json",value:pp(r)};if(n==null?void 0:n.toModelOutput)return await n.toModelOutput({toolCallId:e,input:t,output:r});return typeof r==="string"?{type:"text",value:r}:{type:"json",value:pp(r)}}function pp(e){return e===void 0?null:e}var l={array:Vo,boolean:Ed,custom:Dd,discriminatedUnion:Cd,enum:Jo,instanceof:Ud,lazy:jd,literal:Pd,looseObject:Rd,never:Wo,null:kd,number:Id,object:Md,record:Od,string:qo,union:Go,unknown:hr},vt=l.lazy(()=>l.union([l.null(),l.string(),l.number(),l.boolean(),l.record(l.string(),vt.optional()),l.array(vt)])),S=l.record(l.string(),l.record(l.string(),vt.optional())),xr=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(np,{message:"Must be a Buffer"})]),da=l.record(l.string(),l.string()),kp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),Ew=l.object({type:l.literal("image"),image:l.union([xr,l.instanceof(URL),da]),mediaType:l.string().optional(),providerOptions:S.optional()}),$p=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:xr}),l.object({type:l.literal("url"),url:l.instanceof(URL)}),l.object({type:l.literal("reference"),reference:da}),l.object({type:l.literal("text"),text:l.string()})]),kw=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:xr}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),Mp=l.object({type:l.literal("file"),data:l.union([$p,xr,l.instanceof(URL),da]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),$w=l.object({type:l.literal("reasoning"),text:l.string(),providerOptions:S.optional()}),Mw=l.object({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerOptions:S.optional()}),Rw=l.object({type:l.literal("reasoning-file"),data:l.union([kw,xr,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),Aw=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),Cw=l.discriminatedUnion("type",[l.object({type:l.literal("text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("json"),value:vt,providerOptions:S.optional()}),l.object({type:l.literal("execution-denied"),reason:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("error-text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("error-json"),value:vt,providerOptions:S.optional()}),l.object({type:l.literal("content"),value:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("file"),data:$p,mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-data"),data:l.string(),mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-url"),url:l.string(),mediaType:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("image-data"),data:l.string(),mediaType:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-url"),url:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("image-file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("custom"),providerOptions:S.optional()})]))})]),Rp=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:Cw,providerOptions:S.optional()}),Ow=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),Pw=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),Nw=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),zw=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([kp,Ew,Mp]))]),providerOptions:S.optional()}),jw=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([kp,Mw,Mp,$w,Rw,Aw,Rp,Ow]))]),providerOptions:S.optional()}),Dw=l.object({role:l.literal("tool"),content:l.array(l.union([Rp,Pw])),providerOptions:S.optional()}),A0=l.union([Nw,zw,jw,Dw]);function fp(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var Uw={};tb(Uw,{array:()=>Bw,choice:()=>qw,json:()=>Ww,object:()=>Fw,text:()=>Lw});function Zw(e){let t=["ROOT"],r=-1,n=null,o=0;function a(d){return d>="0"&&d<="9"||d>="A"&&d<="F"||d>="a"&&d<="f"}function s(d,p,f){switch(d){case'"':{r=p,t.pop(),t.push(f),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=p,n=p,t.pop(),t.push(f),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(f),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=p,t.pop(),t.push(f),t.push("INSIDE_NUMBER");break}case"{":{r=p,t.pop(),t.push(f),t.push("INSIDE_OBJECT_START");break}case"[":{r=p,t.pop(),t.push(f),t.push("INSIDE_ARRAY_START");break}}}function i(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=p,t.pop();break}}}function c(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=p,t.pop();break}}}for(let d=0;d<e.length;d++){let p=e[d];switch(t[t.length-1]){case"ROOT":s(p,d,"FINISH");break;case"INSIDE_OBJECT_START":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=d,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(p){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(p,d,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{i(p,d);break}case"INSIDE_STRING":{switch(p){case'"':{t.pop(),r=d;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=d}break}case"INSIDE_ARRAY_START":{switch(p){case"]":{r=d,t.pop();break}default:{r=d,s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(p){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=d,t.pop();break}default:{r=d;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{if(t.pop(),p==="u")o=0,t.push("INSIDE_STRING_UNICODE_ESCAPE");else r=d;break}case"INSIDE_STRING_UNICODE_ESCAPE":{if(a(p)){if(o++,o===4)t.pop(),r=d}break}case"INSIDE_NUMBER":{switch(p){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=d;break}case"e":case"E":case"-":case".":break;case",":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d);if(t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"}":{if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"]":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{let m=e.substring(n,d+1);if(!"false".startsWith(m)&&!"true".startsWith(m)&&!"null".startsWith(m)){if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);else if(t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d)}else r=d;break}}}let u=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{u+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{u+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{u+="]";break}case"INSIDE_LITERAL":{let f=e.substring(n,e.length);if("true".startsWith(f))u+="true".slice(f.length);else if("false".startsWith(f))u+="false".slice(f.length);else if("null".startsWith(f))u+="null".slice(f.length)}}return u}async function _r(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ye({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Ye({text:Zw(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var Lw=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),Fw=({schema:e,name:t,description:r})=>{let n=yr(e);return{name:"object",responseFormat:aa(n.jsonSchema).then((o)=>({type:"json",schema:o,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:o},a){let s=await Ye({text:o});if(!s.success)throw new Qe({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=await Zt({value:s.value,schema:n});if(!i.success)throw new Qe({message:"No object generated: response did not match schema.",cause:i.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});return i.value},async parsePartialOutput({text:o}){let a=await _r(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){return}}},Bw=({element:e,name:t,description:r})=>{let n=yr(e);return{name:"array",responseFormat:aa(n.jsonSchema).then((o)=>{let{$schema:a,definitions:s,$defs:i,...c}=o;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...s!=null&&{definitions:s},...i!=null&&{$defs:i},type:"object",properties:{elements:{type:"array",items:c}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:o},a){let s=await Ye({text:o});if(!s.success)throw new Qe({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=s.value;if(i==null||typeof i!=="object"||!("elements"in i)||!Array.isArray(i.elements))throw new Qe({message:"No object generated: response did not match schema.",cause:new $e({value:i,cause:"response must be an object with an elements array"}),text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let c=[];for(let u of i.elements){let d=await Zt({value:u,schema:n});if(!d.success)throw new Qe({message:"No object generated: response did not match schema.",cause:d.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});c.push(d.value)}return c},async parsePartialOutput({text:o}){let a=await _r(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let s=a.value;if(s==null||typeof s!=="object"||!("elements"in s)||!Array.isArray(s.elements))return;let i=a.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,c=[];for(let u of i){let d=await Zt({value:u,schema:n});if(d.success)c.push(d.value)}return{partial:c}}}},createElementStreamTransform(){let o=0;return new TransformStream({transform({partialOutput:a},s){if(a!=null)for(;o<a.length;o++)s.enqueue(a[o])}})}}},qw=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:n},o){let a=await Ye({text:n});if(!a.success)throw new Qe({message:"No object generated: could not parse the response.",cause:a.error,text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});let s=a.value;if(s==null||typeof s!=="object"||!("result"in s)||typeof s.result!=="string"||!e.includes(s.result))throw new Qe({message:"No object generated: response did not match schema.",cause:new $e({value:s,cause:"response must be an object that contains a choice value."}),text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});return s.result},async parsePartialOutput({text:n}){let o=await _r(n);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=o.value;if(a==null||typeof a!=="object"||!("result"in a)||typeof a.result!=="string")return;let s=e.filter((i)=>i.startsWith(a.result));if(o.state==="successful-parse")return s.includes(a.result)?{partial:a.result}:void 0;else return s.length===1?{partial:s[0]}:void 0}}},createElementStreamTransform(){return}}),Ww=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},n){let o=await Ye({text:r});if(!o.success)throw new Qe({message:"No object generated: could not parse the response.",cause:o.error,text:r,response:n.response,usage:n.usage,finishReason:n.finishReason});return o.value},async parsePartialOutput({text:r}){let n=await _r(r);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return n.value===void 0?void 0:{partial:n.value}}},createElementStreamTransform(){return}});var N0=G({prefix:"aitxt",size:24}),z0=G({prefix:"call",size:24});function Ap({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var D0=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
135
135
|
|
|
136
136
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
137
137
|
|
|
138
|
-
`)}})}};function bb({originalMessages:e,responseMessageId:t}){if(e==null)return;let r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t==="function"?t():t}var vr=l.record(l.string(),ft.optional()),XI=io(()=>zt(l.union([l.looseObject({type:l.literal("text-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("error"),errorText:l.string()}),l.looseObject({type:l.literal("tool-input-start"),toolCallId:l.string(),toolName:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:vr.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-delta"),toolCallId:l.string(),inputTextDelta:l.string()}),l.looseObject({type:l.literal("tool-input-available"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:vr.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-error"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:vr.optional(),dynamic:l.boolean().optional(),errorText:l.string(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("tool-output-available"),toolCallId:l.string(),output:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:vr.optional(),dynamic:l.boolean().optional(),preliminary:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-error"),toolCallId:l.string(),errorText:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:vr.optional(),dynamic:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-denied"),toolCallId:l.string()}),l.looseObject({type:l.literal("reasoning-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.custom((e)=>typeof e==="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:l.string().optional(),data:l.unknown(),transient:l.boolean().optional()}),l.looseObject({type:l.literal("start-step")}),l.looseObject({type:l.literal("finish-step")}),l.looseObject({type:l.literal("start"),messageId:l.string().optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("finish"),finishReason:l.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("abort"),reason:l.string().optional()}),l.looseObject({type:l.literal("message-metadata"),messageMetadata:l.unknown()})])));function xb(e){return e.type.startsWith("data-")}function yr(){return Object.create(null)}function oa(e){return e.type.startsWith("data-")}function na(e){return e.type==="text"}function Xd(e){return e.type==="custom"}function aa(e){return e.type==="file"}function Qd(e){return e.type==="reasoning-file"}function ep(e){return e.type==="reasoning"}function sa(e){return e.type.startsWith("tool-")}function gp(e){return e.type==="dynamic-tool"}function ie(e){return sa(e)||gp(e)}function ia(e){return e.type.split("-").slice(1).join("-")}function He(e){return gp(e)?e.toolName:ia(e)}function vp({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:yr(),activeReasoningParts:yr(),partialToolCalls:yr()}}function yp({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:o,onError:n,onToolCall:a,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,u){await o(async({state:c,write:d})=>{var p,f,h,y;function v(){let m=c.message.parts,N=m.length-1;while(N>=0&&m[N].type!=="step-start")N--;return m.slice(N+1)}function _(){return v().filter(ie)}function j(m){let V=_().find((K)=>K.toolCallId===m);if(V==null){let K=c.message.parts;for(let M=K.length-1;M>=0;M--){let D=K[M];if(ie(D)&&D.toolCallId===m){V=D;break}}}if(V==null)throw new pt({chunkType:"tool-invocation",chunkId:m,message:`No tool invocation found for tool call ID "${m}".`});return V}function C(m){let V=c.message.parts.filter(ie).find((K)=>{var M;return((M=K.approval)==null?void 0:M.id)===m});if(V==null)throw new pt({chunkType:"tool-approval-response",chunkId:m,message:`No tool invocation found for approval ID "${m}".`});return V}function Z(m,N){var V;let K=N!=null?N:v().find((Y)=>sa(Y)&&Y.toolCallId===m.toolCallId),M=m,D=K;if(K!=null){if(K.state=m.state,D.input=M.input,D.output=M.output,D.errorText=M.errorText,D.rawInput=M.rawInput,D.preliminary=M.preliminary,m.title!==void 0)D.title=m.title;if(m.toolMetadata!==void 0)D.toolMetadata=m.toolMetadata;D.providerExecuted=(V=M.providerExecuted)!=null?V:K.providerExecuted;let Y=M.providerMetadata;if(Y!=null)if(m.state==="output-available"||m.state==="output-error"){let Ue=K;Ue.resultProviderMetadata=Y}else K.callProviderMetadata=Y}else c.message.parts.push({type:`tool-${m.toolName}`,toolCallId:m.toolCallId,state:m.state,title:m.title,...m.toolMetadata!==void 0?{toolMetadata:m.toolMetadata}:{},input:M.input,output:M.output,rawInput:M.rawInput,errorText:M.errorText,providerExecuted:M.providerExecuted,preliminary:M.preliminary,...M.providerMetadata!=null&&(m.state==="output-available"||m.state==="output-error")?{resultProviderMetadata:M.providerMetadata}:{},...M.providerMetadata!=null&&!(m.state==="output-available"||m.state==="output-error")?{callProviderMetadata:M.providerMetadata}:{}})}function R(m,N){var V,K;let M=N!=null?N:v().find((Ue)=>Ue.type==="dynamic-tool"&&Ue.toolCallId===m.toolCallId),D=m,Y=M;if(M!=null){if(M.state=m.state,Y.toolName=m.toolName,Y.input=D.input,Y.output=D.output,Y.errorText=D.errorText,Y.rawInput=(V=D.rawInput)!=null?V:Y.rawInput,Y.preliminary=D.preliminary,m.title!==void 0)Y.title=m.title;if(m.toolMetadata!==void 0)Y.toolMetadata=m.toolMetadata;Y.providerExecuted=(K=D.providerExecuted)!=null?K:M.providerExecuted;let Ue=D.providerMetadata;if(Ue!=null)if(m.state==="output-available"||m.state==="output-error"){let Ef=M;Ef.resultProviderMetadata=Ue}else M.callProviderMetadata=Ue}else c.message.parts.push({type:"dynamic-tool",toolName:m.toolName,toolCallId:m.toolCallId,state:m.state,input:D.input,output:D.output,errorText:D.errorText,preliminary:D.preliminary,providerExecuted:D.providerExecuted,title:m.title,...m.toolMetadata!==void 0?{toolMetadata:m.toolMetadata}:{},...D.providerMetadata!=null&&(m.state==="output-available"||m.state==="output-error")?{resultProviderMetadata:D.providerMetadata}:{},...D.providerMetadata!=null&&!(m.state==="output-available"||m.state==="output-error")?{callProviderMetadata:D.providerMetadata}:{}})}async function P(m){if(m!=null){let N=c.message.metadata!=null?up(c.message.metadata,m):m;if(t!=null)await lo({value:N,schema:t,context:{field:"message.metadata",entityId:c.message.id}});c.message.metadata=N}}switch(i.type){case"text-start":{let m={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};c.activeTextParts[i.id]=m,c.message.parts.push(m),d();break}case"text-delta":{let m=c.activeTextParts[i.id];if(m==null)throw new pt({chunkType:"text-delta",chunkId:i.id,message:`Received text-delta for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});m.text+=i.delta,m.providerMetadata=(p=i.providerMetadata)!=null?p:m.providerMetadata,d();break}case"text-end":{let m=c.activeTextParts[i.id];if(m==null)throw new pt({chunkType:"text-end",chunkId:i.id,message:`Received text-end for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});m.state="done",m.providerMetadata=(f=i.providerMetadata)!=null?f:m.providerMetadata,delete c.activeTextParts[i.id],d();break}case"custom":{let m={type:"custom",kind:i.kind,providerMetadata:i.providerMetadata};c.message.parts.push(m),d();break}case"reasoning-start":{let m={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};c.activeReasoningParts[i.id]=m,c.message.parts.push(m),d();break}case"reasoning-delta":{let m=c.activeReasoningParts[i.id];if(m==null)throw new pt({chunkType:"reasoning-delta",chunkId:i.id,message:`Received reasoning-delta for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});m.text+=i.delta,m.providerMetadata=(h=i.providerMetadata)!=null?h:m.providerMetadata,d();break}case"reasoning-end":{let m=c.activeReasoningParts[i.id];if(m==null)throw new pt({chunkType:"reasoning-end",chunkId:i.id,message:`Received reasoning-end for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});m.providerMetadata=(y=i.providerMetadata)!=null?y:m.providerMetadata,m.state="done",delete c.activeReasoningParts[i.id],d();break}case"file":case"reasoning-file":{c.message.parts.push({type:i.type,mediaType:i.mediaType,url:i.url,...i.providerMetadata!=null?{providerMetadata:i.providerMetadata}:{}}),d();break}case"source-url":{c.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),d();break}case"source-document":{c.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),d();break}case"tool-input-start":{let m=v().filter(sa);if(c.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:m.length,dynamic:i.dynamic,title:i.title,toolMetadata:i.toolMetadata},i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});d();break}case"tool-input-delta":{let m=c.partialToolCalls[i.toolCallId];if(m==null)throw new pt({chunkType:"tool-input-delta",chunkId:i.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${i.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});m.text+=i.inputTextDelta;let{value:N}=await br(m.text);if(m.dynamic)R({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:N,title:m.title,toolMetadata:m.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:N,title:m.title,toolMetadata:m.toolMetadata});d();break}case"tool-input-available":{if(i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});if(d(),a&&!i.providerExecuted)await a({toolCall:i});break}case"tool-input-error":{let m=v().filter(ie).find((V)=>V.toolCallId===i.toolCallId);if(m!=null?m.type==="dynamic-tool":!!i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});d();break}case"tool-approval-request":{let m=j(i.toolCallId);m.state="approval-requested",m.approval={id:i.approvalId,...i.isAutomatic===!0?{isAutomatic:!0}:{},...i.signature!=null?{signature:i.signature}:{}},d();break}case"tool-approval-response":{let m=C(i.approvalId),N=m.approval==null?{id:i.approvalId}:m.approval;if(m.state="approval-responded",m.approval={id:i.approvalId,approved:i.approved,...i.reason!=null?{reason:i.reason}:{},...N.isAutomatic===!0?{isAutomatic:!0}:{},...N.signature!=null?{signature:N.signature}:{}},i.providerExecuted!=null)m.providerExecuted=i.providerExecuted;if(i.providerMetadata!=null)m.callProviderMetadata=i.providerMetadata;d();break}case"tool-output-denied":{let m=j(i.toolCallId);m.state="output-denied",d();break}case"tool-output-available":{let m=j(i.toolCallId);if(m.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-available",input:m.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);else Z({toolCallId:i.toolCallId,toolName:ia(m),state:"output-available",input:m.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);d();break}case"tool-output-error":{let m=j(i.toolCallId);if(m.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-error",input:m.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);else Z({toolCallId:i.toolCallId,toolName:ia(m),state:"output-error",input:m.input,rawInput:m.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);d();break}case"start-step":{c.message.parts.push({type:"step-start"});break}case"finish-step":{c.activeTextParts=yr(),c.activeReasoningParts=yr();break}case"start":{if(i.messageId!=null)c.message.id=i.messageId;if(await P(i.messageMetadata),i.messageId!=null||i.messageMetadata!=null)d();break}case"finish":{if(i.finishReason!=null)c.finishReason=i.finishReason;if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"message-metadata":{if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"error":{n==null||n(Error(i.errorText));break}default:if(xb(i)){if((r==null?void 0:r[i.type])!=null){let V=c.message.parts.findIndex((M)=>("id"in M)&&("data"in M)&&M.id===i.id&&M.type===i.type),K=V>=0?V:c.message.parts.length;await lo({value:i.data,schema:r[i.type],context:{field:`message.parts[${K}].data`,entityName:i.type,entityId:i.id}})}let m=i;if(m.transient){s==null||s(m);break}let N=m.id!=null?c.message.parts.find((V)=>m.type===V.type&&m.id===V.id):void 0;if(N!=null)N.data=m.data;else c.message.parts.push(m);s==null||s(m),d()}}u.enqueue(i)})}}))}function _b({messageId:e,originalMessages:t=[],onStepEnd:r,onStepFinish:o,onEnd:n,onFinish:a,onError:s,stream:i}){let u=t==null?void 0:t[t.length-1];if((u==null?void 0:u.role)!=="assistant")u=void 0;else e=u.id;let c=!1,d=i.pipeThrough(new TransformStream({transform(C,Z){if(C.type==="start"){let R=C;if(R.messageId==null&&e!=null)R.messageId=e}if(C.type==="abort")c=!0;Z.enqueue(C)}})),p=r!=null?r:o,f=n!=null?n:a;if(f==null&&p==null)return d;let h=vp({lastMessage:u?structuredClone(u):void 0,messageId:e!=null?e:""}),y=async(C)=>{await C({state:h,write:()=>{}})},v=!1,_=async()=>{if(v||!f)return;v=!0;let C=h.message.id===(u==null?void 0:u.id);await f({isAborted:c,isContinuation:C,responseMessage:h.message,messages:[...C?t.slice(0,-1):t,h.message],finishReason:h.finishReason})},j=async()=>{if(!p)return;let C=h.message.id===(u==null?void 0:u.id);try{await p({isContinuation:C,responseMessage:structuredClone(h.message),messages:[...C?t.slice(0,-1):t,structuredClone(h.message)]})}catch(Z){s(Z)}};return yp({stream:d,runUpdateMessageJob:y,onError:s}).pipeThrough(new TransformStream({async transform(C,Z){if(C.type==="finish-step")await j();Z.enqueue(C)},async cancel(){await _()},async flush(){await _()}}))}function Sb(e,{tools:t,sendReasoning:r=!0,sendSources:o=!1,sendStart:n=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,responseMessageId:u}={}){let c=(p)=>{let f=t==null?void 0:t[p.toolName];if(f==null)return p.dynamic;return(f==null?void 0:f.type)==="dynamic"?!0:void 0},d=e.type;switch(d){case"text-start":return{type:"text-start",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-end":return{type:"text-end",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":{if(!r)return;return{type:d,id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"reasoning-delta":{if(!r)return;return{type:"reasoning-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"file":case"reasoning-file":{if(d==="reasoning-file"&&!r)return;return{type:e.type,mediaType:e.file.mediaType,url:`data:${e.file.mediaType};base64,${e.file.base64}`,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"source":{if(!o)return;if(e.sourceType==="url")return{type:"source-url",sourceId:e.id,url:e.url,title:e.title,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};if(e.sourceType==="document")return{type:"source-document",sourceId:e.id,mediaType:e.mediaType,title:e.title,filename:e.filename,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};return}case"custom":return{type:"custom",kind:e.kind,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"tool-input-start":{let p=c(e);return{type:"tool-input-start",toolCallId:e.id,toolName:e.toolName,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:e.id,inputTextDelta:e.delta};case"tool-call":{let p=c(e);if(e.invalid)return{type:"tool-input-error",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},errorText:s(e.error),...e.title!=null?{title:e.title}:{}};return{type:"tool-input-available",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:e.approvalId,toolCallId:e.toolCall.toolCallId,...e.isAutomatic!=null?{isAutomatic:e.isAutomatic}:{},...e.signature!=null?{signature:e.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:e.approvalId,approved:e.approved,...e.reason!=null?{reason:e.reason}:{},...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{}};case"tool-result":{let p=c(e);return{type:"tool-output-available",toolCallId:e.toolCallId,output:e.output===void 0?null:e.output,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...e.preliminary!=null?{preliminary:e.preliminary}:{},...p!=null?{dynamic:p}:{}}}case"tool-error":{let p=c(e);return{type:"tool-output-error",toolCallId:e.toolCallId,errorText:e.providerExecuted?typeof e.error==="string"?e.error:JSON.stringify(e.error):s(e.error),...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:e.toolCallId};case"error":return{type:"error",errorText:s(e.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":{if(!n)return;return{type:"start",...i!=null?{messageMetadata:i}:{},...u!=null?{messageId:u}:{}}}case"finish":{if(!a)return;return{type:"finish",finishReason:e.finishReason,...i!=null?{messageMetadata:i}:{}}}case"abort":return e;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${d}`)}}function wp({stream:e,tools:t,sendReasoning:r=!0,sendSources:o=!1,sendStart:n=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,originalMessages:u,generateMessageId:c,onEnd:d,onFinish:p}){let f=c!=null?bb({originalMessages:u,responseMessageId:c}):void 0,h=e.pipeThrough(new TransformStream({transform:async(y,v)=>{let _=i==null?void 0:i({part:y}),j=Sb(y,{tools:t,sendReasoning:r,sendSources:o,sendStart:n,sendFinish:a,onError:s,messageMetadata:_,responseMessageId:f});if(j!=null)v.enqueue(j);if(_!=null&&y.type!=="start"&&y.type!=="finish")v.enqueue({type:"message-metadata",messageMetadata:_})}}));return _b({stream:h,messageId:f!=null?f:c==null?void 0:c(),originalMessages:u,onEnd:d!=null?d:p,onError:s})}function Tb(e){return Ib(e.pipeThrough(new TransformStream))}function Ib(e){return e[Symbol.asyncIterator]=function(){let t=this.getReader(),r=!1;async function o(n){var a;if(r)return;r=!0;try{if(n)await((a=t.cancel)==null?void 0:a.call(t))}finally{try{t.releaseLock()}catch(s){}}}return{async next(){if(r)return{done:!0,value:void 0};let n;try{n=await t.read()}catch(i){throw await o(!1),i}let{done:a,value:s}=n;if(a)return await o(!0),{done:!0,value:void 0};return{done:!1,value:s}},async return(){return await o(!0),{done:!0,value:void 0}},async throw(n){throw await o(!0),n}}},e}async function Eb({stream:e,onError:t,abortSignal:r}){let o=e.getReader(),n=()=>{o.cancel().catch(()=>{})};if(r==null?void 0:r.aborted)n();else r==null||r.addEventListener("abort",n,{once:!0});try{while(!0){let{done:a}=await o.read();if(a)break}}catch(a){t==null||t(a)}finally{r==null||r.removeEventListener("abort",n),o.releaseLock()}}var e0=J({prefix:"aitxt",size:24}),t0=J({prefix:"call",size:24});var r0=J({prefix:"aitxt",size:24}),o0=J({prefix:"call",size:24});function bp({message:e,stream:t,onError:r,terminateOnError:o=!1}){var n;let a,s=!1,i=new ReadableStream({start(d){a=d}}),u=vp({messageId:(n=e==null?void 0:e.id)!=null?n:"",lastMessage:e}),c=(d)=>{if(r==null||r(d),!s&&o)s=!0,a==null||a.error(d)};return Eb({stream:yp({stream:t,runUpdateMessageJob(d){return d({state:u,write:()=>{a==null||a.enqueue(structuredClone(u.message))}})},onError:c}),onError:c}).finally(()=>{if(!s)a==null||a.close()}),Tb(i)}async function co(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((o)=>({...o,parts:o.parts.filter((n)=>!ie(n)||n.state==="approval-responded"||n.state==="output-available"||n.state==="output-error"||n.state==="output-denied")}));for(let o of e)switch(o.role){case"system":{let n=o.parts.filter((s)=>s.type==="text"),a=n.reduce((s,i)=>{if(i.providerMetadata!=null)return{...s,...i.providerMetadata};return s},{});r.push({role:"system",content:n.map((s)=>s.text).join(""),...Object.keys(a).length>0?{providerOptions:a}:{}});break}case"user":{r.push({role:"user",content:o.parts.map((n)=>{var a;if(na(n))return{type:"text",text:n.text,...n.providerMetadata!=null?{providerOptions:n.providerMetadata}:{}};if(aa(n))return{type:"file",mediaType:n.mediaType,filename:n.filename,data:n.providerReference!=null?{type:"reference",reference:n.providerReference}:{type:"url",url:new URL(n.url)},...n.providerMetadata!=null?{providerOptions:n.providerMetadata}:{}};if(oa(n))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,n)}).filter(Fd)});break}case"assistant":{if(o.parts!=null){let n=[];async function a(){var s,i,u,c,d,p,f;if(n.length===0)return;let h=[];for(let v of n)if(na(v))h.push({type:"text",text:v.text,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(Xd(v))h.push({type:"custom",kind:v.kind,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(aa(v))h.push({type:"file",mediaType:v.mediaType,filename:v.filename,data:v.providerReference!=null?{type:"reference",reference:v.providerReference}:{type:"url",url:new URL(v.url)},...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(Qd(v))h.push({type:"reasoning-file",data:{type:"url",url:new URL(v.url)},mediaType:v.mediaType,providerOptions:v.providerMetadata});else if(ep(v))h.push({type:"reasoning",text:v.text,providerOptions:v.providerMetadata});else if(ie(v)){let _=He(v);if(v.state!=="input-streaming"){if(h.push({type:"tool-call",toolCallId:v.toolCallId,toolName:_,input:v.state==="output-error"?(s=v.input)!=null?s:("rawInput"in v)?v.rawInput:void 0:v.input,providerExecuted:v.providerExecuted,...v.callProviderMetadata!=null?{providerOptions:v.callProviderMetadata}:{}}),v.approval!=null)h.push({type:"tool-approval-request",approvalId:v.approval.id,toolCallId:v.toolCallId,isAutomatic:v.approval.isAutomatic,...v.approval.signature!=null?{signature:v.approval.signature}:{}});if(v.providerExecuted===!0&&v.state!=="approval-responded"&&(v.state==="output-available"||v.state==="output-error")){let j=(i=v.resultProviderMetadata)!=null?i:v.callProviderMetadata;h.push({type:"tool-result",toolCallId:v.toolCallId,toolName:_,output:await Gd({toolCallId:v.toolCallId,input:v.input,output:v.state==="output-error"?v.errorText:v.output,tool:Yd(t==null?void 0:t.tools,_),errorMode:v.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(oa(v)){let _=(u=t==null?void 0:t.convertDataPart)==null?void 0:u.call(t,v);if(_!=null)h.push(_)}else throw Error(`Unsupported part: ${v}`);if(h.length>0)r.push({role:"assistant",content:h});let y=n.filter((v)=>{var _;return ie(v)&&(v.providerExecuted!==!0||((_=v.approval)==null?void 0:_.approved)!=null)});if(y.length>0){let v=[];for(let _ of y){if(((c=_.approval)==null?void 0:c.approved)!=null)v.push({type:"tool-approval-response",approvalId:_.approval.id,approved:_.approval.approved,reason:_.approval.reason,providerExecuted:_.providerExecuted});if(_.state==="approval-responded"&&((d=_.approval)==null?void 0:d.approved)===!1)v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:He(_),output:{type:"execution-denied",reason:_.approval.reason},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});if(_.providerExecuted===!0)continue;switch(_.state){case"output-denied":{v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:He(_),output:{type:"error-text",value:(f=(p=_.approval)==null?void 0:p.reason)!=null?f:"Tool call execution denied."},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let j=He(_);v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:j,output:await Gd({toolCallId:_.toolCallId,input:_.input,output:_.state==="output-error"?_.errorText:_.output,tool:Yd(t==null?void 0:t.tools,j),errorMode:_.state==="output-error"?"text":"none"}),..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}}}if(v.length>0)r.push({role:"tool",content:v})}n=[]}for(let s of o.parts)if(Xd(s)||na(s)||ep(s)||Qd(s)||aa(s)||ie(s)||oa(s))n.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let n=o.role;throw new Jw({originalMessage:o,message:`Unsupported role: ${n}`})}}return r}var se=l.record(l.string(),ft.optional()),kb=l.record(l.string(),l.string()),s0=io(()=>zt(l.array(l.object({id:l.string(),role:l.enum(["system","user","assistant"]),metadata:l.unknown().optional(),parts:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning"),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("custom"),kind:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("file"),mediaType:l.string(),filename:l.string().optional(),url:l.string(),providerReference:kb.optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning-file"),mediaType:l.string(),url:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("step-start")}),l.object({type:l.string().startsWith("data-"),id:l.string().optional(),data:l.unknown()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-streaming"),input:l.unknown().optional(),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-error"),input:l.unknown().optional(),rawInput:l.unknown().optional(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-denied"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-streaming"),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),input:l.unknown().optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-error"),providerExecuted:l.boolean().optional(),input:l.unknown().optional(),rawInput:l.unknown().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-denied"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})})]))}).superRefine((e,t)=>{if(e.role!=="assistant"&&e.parts.length===0)t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty")));var l0=J({prefix:"call",size:24});var u0=J({prefix:"call",size:24});var p0=J({prefix:"aiobj",size:24});function xp(e){return({url:t,abortSignal:r})=>Qw({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var m0=J({prefix:"aiobj",size:24});var h0=xp();var $b="AI_NoSuchProviderError",Mb=`vercel.ai.error.${$b}`,Rb=Symbol.for(Mb),Ab;Ab=Rb;var v0=J({prefix:"call",size:24});var y0=xp();var Np=(e)=>{throw TypeError(e)},va=(e,t,r)=>t.has(e)||Np("Cannot "+r),x=(e,t,r)=>(va(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?Np("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),T=(e,t,r,o)=>(va(e,t,"write to private field"),o?o.call(e,r):t.set(e,r),r),b=(e,t,r)=>(va(e,t,"access private method"),r),zp=String.fromCharCode(27),T0=new RegExp(`${zp}\\[[0-?]*[ -/]*[@-~]`,"g"),da=new RegExp(`^${zp}\\[[0-?]*[ -/]*[@-~]`);function Xe(e){let t=0,r=0;while(r<e.length){let o=e.slice(r).match(da);if(o){r+=o[0].length;continue}let n=e.codePointAt(r);if(n==null)break;let a=String.fromCodePoint(n);t+=jp(n),r+=a.length}return t}function Zt(e,t){if(t<=0)return"";let r="",o=0,n=0;while(n<e.length&&o<t){let a=e.slice(n).match(da);if(a){r+=a[0],n+=a[0].length;continue}let s=e.codePointAt(n);if(s==null)break;let i=String.fromCodePoint(s),u=jp(s);if(u>0&&o+u>t)break;r+=i,n+=i.length,o+=u}while(n<e.length){let a=e.slice(n).match(da);if(!a)break;r+=a[0],n+=a[0].length}return r}function jp(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(Cb(e))return 0;return Ob(e)?2:1}function Cb(e){return e>=768&&e<=879||e>=1155&&e<=1161||e>=1425&&e<=1469||e===1471||e>=1473&&e<=1474||e>=1476&&e<=1477||e===1479||e>=1552&&e<=1562||e>=1611&&e<=1631||e===1648||e>=1750&&e<=1756||e>=1759&&e<=1764||e>=1767&&e<=1768||e>=1770&&e<=1773||e===1809||e>=1840&&e<=1866||e>=1958&&e<=1968||e>=2027&&e<=2035||e>=2070&&e<=2073||e>=2075&&e<=2083||e>=2085&&e<=2087||e>=2089&&e<=2093||e>=2137&&e<=2139||e>=2259&&e<=2306||e===2362||e===2364||e>=2369&&e<=2376||e===2381||e>=2385&&e<=2391||e===8205||e>=65024&&e<=65039||e>=917760&&e<=917999}function Ob(e){return e>=4352&&(e<=4447||e===9001||e===9002||e>=11904&&e<=42191&&e!==12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=127744&&e<=128591||e>=129280&&e<=129535||e>=131072&&e<=262141)}var Me={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},Pb="─";function Nb(e){var t;let r=e.split(`
|
|
139
|
-
`),
|
|
140
|
-
`)}function
|
|
141
|
-
`)}function
|
|
142
|
-
`)}}function Hb(e,t){let r="",o=Math.max(e.lines.length,t.lines.length);for(let n=0;n<o;n++){let a=t.lines[n];if(e.lines[n]===a)continue;r+=`${qt}[${n+1};1H${Wb}${a!=null?a:""}`}return r}var Yb="outputTokensPerSecond",me={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},Xb={user:{color:me.user,border:"─"},assistant:{color:me.assistant,border:"─"},reasoning:{color:me.reasoning,border:"·"},tool:{color:me.tool,border:"─"},error:{color:me.error,border:"─"}},Qb=500,ht="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",ex="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",_r=`Processing input... ${ht}`,Ep=`Processing tool results... ${ht}`,fa=`Streaming... ${ht}`,kp=`Executing tools... ${ht}`,we,Ae,wt,uo,po,fo,yo,he,Re,mt,Qe,Er,le,Lt,fe,et,kr,tt,gt,bt,vt,Te,yt,Sr,w,mo,ho,Tr,De,Zp,Ft,$r,Lp,Mr,wo,Fp,ya,ma,go,Bp,qp,wa,xo,ee,Bt,Wp,ba,xt,_o,So,xa,Vp,ha=class{constructor(e){z(this,w),z(this,we),z(this,Ae),z(this,wt),z(this,uo),z(this,po),z(this,fo),z(this,yo),z(this,he,[]),z(this,Re,""),z(this,mt,!1),z(this,Qe,0),z(this,Er,""),z(this,le,fa),z(this,Lt,!1),z(this,fe,!1),z(this,et),z(this,kr),z(this,tt),z(this,gt),z(this,bt,!0),z(this,vt),z(this,Te),z(this,yt),z(this,Sr);var t,r,o,n,a,s;T(this,we,(t=e==null?void 0:e.input)!=null?t:process.stdin),T(this,Ae,(r=e==null?void 0:e.output)!=null?r:process.stdout),T(this,wt,(o=e==null?void 0:e.frameBuffer)!=null?o:new Kb(x(this,Ae))),T(this,uo,(n=e==null?void 0:e.tools)!=null?n:"auto-collapsed"),T(this,po,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),T(this,fo,(s=e==null?void 0:e.responseStatistics)!=null?s:Yb),T(this,yo,e==null?void 0:e.contextSize),T(this,kr,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return b(this,w,mo).call(this,e),T(this,mt,!0),T(this,Re,(t=e==null?void 0:e.initialPrompt)!=null?t:""),T(this,le,`Type a prompt and press Enter · ${ht}`),b(this,w,Lp).call(this),b(this,w,ee).call(this),await new Promise((r,o)=>{T(this,Te,(n)=>{let a=bo(n);switch(a.type){case"character":T(this,Re,x(this,Re)+a.value),b(this,w,wo).call(this),b(this,w,ee).call(this);break;case"backspace":T(this,Re,x(this,Re).slice(0,-1)),b(this,w,wo).call(this),b(this,w,ee).call(this);break;case"enter":{let s=x(this,Re);T(this,mt,!1),b(this,w,Mr).call(this),T(this,le,_r),b(this,w,ya).call(this,s),T(this,Re,""),b(this,w,ee).call(this),b(this,w,De).call(this),r(s);break}case"up":case"down":b(this,w,Ft).call(this,a.type);break;case"page-up":case"page-down":b(this,w,$r).call(this,a.type);break;case"ctrl-l":b(this,w,Bt).call(this);break;case"escape":case"ctrl-c":b(this,w,Mr).call(this),b(this,w,ho).call(this),o(ua());break;case"ignore":break}}),b(this,w,Tr).call(this)})}async renderStream(e,t){var r,o,n,a;b(this,w,mo).call(this,t),T(this,mt,!1),T(this,le,_r),b(this,w,Fp).call(this,t==null?void 0:t.submittedPrompt),T(this,fe,!1),T(this,et,void 0),T(this,tt,void 0),T(this,gt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:x(this,uo),reasoning:(o=t==null?void 0:t.reasoning)!=null?o:x(this,po),responseStatistics:(n=t==null?void 0:t.responseStatistics)!=null?n:x(this,fo)};b(this,w,ee).call(this);let i=new Promise((d)=>{T(this,Sr,d)});T(this,Te,(d)=>b(this,w,Zp).call(this,d)),b(this,w,Tr).call(this);let u,c=dx(b(this,w,qp).call(this,e.uiMessageStream));try{let d=bp({message:e.message,stream:c,onError:(p)=>b(this,w,wa).call(this,"Error",rx(p))});for await(let p of tx(d,i)){if(x(this,fe))break;u=p,b(this,w,ma).call(this,p,s)}if(!x(this,fe)&&u&&x(this,tt)!=null)b(this,w,ma).call(this,u,s)}finally{if(T(this,Sr,void 0),x(this,fe))(a=e.abort)==null||a.call(e);if(b(this,w,De).call(this),T(this,le,x(this,fe)?"Interrupted":(t==null?void 0:t.continueSession)?`Done · Enter another prompt · ${ht}`:`Done · ${ex}`),b(this,w,ee).call(this),await b(this,w,Vp).call(this,t),x(this,fe)||!(t==null?void 0:t.continueSession))b(this,w,ho).call(this)}if(x(this,fe))throw ua();return u}async readToolApproval(e,t){return b(this,w,mo).call(this,t),T(this,mt,!1),T(this,le,`Approve ${cx(e)}? y/n · ${ht}`),T(this,fe,!1),b(this,w,ee).call(this),await new Promise((r,o)=>{T(this,Te,(n)=>{let a=bo(n);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")T(this,le,`Approved · ${_r}`),b(this,w,De).call(this),b(this,w,ee).call(this),r({approved:!0});else if(s==="n")T(this,le,`Denied · ${_r}`),b(this,w,De).call(this),b(this,w,ee).call(this),r({approved:!1,reason:"Denied by user."});break}case"up":case"down":b(this,w,Ft).call(this,a.type);break;case"page-up":case"page-down":b(this,w,$r).call(this,a.type);break;case"ctrl-l":b(this,w,Bt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),b(this,w,ho).call(this),o(ua());break;default:break}}),b(this,w,Tr).call(this)})}};we=new WeakMap;Ae=new WeakMap;wt=new WeakMap;uo=new WeakMap;po=new WeakMap;fo=new WeakMap;yo=new WeakMap;he=new WeakMap;Re=new WeakMap;mt=new WeakMap;Qe=new WeakMap;Er=new WeakMap;le=new WeakMap;Lt=new WeakMap;fe=new WeakMap;et=new WeakMap;kr=new WeakMap;tt=new WeakMap;gt=new WeakMap;bt=new WeakMap;vt=new WeakMap;Te=new WeakMap;yt=new WeakMap;Sr=new WeakMap;w=new WeakSet;mo=function(e){var t,r,o,n;if(T(this,Er,(t=e==null?void 0:e.title)!=null?t:x(this,Er)),T(this,kr,(r=e==null?void 0:e.contextSize)!=null?r:x(this,yo)),x(this,Lt))return;if(T(this,Lt,!0),x(this,wt).reset(),x(this,Ae).write("\x1B[?1049h\x1B[?25l"),x(this,we).isTTY)(n=(o=x(this,we)).setRawMode)==null||n.call(o,!0),x(this,we).resume();T(this,yt,()=>b(this,w,Bt).call(this)),x(this,Ae).on("resize",x(this,yt))};ho=function(){var e,t;if(b(this,w,De).call(this),b(this,w,Mr).call(this),!x(this,Lt))return;if(x(this,we).isTTY)(t=(e=x(this,we)).setRawMode)==null||t.call(e,!1),x(this,we).pause();if(x(this,yt))x(this,Ae).off("resize",x(this,yt)),T(this,yt,void 0);x(this,Ae).write("\x1B[?25h\x1B[?1049l"),x(this,wt).reset(),T(this,Lt,!1)};Tr=function(){if(x(this,Te))x(this,we).on("data",x(this,Te))};De=function(){if(x(this,Te))x(this,we).off("data",x(this,Te)),T(this,Te,void 0)};Zp=function(e){var t;let r=bo(e);switch(r.type){case"up":case"down":b(this,w,Ft).call(this,r.type);break;case"page-up":case"page-down":b(this,w,$r).call(this,r.type);break;case"ctrl-l":b(this,w,Bt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),(t=x(this,Sr))==null||t.call(this);break;default:break}};Ft=function(e,t=1){let r=e==="up"?t:-t;T(this,Qe,b(this,w,ba).call(this,x(this,Qe)+r)),b(this,w,ee).call(this)};$r=function(e){b(this,w,Ft).call(this,e==="page-up"?"up":"down",b(this,w,_o).call(this))};Lp=function(){var e,t;b(this,w,Mr).call(this),b(this,w,wo).call(this),T(this,vt,setInterval(()=>{T(this,bt,!x(this,bt)),b(this,w,ee).call(this)},Qb)),(t=(e=x(this,vt)).unref)==null||t.call(e)};Mr=function(){if(x(this,vt))clearInterval(x(this,vt)),T(this,vt,void 0);T(this,bt,!0)};wo=function(){T(this,bt,!0)};Fp=function(e){if(e==null)return;let t=x(this,he).at(-1);if((t==null?void 0:t.kind)==="user"&&t.content===e)return;b(this,w,ya).call(this,e)};ya=function(e){let t=b(this,w,xt).call(this);x(this,he).push({kind:"user",title:"User",content:e}),b(this,w,xo).call(this,t)};ma=function(e,t){var r,o,n;let a=b(this,w,xt).call(this),s=new Set,i=yx(e.metadata);T(this,et,(r=i.totalTokens)!=null?r:x(this,et)),T(this,tt,(o=i.outputTokens)!=null?o:x(this,tt)),T(this,gt,(n=i.outputTokensPerSecond)!=null?n:x(this,gt));for(let[u,c]of e.parts.entries()){let d=ux(e.id,u);switch(c.type){case"text":{let p=c.text.trim();if(p.length===0)break;s.add(d),b(this,w,go).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:xx({totalTokens:x(this,et),outputTokens:x(this,tt),outputTokensPerSecond:x(this,gt)},t.responseStatistics),content:p});break}case"reasoning":{let p=c.text.trim();if(t.reasoning==="hidden"||p.length===0)break;s.add(d),b(this,w,go).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:$p(e,u,t.reasoning,t)});break}default:if(ie(c)){if(t.tools==="hidden")break;s.add(d),b(this,w,go).call(this,{id:d,...ox(c,{mode:t.tools,collapsed:$p(e,u,t.tools,t)})})}break}}b(this,w,Bp).call(this,e.id,s),b(this,w,xo).call(this,a)};go=function(e){let t=e.id?x(this,he).find((r)=>r.id===e.id):void 0;if(t){let r=t.cache;t.kind=e.kind,t.title=e.title,t.rightTitle=e.rightTitle,t.content=e.content,t.collapsed=e.collapsed,t.cache=r&&Kp(e,r)?r:void 0;return}x(this,he).push(e)};Bp=function(e,t){let r=`${e}:`;T(this,he,x(this,he).filter((o)=>o.id==null||!o.id.startsWith(r)||t.has(o.id)))};qp=async function*(e){let t=!1;for await(let r of px(e)){let o=sx(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(ix(r))t=!0;if(o&&x(this,le)!==o)T(this,le,o),b(this,w,ee).call(this);else if(ax(r)&&x(this,le)!==fa)T(this,le,fa),b(this,w,ee).call(this);if(r.type==="error")b(this,w,wa).call(this,"Error",r.errorText);if(r.type==="finish"){let n=vx(r);T(this,et,n.totalTokens),T(this,tt,n.outputTokens),T(this,gt,n.outputTokensPerSecond)}yield r}};wa=function(e,t){let r=b(this,w,xt).call(this);x(this,he).push({kind:"error",title:e,content:t}),b(this,w,xo).call(this,r)};xo=function(e){if(x(this,Qe)!==0){let t=b(this,w,xt).call(this)-e;T(this,Qe,b(this,w,ba).call(this,x(this,Qe)+t))}b(this,w,ee).call(this)};ee=function(){let e=Fb({width:b(this,w,So).call(this),height:b(this,w,xa).call(this),title:x(this,Er),rightTitle:Hp(x(this,et),x(this,kr)),visibleBodyLines:b(this,w,Wp).call(this),input:x(this,Re),inputActive:x(this,mt),inputCursorVisible:x(this,bt),status:x(this,le)});x(this,wt).present(e)};Bt=function(){x(this,wt).reset(),b(this,w,ee).call(this)};Wp=function(){if(x(this,he).length===0)return["Waiting for input..."];let e=b(this,w,_o).call(this),t=b(this,w,xt).call(this),r=Math.max(0,t-e-x(this,Qe)),o=r+e,n=[],a=0;for(let s of x(this,he)){let i=Jp(s,b(this,w,So).call(this)-4),u=a+i.length;if(u>r&&a<o)n.push(...i.slice(Math.max(0,r-a),o-a));if(n.length>=e)break;a=u}return n};ba=function(e){let t=Math.max(0,b(this,w,xt).call(this)-b(this,w,_o).call(this));return Math.min(Math.max(0,e),t)};xt=function(){if(x(this,he).length===0)return 1;let e=0;for(let t of x(this,he))e+=Jp(t,b(this,w,So).call(this)-4).length;return e};_o=function(){return Math.max(1,b(this,w,xa).call(this)-5)};So=function(){var e;return Math.max(20,(e=x(this,Ae).columns)!=null?e:80)};xa=function(){var e;return Math.max(8,(e=x(this,Ae).rows)!=null?e:24)};Vp=async function(e){if((e==null?void 0:e.waitForExit)===!1||!x(this,we).isTTY||x(this,fe))return;await new Promise((t)=>{T(this,Te,(r)=>{let o=bo(r);switch(o.type){case"up":case"down":b(this,w,Ft).call(this,o.type);break;case"page-up":case"page-down":b(this,w,$r).call(this,o.type);break;case"ctrl-l":b(this,w,Bt).call(this);break;case"escape":b(this,w,De).call(this),t();break;case"character":if(o.value==="q")b(this,w,De).call(this),t();break;case"ctrl-c":b(this,w,De).call(this),process.exitCode=130,t();break;default:break}}),b(this,w,Tr).call(this)})};function ua(){return Error("Interrupted")}async function*tx(e,t){let r=e[Symbol.asyncIterator](),o=t.then(()=>({done:!0,value:void 0}));while(!0){let n=await Promise.race([r.next(),o]);if(n.done)break;yield n.value}}function rx(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function ox(e,t){var r,o,n,a;let s=He(e),i=`Tool · ${(r=e.title)!=null?r:s}`,u="input"in e?e.input:void 0,c=u===void 0?"Input: (streaming...)":`Input:
|
|
143
|
-
${
|
|
138
|
+
`)}})}};function Vw({originalMessages:e,responseMessageId:t}){if(e==null)return;let r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t==="function"?t():t}var br=l.record(l.string(),vt.optional()),L0=un(()=>Ut(l.union([l.looseObject({type:l.literal("text-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("error"),errorText:l.string()}),l.looseObject({type:l.literal("tool-input-start"),toolCallId:l.string(),toolName:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:br.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-delta"),toolCallId:l.string(),inputTextDelta:l.string()}),l.looseObject({type:l.literal("tool-input-available"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:br.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-error"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:br.optional(),dynamic:l.boolean().optional(),errorText:l.string(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("tool-output-available"),toolCallId:l.string(),output:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:br.optional(),dynamic:l.boolean().optional(),preliminary:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-error"),toolCallId:l.string(),errorText:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:br.optional(),dynamic:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-denied"),toolCallId:l.string()}),l.looseObject({type:l.literal("reasoning-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.custom((e)=>typeof e==="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:l.string().optional(),data:l.unknown(),transient:l.boolean().optional()}),l.looseObject({type:l.literal("start-step")}),l.looseObject({type:l.literal("finish-step")}),l.looseObject({type:l.literal("start"),messageId:l.string().optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("finish"),finishReason:l.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("abort"),reason:l.string().optional()}),l.looseObject({type:l.literal("message-metadata"),messageMetadata:l.unknown()})])));function Gw(e){return e.type.startsWith("data-")}function wr(){return Object.create(null)}function sa(e){return e.type.startsWith("data-")}function ia(e){return e.type==="text"}function mp(e){return e.type==="custom"}function la(e){return e.type==="file"}function hp(e){return e.type==="reasoning-file"}function gp(e){return e.type==="reasoning"}function ca(e){return e.type.startsWith("tool-")}function Cp(e){return e.type==="dynamic-tool"}function ie(e){return ca(e)||Cp(e)}function ua(e){return e.type.split("-").slice(1).join("-")}function Xe(e){return Cp(e)?e.toolName:ua(e)}function Op({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:wr(),activeReasoningParts:wr(),partialToolCalls:wr()}}function Pp({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:n,onError:o,onToolCall:a,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,c){await n(async({state:u,write:d})=>{var p,f,m,y;function v(){let h=u.message.parts,N=h.length-1;while(N>=0&&h[N].type!=="step-start")N--;return h.slice(N+1)}function _(){return v().filter(ie)}function j(h){let V=_().find((K)=>K.toolCallId===h);if(V==null){let K=u.message.parts;for(let M=K.length-1;M>=0;M--){let D=K[M];if(ie(D)&&D.toolCallId===h){V=D;break}}}if(V==null)throw new gt({chunkType:"tool-invocation",chunkId:h,message:`No tool invocation found for tool call ID "${h}".`});return V}function C(h){let V=u.message.parts.filter(ie).find((K)=>{var M;return((M=K.approval)==null?void 0:M.id)===h});if(V==null)throw new gt({chunkType:"tool-approval-response",chunkId:h,message:`No tool invocation found for approval ID "${h}".`});return V}function Z(h,N){var V;let K=N!=null?N:v().find((Y)=>ca(Y)&&Y.toolCallId===h.toolCallId),M=h,D=K;if(K!=null){if(K.state=h.state,D.input=M.input,D.output=M.output,D.errorText=M.errorText,D.rawInput=M.rawInput,D.preliminary=M.preliminary,h.title!==void 0)D.title=h.title;if(h.toolMetadata!==void 0)D.toolMetadata=h.toolMetadata;D.providerExecuted=(V=M.providerExecuted)!=null?V:K.providerExecuted;let Y=M.providerMetadata;if(Y!=null)if(h.state==="output-available"||h.state==="output-error"){let Ue=K;Ue.resultProviderMetadata=Y}else K.callProviderMetadata=Y}else u.message.parts.push({type:`tool-${h.toolName}`,toolCallId:h.toolCallId,state:h.state,title:h.title,...h.toolMetadata!==void 0?{toolMetadata:h.toolMetadata}:{},input:M.input,output:M.output,rawInput:M.rawInput,errorText:M.errorText,providerExecuted:M.providerExecuted,preliminary:M.preliminary,...M.providerMetadata!=null&&(h.state==="output-available"||h.state==="output-error")?{resultProviderMetadata:M.providerMetadata}:{},...M.providerMetadata!=null&&!(h.state==="output-available"||h.state==="output-error")?{callProviderMetadata:M.providerMetadata}:{}})}function R(h,N){var V,K;let M=N!=null?N:v().find((Ue)=>Ue.type==="dynamic-tool"&&Ue.toolCallId===h.toolCallId),D=h,Y=M;if(M!=null){if(M.state=h.state,Y.toolName=h.toolName,Y.input=D.input,Y.output=D.output,Y.errorText=D.errorText,Y.rawInput=(V=D.rawInput)!=null?V:Y.rawInput,Y.preliminary=D.preliminary,h.title!==void 0)Y.title=h.title;if(h.toolMetadata!==void 0)Y.toolMetadata=h.toolMetadata;Y.providerExecuted=(K=D.providerExecuted)!=null?K:M.providerExecuted;let Ue=D.providerMetadata;if(Ue!=null)if(h.state==="output-available"||h.state==="output-error"){let Jf=M;Jf.resultProviderMetadata=Ue}else M.callProviderMetadata=Ue}else u.message.parts.push({type:"dynamic-tool",toolName:h.toolName,toolCallId:h.toolCallId,state:h.state,input:D.input,output:D.output,errorText:D.errorText,preliminary:D.preliminary,providerExecuted:D.providerExecuted,title:h.title,...h.toolMetadata!==void 0?{toolMetadata:h.toolMetadata}:{},...D.providerMetadata!=null&&(h.state==="output-available"||h.state==="output-error")?{resultProviderMetadata:D.providerMetadata}:{},...D.providerMetadata!=null&&!(h.state==="output-available"||h.state==="output-error")?{callProviderMetadata:D.providerMetadata}:{}})}async function P(h){if(h!=null){let N=u.message.metadata!=null?Ep(u.message.metadata,h):h;if(t!=null)await dn({value:N,schema:t,context:{field:"message.metadata",entityId:u.message.id}});u.message.metadata=N}}switch(i.type){case"text-start":{let h={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=h,u.message.parts.push(h),d();break}case"text-delta":{let h=u.activeTextParts[i.id];if(h==null)throw new gt({chunkType:"text-delta",chunkId:i.id,message:`Received text-delta for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});h.text+=i.delta,h.providerMetadata=(p=i.providerMetadata)!=null?p:h.providerMetadata,d();break}case"text-end":{let h=u.activeTextParts[i.id];if(h==null)throw new gt({chunkType:"text-end",chunkId:i.id,message:`Received text-end for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});h.state="done",h.providerMetadata=(f=i.providerMetadata)!=null?f:h.providerMetadata,delete u.activeTextParts[i.id],d();break}case"custom":{let h={type:"custom",kind:i.kind,providerMetadata:i.providerMetadata};u.message.parts.push(h),d();break}case"reasoning-start":{let h={type:"reasoning",id:i.id,text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=h,u.message.parts.push(h),d();break}case"reasoning-delta":{let h=u.activeReasoningParts[i.id];if(h==null)throw new gt({chunkType:"reasoning-delta",chunkId:i.id,message:`Received reasoning-delta for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});h.text+=i.delta,h.providerMetadata=(m=i.providerMetadata)!=null?m:h.providerMetadata,d();break}case"reasoning-end":{let h=u.activeReasoningParts[i.id];if(h==null)throw new gt({chunkType:"reasoning-end",chunkId:i.id,message:`Received reasoning-end for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});h.providerMetadata=(y=i.providerMetadata)!=null?y:h.providerMetadata,h.state="done",delete u.activeReasoningParts[i.id],d();break}case"file":case"reasoning-file":{u.message.parts.push({type:i.type,mediaType:i.mediaType,url:i.url,...i.providerMetadata!=null?{providerMetadata:i.providerMetadata}:{}}),d();break}case"source-url":{u.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),d();break}case"source-document":{u.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),d();break}case"tool-input-start":{let h=v().filter(ca);if(u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:h.length,dynamic:i.dynamic,title:i.title,toolMetadata:i.toolMetadata},i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});d();break}case"tool-input-delta":{let h=u.partialToolCalls[i.toolCallId];if(h==null)throw new gt({chunkType:"tool-input-delta",chunkId:i.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${i.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});h.text+=i.inputTextDelta;let{value:N}=await _r(h.text);if(h.dynamic)R({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:N,title:h.title,toolMetadata:h.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:N,title:h.title,toolMetadata:h.toolMetadata});d();break}case"tool-input-available":{if(i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});if(d(),a&&!i.providerExecuted)await a({toolCall:i});break}case"tool-input-error":{let h=v().filter(ie).find((V)=>V.toolCallId===i.toolCallId);if(h!=null?h.type==="dynamic-tool":!!i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});d();break}case"tool-approval-request":{let h=j(i.toolCallId);h.state="approval-requested",h.approval={id:i.approvalId,...i.isAutomatic===!0?{isAutomatic:!0}:{},...i.signature!=null?{signature:i.signature}:{}},d();break}case"tool-approval-response":{let h=C(i.approvalId),N=h.approval==null?{id:i.approvalId}:h.approval;if(h.state="approval-responded",h.approval={id:i.approvalId,approved:i.approved,...i.reason!=null?{reason:i.reason}:{},...N.isAutomatic===!0?{isAutomatic:!0}:{},...N.signature!=null?{signature:N.signature}:{}},i.providerExecuted!=null)h.providerExecuted=i.providerExecuted;if(i.providerMetadata!=null)h.callProviderMetadata=i.providerMetadata;d();break}case"tool-output-denied":{let h=j(i.toolCallId);h.state="output-denied",d();break}case"tool-output-available":{let h=j(i.toolCallId);if(h.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-available",input:h.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);else Z({toolCallId:i.toolCallId,toolName:ua(h),state:"output-available",input:h.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);d();break}case"tool-output-error":{let h=j(i.toolCallId);if(h.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-error",input:h.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);else Z({toolCallId:i.toolCallId,toolName:ua(h),state:"output-error",input:h.input,rawInput:h.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);d();break}case"start-step":{u.message.parts.push({type:"step-start"});break}case"finish-step":{u.activeTextParts=wr(),u.activeReasoningParts=wr();break}case"start":{if(i.messageId!=null)u.message.id=i.messageId;if(await P(i.messageMetadata),i.messageId!=null||i.messageMetadata!=null)d({updateStatus:!1});break}case"finish":{if(i.finishReason!=null)u.finishReason=i.finishReason;if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"message-metadata":{if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"error":{o==null||o(Error(i.errorText));break}default:if(Gw(i)){if((r==null?void 0:r[i.type])!=null){let V=u.message.parts.findIndex((M)=>("id"in M)&&("data"in M)&&M.id===i.id&&M.type===i.type),K=V>=0?V:u.message.parts.length;await dn({value:i.data,schema:r[i.type],context:{field:`message.parts[${K}].data`,entityName:i.type,entityId:i.id}})}let h=i;if(h.transient){s==null||s(h);break}let N=h.id!=null?u.message.parts.find((V)=>h.type===V.type&&h.id===V.id):void 0;if(N!=null)N.data=h.data;else u.message.parts.push(h);s==null||s(h),d()}}c.enqueue(i)})}}))}function Jw({messageId:e,originalMessages:t=[],onStepEnd:r,onStepFinish:n,onEnd:o,onFinish:a,onError:s,stream:i}){let c=t==null?void 0:t[t.length-1];if((c==null?void 0:c.role)!=="assistant")c=void 0;else e=c.id;let u=!1,d=i.pipeThrough(new TransformStream({transform(C,Z){if(C.type==="start"){let R=C;if(R.messageId==null&&e!=null)R.messageId=e}if(C.type==="abort")u=!0;Z.enqueue(C)}})),p=r!=null?r:n,f=o!=null?o:a;if(f==null&&p==null)return d;let m=Op({lastMessage:c?structuredClone(c):void 0,messageId:e!=null?e:""}),y=async(C)=>{await C({state:m,write:()=>{}})},v=!1,_=async()=>{if(v||!f)return;v=!0;let C=m.message.id===(c==null?void 0:c.id);await f({isAborted:u,isContinuation:C,responseMessage:m.message,messages:[...C?t.slice(0,-1):t,m.message],finishReason:m.finishReason})},j=async()=>{if(!p)return;let C=m.message.id===(c==null?void 0:c.id);try{await p({isContinuation:C,responseMessage:structuredClone(m.message),messages:[...C?t.slice(0,-1):t,structuredClone(m.message)]})}catch(Z){s(Z)}};return Pp({stream:d,runUpdateMessageJob:y,onError:s}).pipeThrough(new TransformStream({async transform(C,Z){if(C.type==="finish-step")await j();Z.enqueue(C)},async cancel(){await _()},async flush(){await _()}}))}function Kw(e,{tools:t,sendReasoning:r=!0,sendSources:n=!1,sendStart:o=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,responseMessageId:c}={}){let u=(p)=>{let f=t==null?void 0:t[p.toolName];if(f==null)return p.dynamic;return(f==null?void 0:f.type)==="dynamic"?!0:void 0},d=e.type;switch(d){case"text-start":return{type:"text-start",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-end":return{type:"text-end",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":{if(!r)return;return{type:d,id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"reasoning-delta":{if(!r)return;return{type:"reasoning-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"file":case"reasoning-file":{if(d==="reasoning-file"&&!r)return;return{type:e.type,mediaType:e.file.mediaType,url:`data:${e.file.mediaType};base64,${e.file.base64}`,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"source":{if(!n)return;if(e.sourceType==="url")return{type:"source-url",sourceId:e.id,url:e.url,title:e.title,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};if(e.sourceType==="document")return{type:"source-document",sourceId:e.id,mediaType:e.mediaType,title:e.title,filename:e.filename,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};return}case"custom":return{type:"custom",kind:e.kind,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"tool-input-start":{let p=u(e);return{type:"tool-input-start",toolCallId:e.id,toolName:e.toolName,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:e.id,inputTextDelta:e.delta};case"tool-call":{let p=u(e);if(e.invalid)return{type:"tool-input-error",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},errorText:s(e.error),...e.title!=null?{title:e.title}:{}};return{type:"tool-input-available",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:e.approvalId,toolCallId:e.toolCall.toolCallId,...e.isAutomatic!=null?{isAutomatic:e.isAutomatic}:{},...e.signature!=null?{signature:e.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:e.approvalId,approved:e.approved,...e.reason!=null?{reason:e.reason}:{},...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{}};case"tool-result":{let p=u(e);return{type:"tool-output-available",toolCallId:e.toolCallId,output:e.output===void 0?null:e.output,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...e.preliminary!=null?{preliminary:e.preliminary}:{},...p!=null?{dynamic:p}:{}}}case"tool-error":{let p=u(e);return{type:"tool-output-error",toolCallId:e.toolCallId,errorText:e.providerExecuted?typeof e.error==="string"?e.error:JSON.stringify(e.error):s(e.error),...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:e.toolCallId};case"error":return{type:"error",errorText:s(e.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":{if(!o)return;return{type:"start",...i!=null?{messageMetadata:i}:{},...c!=null?{messageId:c}:{}}}case"finish":{if(!a)return;return{type:"finish",finishReason:e.finishReason,...i!=null?{messageMetadata:i}:{}}}case"abort":return e;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${d}`)}}function Np({stream:e,tools:t,sendReasoning:r=!0,sendSources:n=!1,sendStart:o=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,originalMessages:c,generateMessageId:u,onEnd:d,onFinish:p}){let f=u!=null?Vw({originalMessages:c,responseMessageId:u}):void 0,m=e.pipeThrough(new TransformStream({transform:async(y,v)=>{let _=i==null?void 0:i({part:y}),j=Kw(y,{tools:t,sendReasoning:r,sendSources:n,sendStart:o,sendFinish:a,onError:s,messageMetadata:_,responseMessageId:f});if(j!=null)v.enqueue(j);if(_!=null&&y.type!=="start"&&y.type!=="finish")v.enqueue({type:"message-metadata",messageMetadata:_})}}));return Jw({stream:m,messageId:f!=null?f:u==null?void 0:u(),originalMessages:c,onEnd:d!=null?d:p,onError:s})}function Hw(e){return Yw(e.pipeThrough(new TransformStream))}function Yw(e){return e[Symbol.asyncIterator]=function(){let t=this.getReader(),r=!1;async function n(o){var a;if(r)return;r=!0;try{if(o)await((a=t.cancel)==null?void 0:a.call(t))}finally{try{t.releaseLock()}catch(s){}}}return{async next(){if(r)return{done:!0,value:void 0};let o;try{o=await t.read()}catch(i){throw await n(!1),i}let{done:a,value:s}=o;if(a)return await n(!0),{done:!0,value:void 0};return{done:!1,value:s}},async return(){return await n(!0),{done:!0,value:void 0}},async throw(o){throw await n(!0),o}}},e}async function Xw({stream:e,onError:t,abortSignal:r}){let n=e.getReader(),o=()=>{n.cancel().catch(()=>{})};if(r==null?void 0:r.aborted)o();else r==null||r.addEventListener("abort",o,{once:!0});try{while(!0){let{done:a}=await n.read();if(a)break}}catch(a){t==null||t(a)}finally{r==null||r.removeEventListener("abort",o),n.releaseLock()}}var B0=G({prefix:"aitxt",size:24}),q0=G({prefix:"call",size:24});var W0=G({prefix:"aitxt",size:24}),V0=G({prefix:"call",size:24});function Qw(e){let t=new Map,r={...e,parts:e.parts.map((o,a)=>{if(o.type==="text"||o.type==="reasoning")return t.set(a,o.text),{...o,text:""};return o})},n=structuredClone(r);for(let[o,a]of t){let s=n.parts[o];if(s.type==="text"||s.type==="reasoning")s.text=a}return n}function zp({message:e,stream:t,onError:r,terminateOnError:n=!1}){var o;let a,s=!1,i=new ReadableStream({start(d){a=d}}),c=Op({messageId:(o=e==null?void 0:e.id)!=null?o:"",lastMessage:e}),u=(d)=>{if(r==null||r(d),!s&&n)s=!0,a==null||a.error(d)};return Xw({stream:Pp({stream:t,runUpdateMessageJob(d){return d({state:c,write:()=>{a==null||a.enqueue(Qw(c.message))}})},onError:u}),onError:u}).finally(()=>{if(!s)a==null||a.close()}),Hw(i)}async function pn(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((n)=>({...n,parts:n.parts.filter((o)=>!ie(o)||o.state==="approval-responded"||o.state==="output-available"||o.state==="output-error"||o.state==="output-denied")}));for(let n of e)switch(n.role){case"system":{let o=n.parts.filter((s)=>s.type==="text"),a=o.reduce((s,i)=>{if(i.providerMetadata!=null)return{...s,...i.providerMetadata};return s},{});r.push({role:"system",content:o.map((s)=>s.text).join(""),...Object.keys(a).length>0?{providerOptions:a}:{}});break}case"user":{r.push({role:"user",content:n.parts.map((o)=>{var a;if(ia(o))return{type:"text",text:o.text,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(la(o))return{type:"file",mediaType:o.mediaType,filename:o.filename,data:o.providerReference!=null?{type:"reference",reference:o.providerReference}:{type:"url",url:new URL(o.url)},...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(sa(o))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,o)}).filter(op)});break}case"assistant":{if(n.parts!=null){let o=[];async function a(){var s,i,c,u,d,p,f;if(o.length===0)return;let m=[];for(let v of o)if(ia(v))m.push({type:"text",text:v.text,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(mp(v))m.push({type:"custom",kind:v.kind,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(la(v))m.push({type:"file",mediaType:v.mediaType,filename:v.filename,data:v.providerReference!=null?{type:"reference",reference:v.providerReference}:{type:"url",url:new URL(v.url)},...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(hp(v))m.push({type:"reasoning-file",data:{type:"url",url:new URL(v.url)},mediaType:v.mediaType,providerOptions:v.providerMetadata});else if(gp(v))m.push({type:"reasoning",text:v.text,providerOptions:v.providerMetadata});else if(ie(v)){let _=Xe(v);if(v.state!=="input-streaming"){if(m.push({type:"tool-call",toolCallId:v.toolCallId,toolName:_,input:v.state==="output-error"?(s=v.input)!=null?s:("rawInput"in v)?v.rawInput:void 0:v.input,providerExecuted:v.providerExecuted,...v.callProviderMetadata!=null?{providerOptions:v.callProviderMetadata}:{}}),v.approval!=null)m.push({type:"tool-approval-request",approvalId:v.approval.id,toolCallId:v.toolCallId,isAutomatic:v.approval.isAutomatic,...v.approval.signature!=null?{signature:v.approval.signature}:{}});if(v.providerExecuted===!0&&v.state!=="approval-responded"&&(v.state==="output-available"||v.state==="output-error")){let j=(i=v.resultProviderMetadata)!=null?i:v.callProviderMetadata;m.push({type:"tool-result",toolCallId:v.toolCallId,toolName:_,output:await dp({toolCallId:v.toolCallId,input:v.input,output:v.state==="output-error"?v.errorText:v.output,tool:fp(t==null?void 0:t.tools,_),errorMode:v.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(sa(v)){let _=(c=t==null?void 0:t.convertDataPart)==null?void 0:c.call(t,v);if(_!=null)m.push(_)}else throw Error(`Unsupported part: ${v}`);if(m.length>0)r.push({role:"assistant",content:m});let y=o.filter((v)=>{var _;return ie(v)&&(v.providerExecuted!==!0||((_=v.approval)==null?void 0:_.approved)!=null)});if(y.length>0){let v=[];for(let _ of y){if(((u=_.approval)==null?void 0:u.approved)!=null)v.push({type:"tool-approval-response",approvalId:_.approval.id,approved:_.approval.approved,reason:_.approval.reason,providerExecuted:_.providerExecuted});if(_.state==="approval-responded"&&((d=_.approval)==null?void 0:d.approved)===!1)v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Xe(_),output:{type:"execution-denied",reason:_.approval.reason},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});if(_.providerExecuted===!0)continue;switch(_.state){case"output-denied":{v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Xe(_),output:{type:"error-text",value:(f=(p=_.approval)==null?void 0:p.reason)!=null?f:"Tool call execution denied."},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let j=Xe(_);v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:j,output:await dp({toolCallId:_.toolCallId,input:_.input,output:_.state==="output-error"?_.errorText:_.output,tool:fp(t==null?void 0:t.tools,j),errorMode:_.state==="output-error"?"text":"none"}),..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}}}if(v.length>0)r.push({role:"tool",content:v})}o=[]}for(let s of n.parts)if(mp(s)||ia(s)||gp(s)||hp(s)||la(s)||ie(s)||sa(s))o.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let o=n.role;throw new bw({originalMessage:n,message:`Unsupported role: ${o}`})}}return r}var se=l.record(l.string(),vt.optional()),ex=l.record(l.string(),l.string()),K0=un(()=>Ut(l.array(l.object({id:l.string(),role:l.enum(["system","user","assistant"]),metadata:l.unknown().optional(),parts:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning"),id:l.string().optional(),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("custom"),kind:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("file"),mediaType:l.string(),filename:l.string().optional(),url:l.string(),providerReference:ex.optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning-file"),mediaType:l.string(),url:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("step-start")}),l.object({type:l.string().startsWith("data-"),id:l.string().optional(),data:l.unknown()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-streaming"),input:l.unknown().optional(),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-error"),input:l.unknown().optional(),rawInput:l.unknown().optional(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-denied"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-streaming"),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),input:l.unknown().optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("input-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-error"),providerExecuted:l.boolean().optional(),input:l.unknown().optional(),rawInput:l.unknown().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:se.optional(),state:l.literal("output-denied"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})})]))}).superRefine((e,t)=>{if(e.role!=="assistant"&&e.parts.length===0)t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty")));var Y0=G({prefix:"call",size:24});var Q0=G({prefix:"call",size:24});var tE=G({prefix:"aiobj",size:24});function jp(e){return({url:t,abortSignal:r})=>Iw({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var nE=G({prefix:"aiobj",size:24});var oE=jp();var tx="AI_NoSuchProviderError",rx=`vercel.ai.error.${tx}`,nx=Symbol.for(rx),ox;ox=nx;var sE=G({prefix:"call",size:24});var iE=jp();var Yp=(e)=>{throw TypeError(e)},wa=(e,t,r)=>t.has(e)||Yp("Cannot "+r),x=(e,t,r)=>(wa(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?Yp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),T=(e,t,r,n)=>(wa(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),w=(e,t,r)=>(wa(e,t,"access private method"),r),Xp=String.fromCharCode(27),fE=new RegExp(`${Xp}\\[[0-?]*[ -/]*[@-~]`,"g"),ma=new RegExp(`^${Xp}\\[[0-?]*[ -/]*[@-~]`);function et(e){let t=0,r=0;while(r<e.length){let n=e.slice(r).match(ma);if(n){r+=n[0].length;continue}let o=e.codePointAt(r);if(o==null)break;let a=String.fromCodePoint(o);t+=Qp(o),r+=a.length}return t}function Bt(e,t){if(t<=0)return"";let r="",n=0,o=0;while(o<e.length&&n<t){let a=e.slice(o).match(ma);if(a){r+=a[0],o+=a[0].length;continue}let s=e.codePointAt(o);if(s==null)break;let i=String.fromCodePoint(s),c=Qp(s);if(c>0&&n+c>t)break;r+=i,o+=i.length,n+=c}while(o<e.length){let a=e.slice(o).match(ma);if(!a)break;r+=a[0],o+=a[0].length}return r}function Qp(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(ax(e))return 0;return sx(e)?2:1}function ax(e){return e>=768&&e<=879||e>=1155&&e<=1161||e>=1425&&e<=1469||e===1471||e>=1473&&e<=1474||e>=1476&&e<=1477||e===1479||e>=1552&&e<=1562||e>=1611&&e<=1631||e===1648||e>=1750&&e<=1756||e>=1759&&e<=1764||e>=1767&&e<=1768||e>=1770&&e<=1773||e===1809||e>=1840&&e<=1866||e>=1958&&e<=1968||e>=2027&&e<=2035||e>=2070&&e<=2073||e>=2075&&e<=2083||e>=2085&&e<=2087||e>=2089&&e<=2093||e>=2137&&e<=2139||e>=2259&&e<=2306||e===2362||e===2364||e>=2369&&e<=2376||e===2381||e>=2385&&e<=2391||e===8205||e>=65024&&e<=65039||e>=917760&&e<=917999}function sx(e){return e>=4352&&(e<=4447||e===9001||e===9002||e>=11904&&e<=42191&&e!==12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=127744&&e<=128591||e>=129280&&e<=129535||e>=131072&&e<=262141)}var Me={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},ix="─";function lx(e){var t;let r=e.split(`
|
|
139
|
+
`),n=[];for(let o=0;o<r.length;o+=1){let a=ux(r,o);if(a!=null){n.push(...fx(a)),o=a.endIndex-1;continue}n.push(cx((t=r[o])!=null?t:""))}return n.join(`
|
|
140
|
+
`)}function cx(e){if(e.startsWith("### "))return je(`▶ ${e.slice(4)}`);if(e.startsWith("## "))return je(`■ ${e.slice(3)}`);if(e.startsWith("# "))return je(`█ ${e.slice(2)}`);let t=e.match(/^(\s*)[-+*]\s+(.*)$/);if(t){let[,r,n=""]=t;return je(`${r}•${n.length>0?` ${n}`:""}`)}if(/^\d+\. /.test(e))return je(e.replace(/^(\d+)\. /,"$1. "));if(e.startsWith("> "))return je(`│ ${e.slice(2)}`);return je(e)}function je(e){return e.replace(/`([^`]+)`/g,"$1").replace(/\*\*([^*\n]+)\*\*/g,`${Me.bold}$1${Me.boldOff}`).replace(/__([^_\n]+)__/g,`${Me.bold}$1${Me.boldOff}`).replace(/\*([^*\n]+)\*/g,`${Me.italic}$1${Me.italicOff}`).replace(/_([^_\n]+)_/g,`${Me.italic}$1${Me.italicOff}`)}function ux(e,t){var r,n,o;let a=pa((r=e[t])!=null?r:"");if(a==null||a.length<2)return;let s=pa((n=e[t+1])!=null?n:"");if(s==null||s.length!==a.length)return;let i=dx(s);if(i==null)return;let c=[],u=t+2;while(u<e.length){let d=pa((o=e[u])!=null?o:"");if(d==null)break;c.push(px(d,a.length)),u+=1}return{alignments:i,endIndex:u,header:a,rows:c}}function pa(e){if(!e.includes("|"))return;let t=e.trim();if(t.startsWith("|"))t=t.slice(1);if(t.endsWith("|")&&!t.endsWith("\\|"))t=t.slice(0,-1);let r=[],n="";for(let o=0;o<t.length;o+=1){let a=t[o],s=t[o+1];if(a==="\\"&&s==="|"){n+="|",o+=1;continue}if(a==="|"){r.push(n.trim()),n="";continue}n+=a}return r.push(n.trim()),r}function dx(e){let t=[];for(let r of e){let n=r.match(/^(:)?-{3,}(:)?$/);if(n==null)return;let[,o,a]=n;t.push(o!=null&&a!=null?"center":a!=null?"right":"left")}return t}function px(e,t){return Array.from({length:t},(r,n)=>{var o;return(o=e[n])!=null?o:""})}function fx(e){let t=e.header.map((a)=>`${Me.bold}${je(a)}${Me.boldOff}`),r=e.rows.map((a)=>a.map(je)),n=[t,...r],o=e.alignments.map((a,s)=>Math.max(3,...n.map((i)=>{var c;return et((c=i[s])!=null?c:"")})));return[Dp(t,o,e.alignments),o.map((a)=>ix.repeat(a)).join(" "),...r.map((a)=>Dp(a,o,e.alignments))]}function Dp(e,t,r){return e.map((n,o)=>{var a,s;return mx(n,(a=t[o])!=null?a:0,(s=r[o])!=null?s:"left")}).join(" ")}function mx(e,t,r){let n=Math.max(0,t-et(e));if(r==="right")return`${" ".repeat(n)}${e}`;if(r==="center"){let o=Math.floor(n/2),a=n-o;return`${" ".repeat(o)}${e}${" ".repeat(a)}`}return`${e}${" ".repeat(n)}`}var ef="─";function hx(e){var t;let r=Math.max(20,e.width),n=Math.max(8,e.height),o=3,s=n-3-2,i=e.visibleBodyLines.slice(0,s);while(i.length<s)i.push("");return[Up(r,e.title,e.rightTitle),...i.map((u)=>Lp(u,r)),Zp(r),Up(r,e.inputActive?"Input":"Status"),Lp(e.inputActive?`> ${e.input}${e.inputCursorVisible===!1?" ":"█"}`:(t=e.status)!=null?t:"Streaming... ↑/↓ scroll · Ctrl+C quit",r),Zp(r)].join(`
|
|
141
|
+
`)}function Up(e,t,r){let n=Math.max(0,e-2),o=t?Bt(` ${t} `,n):"",a=r?Bt(` ${r} `,Math.max(0,n-et(o))):"",s=Math.max(0,n-et(o)-et(a));return`┌${o}${ef.repeat(s)}${a}┐`}function Zp(e){return`└${ef.repeat(e-2)}┘`}function Lp(e,t){let r=t-4,n=Bt(e,r),o=" ".repeat(Math.max(0,r-et(n)));return`│ ${n}${o} │`}var Gt="\x1B",gx=`${Gt}[H`,vx=`${Gt}[2J`,yx=`${Gt}[2K`,bx=`${Gt}[?2026h`,wx=`${Gt}[?2026l`,bn,Ft,Lt,kr,Sr,ha,tf,xx=class{constructor(e,t){z(this,ha),z(this,bn),z(this,Ft),z(this,Lt),z(this,kr,!1),z(this,Sr,!1);var r;T(this,Ft,e.write.bind(e)),T(this,bn,(r=t==null?void 0:t.useSynchronizedUpdates)!=null?r:!0),e.write=(n,o,a)=>{if(!x(this,kr))T(this,Sr,!0);return x(this,Ft).call(this,n,o,a)}}present(e){let t=_x(e),r=x(this,Lt)&&!x(this,Sr)?Sx(x(this,Lt),t):`${gx}${vx}${e}`;if(T(this,Lt,t),T(this,Sr,!1),r.length===0)return;w(this,ha,tf).call(this,r)}reset(){T(this,Lt,void 0)}};bn=new WeakMap;Ft=new WeakMap;Lt=new WeakMap;kr=new WeakMap;Sr=new WeakMap;ha=new WeakSet;tf=function(e){T(this,kr,!0);try{if(!x(this,bn)){x(this,Ft).call(this,e);return}x(this,Ft).call(this,`${bx}${e}${wx}`)}finally{T(this,kr,!1)}};function _x(e){return{lines:e.split(`
|
|
142
|
+
`)}}function Sx(e,t){let r="",n=Math.max(e.lines.length,t.lines.length);for(let o=0;o<n;o++){let a=t.lines[o];if(e.lines[o]===a)continue;r+=`${Gt}[${o+1};1H${yx}${a!=null?a:""}`}return r}var Tx="outputTokensPerSecond",me={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},Ix={user:{color:me.user,border:"─"},assistant:{color:me.assistant,border:"─"},reasoning:{color:me.reasoning,border:"·"},tool:{color:me.tool,border:"─"},error:{color:me.error,border:"─"}},Ex=500,bt="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",kx="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",Tr=`Processing input... ${bt}`,Fp=`Processing tool results... ${bt}`,ga=`Streaming... ${bt}`,Bp=`Executing tools... ${bt}`,be,Ae,St,fn,mn,hn,wn,he,Re,yt,tt,$r,le,qt,fe,rt,Mr,nt,wt,Tt,xt,Ie,_t,Ir,b,gn,vn,Er,De,rf,Wt,Rr,nf,Ar,xn,of,xa,va,yn,af,sf,_a,Sn,ee,Vt,lf,Sa,It,Tn,In,Ta,cf,ya=class{constructor(e){z(this,b),z(this,be),z(this,Ae),z(this,St),z(this,fn),z(this,mn),z(this,hn),z(this,wn),z(this,he,[]),z(this,Re,""),z(this,yt,!1),z(this,tt,0),z(this,$r,""),z(this,le,ga),z(this,qt,!1),z(this,fe,!1),z(this,rt),z(this,Mr),z(this,nt),z(this,wt),z(this,Tt,!0),z(this,xt),z(this,Ie),z(this,_t),z(this,Ir);var t,r,n,o,a,s;T(this,be,(t=e==null?void 0:e.input)!=null?t:process.stdin),T(this,Ae,(r=e==null?void 0:e.output)!=null?r:process.stdout),T(this,St,(n=e==null?void 0:e.frameBuffer)!=null?n:new xx(x(this,Ae))),T(this,fn,(o=e==null?void 0:e.tools)!=null?o:"auto-collapsed"),T(this,mn,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),T(this,hn,(s=e==null?void 0:e.responseStatistics)!=null?s:Tx),T(this,wn,e==null?void 0:e.contextSize),T(this,Mr,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return w(this,b,gn).call(this,e),T(this,yt,!0),T(this,Re,(t=e==null?void 0:e.initialPrompt)!=null?t:""),T(this,le,`Type a prompt and press Enter · ${bt}`),w(this,b,nf).call(this),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=_n(o);switch(a.type){case"character":T(this,Re,x(this,Re)+a.value),w(this,b,xn).call(this),w(this,b,ee).call(this);break;case"backspace":T(this,Re,x(this,Re).slice(0,-1)),w(this,b,xn).call(this),w(this,b,ee).call(this);break;case"enter":{let s=x(this,Re);T(this,yt,!1),w(this,b,Ar).call(this),T(this,le,Tr),w(this,b,xa).call(this,s),T(this,Re,""),w(this,b,ee).call(this),w(this,b,De).call(this),r(s);break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":w(this,b,Ar).call(this),w(this,b,vn).call(this),n(fa());break;case"ignore":break}}),w(this,b,Er).call(this)})}async renderStream(e,t){var r,n,o,a;w(this,b,gn).call(this,t),T(this,yt,!1),T(this,le,Tr),w(this,b,of).call(this,t==null?void 0:t.submittedPrompt),T(this,fe,!1),T(this,rt,void 0),T(this,nt,void 0),T(this,wt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:x(this,fn),reasoning:(n=t==null?void 0:t.reasoning)!=null?n:x(this,mn),responseStatistics:(o=t==null?void 0:t.responseStatistics)!=null?o:x(this,hn)};w(this,b,ee).call(this);let i=new Promise((d)=>{T(this,Ir,d)});T(this,Ie,(d)=>w(this,b,rf).call(this,d)),w(this,b,Er).call(this);let c,u=Dx(w(this,b,sf).call(this,e.uiMessageStream));try{let d=zp({message:e.message,stream:u,onError:(p)=>w(this,b,_a).call(this,"Error",Mx(p))});for await(let p of $x(d,i)){if(x(this,fe))break;c=p,w(this,b,va).call(this,p,s)}if(!x(this,fe)&&c&&x(this,nt)!=null)w(this,b,va).call(this,c,s)}finally{if(T(this,Ir,void 0),x(this,fe))(a=e.abort)==null||a.call(e);if(w(this,b,De).call(this),T(this,le,x(this,fe)?"Interrupted":(t==null?void 0:t.continueSession)?`Done · Enter another prompt · ${bt}`:`Done · ${kx}`),w(this,b,ee).call(this),await w(this,b,cf).call(this,t),x(this,fe)||!(t==null?void 0:t.continueSession))w(this,b,vn).call(this)}if(x(this,fe))throw fa();return c}async readToolApproval(e,t){return w(this,b,gn).call(this,t),T(this,yt,!1),T(this,le,`Approve ${zx(e)}? y/n · ${bt}`),T(this,fe,!1),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=_n(o);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")T(this,le,`Approved · ${Tr}`),w(this,b,De).call(this),w(this,b,ee).call(this),r({approved:!0});else if(s==="n")T(this,le,`Denied · ${Tr}`),w(this,b,De).call(this),w(this,b,ee).call(this),r({approved:!1,reason:"Denied by user."});break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),w(this,b,vn).call(this),n(fa());break;default:break}}),w(this,b,Er).call(this)})}};be=new WeakMap;Ae=new WeakMap;St=new WeakMap;fn=new WeakMap;mn=new WeakMap;hn=new WeakMap;wn=new WeakMap;he=new WeakMap;Re=new WeakMap;yt=new WeakMap;tt=new WeakMap;$r=new WeakMap;le=new WeakMap;qt=new WeakMap;fe=new WeakMap;rt=new WeakMap;Mr=new WeakMap;nt=new WeakMap;wt=new WeakMap;Tt=new WeakMap;xt=new WeakMap;Ie=new WeakMap;_t=new WeakMap;Ir=new WeakMap;b=new WeakSet;gn=function(e){var t,r,n,o;if(T(this,$r,(t=e==null?void 0:e.title)!=null?t:x(this,$r)),T(this,Mr,(r=e==null?void 0:e.contextSize)!=null?r:x(this,wn)),x(this,qt))return;if(T(this,qt,!0),x(this,St).reset(),x(this,Ae).write("\x1B[?1049h\x1B[?25l"),x(this,be).isTTY)(o=(n=x(this,be)).setRawMode)==null||o.call(n,!0),x(this,be).resume();T(this,_t,()=>w(this,b,Vt).call(this)),x(this,Ae).on("resize",x(this,_t))};vn=function(){var e,t;if(w(this,b,De).call(this),w(this,b,Ar).call(this),!x(this,qt))return;if(x(this,be).isTTY)(t=(e=x(this,be)).setRawMode)==null||t.call(e,!1),x(this,be).pause();if(x(this,_t))x(this,Ae).off("resize",x(this,_t)),T(this,_t,void 0);x(this,Ae).write("\x1B[?25h\x1B[?1049l"),x(this,St).reset(),T(this,qt,!1)};Er=function(){if(x(this,Ie))x(this,be).on("data",x(this,Ie))};De=function(){if(x(this,Ie))x(this,be).off("data",x(this,Ie)),T(this,Ie,void 0)};rf=function(e){var t;let r=_n(e);switch(r.type){case"up":case"down":w(this,b,Wt).call(this,r.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,r.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),(t=x(this,Ir))==null||t.call(this);break;default:break}};Wt=function(e,t=1){let r=e==="up"?t:-t;T(this,tt,w(this,b,Sa).call(this,x(this,tt)+r)),w(this,b,ee).call(this)};Rr=function(e){w(this,b,Wt).call(this,e==="page-up"?"up":"down",w(this,b,Tn).call(this))};nf=function(){var e,t;w(this,b,Ar).call(this),w(this,b,xn).call(this),T(this,xt,setInterval(()=>{T(this,Tt,!x(this,Tt)),w(this,b,ee).call(this)},Ex)),(t=(e=x(this,xt)).unref)==null||t.call(e)};Ar=function(){if(x(this,xt))clearInterval(x(this,xt)),T(this,xt,void 0);T(this,Tt,!0)};xn=function(){T(this,Tt,!0)};of=function(e){if(e==null)return;let t=x(this,he).at(-1);if((t==null?void 0:t.kind)==="user"&&t.content===e)return;w(this,b,xa).call(this,e)};xa=function(e){let t=w(this,b,It).call(this);x(this,he).push({kind:"user",title:"User",content:e}),w(this,b,Sn).call(this,t)};va=function(e,t){var r,n,o;let a=w(this,b,It).call(this),s=new Set,i=Wx(e.metadata);T(this,rt,(r=i.totalTokens)!=null?r:x(this,rt)),T(this,nt,(n=i.outputTokens)!=null?n:x(this,nt)),T(this,wt,(o=i.outputTokensPerSecond)!=null?o:x(this,wt));for(let[c,u]of e.parts.entries()){let d=jx(e.id,c);switch(u.type){case"text":{let p=u.text.trim();if(p.length===0)break;s.add(d),w(this,b,yn).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:Jx({totalTokens:x(this,rt),outputTokens:x(this,nt),outputTokensPerSecond:x(this,wt)},t.responseStatistics),content:p});break}case"reasoning":{let p=u.text.trim();if(t.reasoning==="hidden"||p.length===0)break;s.add(d),w(this,b,yn).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:qp(e,c,t.reasoning,t)});break}default:if(ie(u)){if(t.tools==="hidden")break;s.add(d),w(this,b,yn).call(this,{id:d,...Rx(u,{mode:t.tools,collapsed:qp(e,c,t.tools,t)})})}break}}w(this,b,af).call(this,e.id,s),w(this,b,Sn).call(this,a)};yn=function(e){let t=e.id?x(this,he).find((r)=>r.id===e.id):void 0;if(t){let r=t.cache;t.kind=e.kind,t.title=e.title,t.rightTitle=e.rightTitle,t.content=e.content,t.collapsed=e.collapsed,t.cache=r&&df(e,r)?r:void 0;return}x(this,he).push(e)};af=function(e,t){let r=`${e}:`;T(this,he,x(this,he).filter((n)=>n.id==null||!n.id.startsWith(r)||t.has(n.id)))};sf=async function*(e){let t=!1;for await(let r of Ux(e)){let n=Ox(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(Px(r))t=!0;if(n&&x(this,le)!==n)T(this,le,n),w(this,b,ee).call(this);else if(Cx(r)&&x(this,le)!==ga)T(this,le,ga),w(this,b,ee).call(this);if(r.type==="error")w(this,b,_a).call(this,"Error",r.errorText);if(r.type==="finish"){let o=qx(r);T(this,rt,o.totalTokens),T(this,nt,o.outputTokens),T(this,wt,o.outputTokensPerSecond)}yield r}};_a=function(e,t){let r=w(this,b,It).call(this);x(this,he).push({kind:"error",title:e,content:t}),w(this,b,Sn).call(this,r)};Sn=function(e){if(x(this,tt)!==0){let t=w(this,b,It).call(this)-e;T(this,tt,w(this,b,Sa).call(this,x(this,tt)+t))}w(this,b,ee).call(this)};ee=function(){let e=hx({width:w(this,b,In).call(this),height:w(this,b,Ta).call(this),title:x(this,$r),rightTitle:ff(x(this,rt),x(this,Mr)),visibleBodyLines:w(this,b,lf).call(this),input:x(this,Re),inputActive:x(this,yt),inputCursorVisible:x(this,Tt),status:x(this,le)});x(this,St).present(e)};Vt=function(){x(this,St).reset(),w(this,b,ee).call(this)};lf=function(){if(x(this,he).length===0)return["Waiting for input..."];let e=w(this,b,Tn).call(this),t=w(this,b,It).call(this),r=Math.max(0,t-e-x(this,tt)),n=r+e,o=[],a=0;for(let s of x(this,he)){let i=uf(s,w(this,b,In).call(this)-4),c=a+i.length;if(c>r&&a<n)o.push(...i.slice(Math.max(0,r-a),n-a));if(o.length>=e)break;a=c}return o};Sa=function(e){let t=Math.max(0,w(this,b,It).call(this)-w(this,b,Tn).call(this));return Math.min(Math.max(0,e),t)};It=function(){if(x(this,he).length===0)return 1;let e=0;for(let t of x(this,he))e+=uf(t,w(this,b,In).call(this)-4).length;return e};Tn=function(){return Math.max(1,w(this,b,Ta).call(this)-5)};In=function(){var e;return Math.max(20,(e=x(this,Ae).columns)!=null?e:80)};Ta=function(){var e;return Math.max(8,(e=x(this,Ae).rows)!=null?e:24)};cf=async function(e){if((e==null?void 0:e.waitForExit)===!1||!x(this,be).isTTY||x(this,fe))return;await new Promise((t)=>{T(this,Ie,(r)=>{let n=_n(r);switch(n.type){case"up":case"down":w(this,b,Wt).call(this,n.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,n.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":w(this,b,De).call(this),t();break;case"character":if(n.value==="q")w(this,b,De).call(this),t();break;case"ctrl-c":w(this,b,De).call(this),process.exitCode=130,t();break;default:break}}),w(this,b,Er).call(this)})};function fa(){return Error("Interrupted")}async function*$x(e,t){let r=e[Symbol.asyncIterator](),n=t.then(()=>({done:!0,value:void 0}));while(!0){let o=await Promise.race([r.next(),n]);if(o.done)break;yield o.value}}function Mx(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Rx(e,t){var r,n,o,a;let s=Xe(e),i=`Tool · ${(r=e.title)!=null?r:s}`,c="input"in e?e.input:void 0,u=c===void 0?"Input: (streaming...)":`Input:
|
|
143
|
+
${Wp(c)}`,d=Nx(e);if(t.collapsed)return{kind:"tool",title:i,rightTitle:d,content:"",collapsed:!0};switch(e.state){case"input-streaming":return{kind:"tool",title:i,rightTitle:d,content:u};case"input-available":return{kind:"tool",title:i,rightTitle:d,content:u};case"approval-requested":return{kind:"tool",title:i,rightTitle:d,content:u};case"approval-responded":return{kind:"tool",title:i,rightTitle:d,content:u};case"output-available":return{kind:"tool",title:i,rightTitle:d,content:`${u}
|
|
144
144
|
|
|
145
145
|
Output:
|
|
146
|
-
${
|
|
146
|
+
${Wp(e.output)}`};case"output-error":return{kind:"error",title:`Tool Error · ${(n=e.title)!=null?n:s}`,rightTitle:d,content:`${u}
|
|
147
147
|
|
|
148
148
|
Error:
|
|
149
|
-
${e.errorText}`};case"output-denied":return{kind:"error",title:`Tool Denied · ${(
|
|
149
|
+
${e.errorText}`};case"output-denied":return{kind:"error",title:`Tool Denied · ${(o=e.title)!=null?o:s}`,rightTitle:d,content:`${u}
|
|
150
150
|
|
|
151
|
-
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function
|
|
152
|
-
`).flatMap((p)=>
|
|
153
|
-
`:return{type:"enter"};case"":case"\b":return{type:"backspace"};case"\x1B[A":return{type:"up"};case"\x1B[B":return{type:"down"};case"\x1B[5~":return{type:"page-up"};case"\x1B[6~":return{type:"page-down"};default:if(t>=" "&&t!=="")return{type:"character",value:t};return{type:"ignore"}}}var
|
|
154
|
-
`)}async function
|
|
151
|
+
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function qp(e,t,r,n){switch(r){case"collapsed":return!0;case"auto-collapsed":return e.parts.slice(t+1).some((o)=>Ax(o,n));case"full":case"hidden":return!1}}function Ax(e,t){switch(e.type){case"text":return e.text.trim().length>0;case"reasoning":return t.reasoning!=="hidden"&&e.text.trim().length>0;default:return ie(e)&&t.tools!=="hidden"}}function Cx(e){switch(e.type){case"text-start":case"text-delta":case"reasoning-start":case"reasoning-delta":case"tool-input-start":case"tool-input-delta":return!0;default:return!1}}function Ox(e,{hasPendingToolResults:t}){switch(e.type){case"start-step":return t?Fp:Tr;case"tool-output-available":case"tool-output-error":case"tool-output-denied":return Fp;case"tool-input-available":return Bp;case"tool-approval-response":return e.approved?Bp:void 0;default:return}}function Px(e){switch(e.type){case"tool-output-available":case"tool-output-error":case"tool-output-denied":return!0;default:return!1}}function Nx(e){switch(e.state){case"input-streaming":return"waiting";case"approval-requested":return"approval requested";case"input-available":return"executing";case"approval-responded":return e.approval.approved?"executing":"denied";case"output-available":case"output-error":return"done";case"output-denied":return"denied"}}function Wp(e){if(typeof e==="string")return e;return JSON.stringify(e,null,2)}function zx(e){var t;return`tool ${(t=e.title)!=null?t:e.toolName}`}function jx(e,t){return`${e}:${t}`}function Dx(e){if(e instanceof ReadableStream)return e;return new ReadableStream({async start(t){try{for await(let r of e)t.enqueue(r);t.close()}catch(r){t.error(r)}}})}async function*Ux(e){if(e instanceof ReadableStream){let t=e.getReader();try{while(!0){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}return}yield*e}function uf(e,t){if(e.cache&&df(e,e.cache,t))return e.cache.lines;let r=Zx(e,t);return e.cache={width:t,kind:e.kind,title:e.title,rightTitle:e.rightTitle,content:e.content,collapsed:e.collapsed===!0,lines:r},r}function df(e,t,r=t.width){return t.width===r&&t.kind===e.kind&&t.title===e.title&&t.rightTitle===e.rightTitle&&t.content===e.content&&t.collapsed===(e.collapsed===!0)}function Zx(e,t){let r=Ix[e.kind],n=Math.max(1,t-4),o=` ${e.title} `,a=e.rightTitle?` ${e.rightTitle} `:"";if(e.collapsed){let p=Math.max(0,t-2-o.length-a.length),f=`${r.color}╭${o}${r.border.repeat(p)}${a}╮${me.reset}`,m=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${me.reset}`;return[f,m]}let s=Math.max(0,t-2-o.length-a.length),i=`${r.color}╭${o}${r.border.repeat(s)}${a}╮${me.reset}`,c=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${me.reset}`,d=(e.content.length>0?lx(e.content):me.dim+"(streaming...)"+me.reset).split(`
|
|
152
|
+
`).flatMap((p)=>Fx(p,n));return[i,...d.map((p)=>Lx(p,n,r.color)),c]}function Lx(e,t,r){let n=Bt(e,t),o=" ".repeat(Math.max(0,t-et(n)));return`${r}│${me.reset} ${n}${o} ${r}│${me.reset}`}function Fx(e,t){if(e.length===0)return[""];let r=[],n=e;while(et(n)>t){let o=Bx(n,t);r.push(n.slice(0,o).trimEnd()),n=n.slice(o).trimStart()}return r.push(n),r}function Bx(e,t){let n=Bt(e,t+1).lastIndexOf(" ");if(n>0)return n;return Bt(e,t).length}function qx(e){var t,r;let n="usage"in e?e.usage:void 0,o="messageMetadata"in e?(t=e.messageMetadata)==null?void 0:t.usage:void 0,a="messageMetadata"in e?(r=e.messageMetadata)==null?void 0:r.performance:void 0;return{totalTokens:pf(n!=null?n:o),outputTokens:Ia(n!=null?n:o),outputTokensPerSecond:a==null?void 0:a.outputTokensPerSecond}}function Wx(e){var t;let r=e;return{totalTokens:pf(r==null?void 0:r.usage),outputTokens:Ia(r==null?void 0:r.usage),outputTokensPerSecond:(t=r==null?void 0:r.performance)==null?void 0:t.outputTokensPerSecond}}function pf(e){let t=e==null?void 0:e.totalTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;let r=Vx(e),n=Ia(e);if(r!=null&&n!=null)return r+n;return}function Vx(e){let t=e==null?void 0:e.inputTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;return e==null?void 0:e.promptTokens}function Ia(e){let t=e==null?void 0:e.outputTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;return e==null?void 0:e.completionTokens}function ff(e,t){if(e==null)return;let r=`${e.toLocaleString()} ${e===1?"token":"tokens"}`,n=Gx(e,t);return n==null?r:`${r} ${n}`}function Gx(e,t){if(t==null||t<=0||!Number.isFinite(t))return;return`${Math.round(e/t*100).toLocaleString()}%`}function Jx(e,t){if(t==="outputTokensPerSecond")return Kx(e.outputTokensPerSecond);return ff(e.outputTokens)}function Kx(e){if(e==null)return;return`${Hx(e)} tok/s`}function Hx(e){return Number.isInteger(e)?e.toLocaleString():e.toLocaleString(void 0,{maximumFractionDigits:1})}function _n(e){let t=e.toString("utf8");switch(t){case"\f":return{type:"ctrl-l"};case"\x03":return{type:"ctrl-c"};case"\x1B":return{type:"escape"};case"\r":case`
|
|
153
|
+
`:return{type:"enter"};case"":case"\b":return{type:"backspace"};case"\x1B[A":return{type:"up"};case"\x1B[B":return{type:"down"};case"\x1B[5~":return{type:"page-up"};case"\x1B[6~":return{type:"page-down"};default:if(t>=" "&&t!=="")return{type:"character",value:t};return{type:"ignore"}}}var Yx="outputTokensPerSecond",Xx=class{constructor(e){this.chatId=jt();var t,r,n,o;this.agent=e.agent,this.transport=e.transport,this.renderer=(t=e_(e))!=null?t:Qx(e),this.title=e.title,this.tools=(r=e.tools)!=null?r:"auto-collapsed",this.reasoning=(n=e.reasoning)!=null?n:"auto-collapsed",this.responseStatistics=(o=e.responseStatistics)!=null?o:Yx,this.contextSize=e.contextSize,this.sandbox=e.sandbox}async run(){let e=this.title,t=[],r=0,n=()=>`message-${++r}`,o,a=!1,s=!1;while(!0){if(!s){if(o==null){if(!this.renderer.readPrompt){if(a)return;throw Error("No prompt was provided and the renderer does not support prompt input.")}try{o=await this.renderer.readPrompt({title:e})}catch(c){if(Hp(c))return;throw c}if(o==null)return}t.push(n_(n(),o)),a=!0}let i=await this.streamMessages([...t],n);try{let c=await this.renderer.renderStream(i,{title:e,submittedPrompt:o,continueSession:Boolean(this.renderer.readPrompt),tools:this.tools,reasoning:this.reasoning,responseStatistics:this.responseStatistics,contextSize:this.contextSize,waitForExit:!1});if(c&&c.parts.length>0){let u=o_(c);if(u.length>0){if(!this.renderer.readToolApproval)throw Error("Tool approval was requested, but the renderer does not support tool approval input.");for(let d of u){let p=await this.renderer.readToolApproval(d,{title:e});a_(c,d,p)}Gp(t,c,s),s=!0,o=void 0;continue}Gp(t,c,s)}}catch(c){if(Hp(c))return;throw c}s=!1,o=void 0}}async streamMessages(e,t){let r=new AbortController,n=()=>r.abort();if(this.transport)return{uiMessageStream:await this.transport.sendMessages({trigger:"submit-message",chatId:this.chatId,messageId:void 0,messages:e,abortSignal:r.signal}),message:ba(e),abort:n};let o=this.agent,a=await o.stream({prompt:await pn(e,{tools:o.tools}),abortSignal:r.signal,options:void 0,experimental_sandbox:this.sandbox});return{uiMessageStream:t_(a.fullStream,t,e),message:ba(e),abort:n}}};function Qx(e){return e.tools===void 0&&e.reasoning===void 0&&e.responseStatistics===void 0&&e.contextSize===void 0?new ya:new ya({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize})}function e_(e){if(e.renderer)return e.renderer;if(!e.screen&&!e.userInput)return;return new ya({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize,input:e.userInput,output:e.screen})}async function*t_(e,t,r=[]){var n,o;let a=new Set,s=new Set,i=new Set,c,u,d=!1;yield{type:"start",messageId:(o=(n=ba(r))==null?void 0:n.id)!=null?o:t()};for await(let p of e)switch(p.type){case"text-start":a.add(p.id),yield{type:"text-start",id:p.id,providerMetadata:p.providerMetadata};break;case"text-delta":if(!a.has(p.id))a.add(p.id),yield{type:"text-start",id:p.id,providerMetadata:p.providerMetadata};yield{type:"text-delta",id:p.id,delta:p.text,providerMetadata:p.providerMetadata};break;case"text-end":a.delete(p.id),yield{type:"text-end",id:p.id,providerMetadata:p.providerMetadata};break;case"reasoning-start":s.add(p.id),yield{type:"reasoning-start",id:p.id,providerMetadata:p.providerMetadata};break;case"reasoning-delta":if(!s.has(p.id))s.add(p.id),yield{type:"reasoning-start",id:p.id,providerMetadata:p.providerMetadata};yield{type:"reasoning-delta",id:p.id,delta:p.text,providerMetadata:p.providerMetadata};break;case"reasoning-end":s.delete(p.id),yield{type:"reasoning-end",id:p.id,providerMetadata:p.providerMetadata};break;case"tool-input-start":yield{type:"tool-input-start",toolCallId:p.id,toolName:p.toolName,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,title:p.title};break;case"tool-input-delta":yield{type:"tool-input-delta",toolCallId:p.id,inputTextDelta:p.delta};break;case"tool-call":i.add(p.toolCallId),yield{type:"tool-input-available",toolCallId:p.toolCallId,toolName:p.toolName,input:p.input,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,title:p.title};break;case"tool-approval-request":if(!i.has(p.toolCall.toolCallId))i.add(p.toolCall.toolCallId),yield{type:"tool-input-available",toolCallId:p.toolCall.toolCallId,toolName:p.toolCall.toolName,input:p.toolCall.input,providerExecuted:p.toolCall.providerExecuted,providerMetadata:p.toolCall.providerMetadata,toolMetadata:p.toolCall.toolMetadata,dynamic:p.toolCall.dynamic,title:p.toolCall.title};yield{type:"tool-approval-request",approvalId:p.approvalId,toolCallId:p.toolCall.toolCallId,isAutomatic:p.isAutomatic};break;case"tool-approval-response":yield{type:"tool-approval-response",approvalId:p.approvalId,approved:p.approved,reason:p.reason,providerExecuted:p.providerExecuted};break;case"tool-result":yield{type:"tool-output-available",toolCallId:p.toolCallId,output:p.output,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,preliminary:p.preliminary};break;case"tool-error":yield{type:"tool-output-error",toolCallId:p.toolCallId,errorText:Jp(p.error),providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic};break;case"tool-output-denied":yield{type:"tool-output-denied",toolCallId:p.toolCallId};break;case"source":if(p.sourceType==="url")yield{type:"source-url",sourceId:p.id,url:p.url,title:p.title,providerMetadata:p.providerMetadata};else yield{type:"source-document",sourceId:p.id,mediaType:p.mediaType,title:p.title,filename:p.filename,providerMetadata:p.providerMetadata};break;case"file":yield{type:"file",url:Kp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"reasoning-file":yield{type:"reasoning-file",url:Kp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"start-step":yield{type:"start-step"};break;case"finish-step":c=p.usage,u=p.performance,yield{type:"finish-step"};break;case"finish":yield*Vp(a,s),d=!0,yield{type:"finish",finishReason:p.finishReason,messageMetadata:r_(c!=null?c:p.totalUsage,u)};break;case"abort":yield{type:"abort",reason:p.reason};break;case"error":yield{type:"error",errorText:Jp(p.error)};break}if(!d)yield*Vp(a,s),yield{type:"finish"}}function r_(e,t){if((e==null?void 0:e.totalTokens)==null&&(e==null?void 0:e.outputTokens)==null&&(t==null?void 0:t.outputTokensPerSecond)==null)return;return{...(e==null?void 0:e.totalTokens)==null&&(e==null?void 0:e.outputTokens)==null?{}:{usage:{...e.totalTokens==null?{}:{totalTokens:e.totalTokens},...e.outputTokens==null?{}:{outputTokens:e.outputTokens}}},...(t==null?void 0:t.outputTokensPerSecond)==null?{}:{performance:{outputTokensPerSecond:t.outputTokensPerSecond}}}}function*Vp(e,t){for(let r of e)yield{type:"text-end",id:r};e.clear();for(let r of t)yield{type:"reasoning-end",id:r};t.clear()}function n_(e,t){return{id:e,role:"user",parts:[{type:"text",text:t}]}}function Gp(e,t,r){var n;if(r&&((n=e.at(-1))==null?void 0:n.role)==="assistant"){e[e.length-1]=t;return}e.push(t)}function ba(e){let t=e.at(-1);return(t==null?void 0:t.role)==="assistant"?t:void 0}function o_(e){let t=[];for(let[r,n]of e.parts.entries()){if(!ie(n)||n.state!=="approval-requested"||n.approval.isAutomatic===!0)continue;t.push({approvalId:n.approval.id,toolCallId:n.toolCallId,toolName:Xe(n),title:n.title,input:n.input,providerExecuted:n.providerExecuted,messageId:e.id,partIndex:r})}return t}function a_(e,t,r){let n=e.parts[t.partIndex];if(!n||!ie(n)||n.toolCallId!==t.toolCallId)throw Error(`Could not find tool approval request ${t.approvalId}.`);n.state="approval-responded",n.approval={id:t.approvalId,approved:r.approved,...r.reason?{reason:r.reason}:{}}}function Jp(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Kp(e,t){return`data:${e};base64,${t}`}function Hp(e){return e instanceof Error&&e.message==="Interrupted"}async function mf(e){await new Xx(e).run()}async function hf(e){if(e.prompt!==void 0)s_(e.prompt);await mf({title:`broods · ${e.agent.name}`,tools:"full",transport:new vf(e.client,e.agent)})}async function gf(e){let t=Ap({stream:yf(e.client.stream(e.agent,{input:e.prompt}),void 0,()=>{})});for await(let r of t)process.stdout.write(r);process.stdout.write(`
|
|
154
|
+
`)}async function s_(e){let t=process.stdin.listenerCount("data"),r=Date.now()+1e4;while(process.stdin.listenerCount("data")<=t){if(Date.now()>r)return;await new Promise((n)=>setTimeout(n,20))}process.stdin.emit("data",Buffer.from(e)),process.stdin.emit("data",Buffer.from("\r"))}class vf{client;agent;conversationKey=`tui-${jt()}`;sentApprovals=new Set;sentUserTurns=0;constructor(e,t){this.client=e;this.agent=t}async reconnectToStream(){return null}async sendMessages(e){let t=this.pendingEvents(await pn(e.messages));if(t.events.length===0)throw Error("Nothing new to send: the agent already saw this turn.");let r=this.client.stream(this.agent,{conversationKey:this.conversationKey,events:t.events});return Np({stream:yf(r,e.abortSignal,t.commit),originalMessages:e.messages,generateMessageId:jt,sendSources:!0})}pendingEvents(e){let t=[],r=[],n=0;for(let o of e){if(o.role==="user"){if(n+=1,n>this.sentUserTurns)t.push(o);continue}if(o.role!=="tool")continue;for(let a of o.content)if(a.type==="tool-approval-response"&&!this.sentApprovals.has(a.approvalId))r.push(a)}if(r.length>0)t.push({role:"tool",content:r});return{events:t,commit:()=>{this.sentUserTurns=n;for(let o of r)this.sentApprovals.add(o.approvalId)}}}}function yf(e,t,r){let n=!1,o=()=>void e.return(void 0);return new ReadableStream({pull:async function(a){let s=await Promise.race([e.next(),i_(t)]);if(t?.aborted){o(),a.close();return}if(!n)n=!0,r();if(s.done)a.close();else a.enqueue(s.value)},cancel:o})}function i_(e){return new Promise((t)=>{if(!e)return;let r=()=>t({done:!0,value:void 0});if(e.aborted)r();else e.addEventListener("abort",r,{once:!0})})}import{existsSync as bf}from"node:fs";import{mkdir as l_,readFile as c_,writeFile as u_}from"node:fs/promises";import{dirname as _f,join as Ea,resolve as d_,sep as ot}from"node:path";import{fileURLToPath as p_}from"node:url";var ka=Ea(_f(En),"update-check.json"),f_=86400000,m_="https://registry.npmjs.org/broods/latest",h_=2000;function $a(e,t){let r=xf(e),n=xf(t);for(let o=0;o<3;o+=1){let a=r[o]??0,s=n[o]??0;if(a!==s)return a>s}return!wf(e)&&wf(t)}async function Ma(e={}){let t=await y_(),r=e.maxAgeMs??f_;if(t&&Date.now()-t.checkedAt<r)return t.latest;let n=await g_();if(n===null)return t?.latest??null;return await b_({checkedAt:Date.now(),latest:n}),n}function Sf(e=d_(process.cwd()),t=p_(import.meta.url)){let r=`${ot}node_modules${ot}`,n=t.lastIndexOf(r),o=n===-1?null:t.slice(0,n),a=o===null?t.startsWith(`${e}${ot}`):e===o||e.startsWith(`${o}${ot}`),i=t.includes(`${ot}.bun${ot}install${ot}global${ot}`)||a&&v_(o??e)?"bun":"npm",c=i==="bun"?"add":"install";return{manager:i,global:!a,command:i,args:a?[c,"broods@latest"]:[c,"-g","broods@latest"]}}async function g_(){try{let e=await fetch(m_,{signal:AbortSignal.timeout(h_),headers:{accept:"application/json"}});if(!e.ok)return null;let t=await e.json();return typeof t.version==="string"?t.version:null}catch{return null}}function v_(e){return bf(Ea(e,"bun.lock"))||bf(Ea(e,"bun.lockb"))}function wf(e){return e.includes("-")}async function y_(){try{let e=JSON.parse(await c_(ka,"utf8"));if(typeof e.latest!=="string")return null;if(typeof e.checkedAt!=="number")return null;return{checkedAt:e.checkedAt,latest:e.latest}}catch{return null}}function xf(e){let[t]=e.trim().replace(/^v/,"").split("-");return(t??"").split(".").slice(0,3).map((r)=>Number.parseInt(r,10)||0)}async function b_(e){try{await l_(_f(ka),{recursive:!0}),await u_(ka,`${JSON.stringify(e)}
|
|
155
|
+
`,"utf8")}catch{}}var Tf={name:"broods",version:"0.17.3",description:"CLI + TypeScript SDK for the broods agent platform.",type:"module",license:"MIT",homepage:"https://github.com/beeblastco/broods#readme",repository:{type:"git",url:"git+https://github.com/beeblastco/broods.git",directory:"packages/broods"},bugs:{url:"https://github.com/beeblastco/broods/issues"},keywords:["agents","ai","sdk","cli","broods"],bin:{broods:"dist/cli/index.js"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./account":{types:"./dist/account.d.ts",import:"./dist/account.js"}},typesVersions:{"*":{account:["./dist/account.d.ts"]}},main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist","README.md","LICENSE.md"],scripts:{build:"bun scripts/build.ts && rollup -c rollup.dts.config.mjs && rm -rf .dts-temp",check:"tsc --noEmit","pack:check":"bun run build && publint && attw --pack .",test:"bun test"},engines:{node:">=22.15"},dependencies:{esbuild:"^0.28.2"},peerDependencies:{ai:"^7.0.67"},devDependencies:{"@ai-sdk/tui":"^1.0.68","@arethetypeswrong/cli":"^0.18.5","@chat-adapter/discord":"^4.38.1","@chat-adapter/github":"^4.38.1","@chat-adapter/slack":"^4.38.1","@chat-adapter/telegram":"^4.38.1","@types/bun":"^1.3.14",ai:"^7.0.67",publint:"^0.3.23",rollup:"^4.62.4","rollup-plugin-dts":"^6.5.1",typescript:"^6.0.3"}};var at=Tf.version,it="https://dashboard.broods.app",Jt="eu-west-1",k_=[{region:"eu-west-1",label:"eu-west-1 (Ireland)"},{region:"us-east-1",label:"us-east-1 (US East)"},{region:"ap-southeast-1",label:"ap-southeast-1 (Singapore)"}],ge=`Global options:
|
|
155
156
|
--project <name> Project name override (default: package name or folder)
|
|
156
157
|
--stage <name> Target stage override (BROODS_STAGE otherwise)
|
|
157
158
|
--base-url <url> broods API base URL for sync/env calls (default: discovered at login)
|
|
158
|
-
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${
|
|
159
|
-
-h, --help Show this help`,
|
|
159
|
+
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${it})
|
|
160
|
+
-h, --help Show this help`,Ra=`broods v${at}
|
|
160
161
|
|
|
161
162
|
Usage: broods <command> [subcommand] [options]
|
|
162
163
|
|
|
@@ -168,7 +169,7 @@ Project:
|
|
|
168
169
|
|
|
169
170
|
Account:
|
|
170
171
|
login Authenticate through the dashboard
|
|
171
|
-
|
|
172
|
+
whoami Show the login, server, org, plan, project and stage in use
|
|
172
173
|
org List, switch or create organizations
|
|
173
174
|
stage List, switch or create stages
|
|
174
175
|
env Store, reveal, list or remove encrypted environment variables
|
|
@@ -179,11 +180,14 @@ Runtime:
|
|
|
179
180
|
logs Backfill recent logs then live-tail
|
|
180
181
|
stream Stream live logs for the whole project/stage (Ctrl+C to stop)
|
|
181
182
|
|
|
183
|
+
CLI:
|
|
184
|
+
update Install the newest broods release over this one
|
|
185
|
+
|
|
182
186
|
Options:
|
|
183
187
|
-h, --help Show help for a command (e.g. \`broods org --help\`)
|
|
184
188
|
-v, --version Print the CLI version
|
|
185
189
|
|
|
186
|
-
Run \`broods <command> --help\` to see a command's subcommands and flags.`,
|
|
190
|
+
Run \`broods <command> --help\` to see a command's subcommands and flags.`,zf={agent:`Usage: broods agent <list|get> [name]
|
|
187
191
|
|
|
188
192
|
Subcommands:
|
|
189
193
|
list List the agents in the current project/stage scope
|
|
@@ -197,7 +201,7 @@ BROODS_STAGE by design — pass --stage to deploy anywhere else.
|
|
|
197
201
|
Options:
|
|
198
202
|
--prune Allow deploy to delete undeclared remote resources
|
|
199
203
|
--rotate-key Mint a fresh runtime API key and write it to .env.local
|
|
200
|
-
--region <region> Broods service region preference (default: ${
|
|
204
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
201
205
|
|
|
202
206
|
${ge}`,dev:`Usage: broods dev [--once] [options]
|
|
203
207
|
|
|
@@ -207,8 +211,8 @@ env("NAME") values from .env.local.
|
|
|
207
211
|
|
|
208
212
|
Options:
|
|
209
213
|
--once Sync a single time and exit (no watch, no log stream)
|
|
210
|
-
--level <lvl> Minimum level for the log tail INFO|WARN|ERROR (default:
|
|
211
|
-
--
|
|
214
|
+
--level <lvl> Minimum level for the log tail DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
215
|
+
--all Tail INFO and up (DEBUG is dashboard-only)
|
|
212
216
|
|
|
213
217
|
${ge}`,diff:`Usage: broods diff [options]
|
|
214
218
|
|
|
@@ -227,7 +231,7 @@ ${ge}`,init:`Usage: broods init [options]
|
|
|
227
231
|
Creates the broods/ project shell and .env.local defaults.
|
|
228
232
|
|
|
229
233
|
Options:
|
|
230
|
-
--region <region> Broods service region preference (default: ${
|
|
234
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
231
235
|
--force Overwrite existing starter files
|
|
232
236
|
|
|
233
237
|
${ge}`,login:`Usage: broods login [options]
|
|
@@ -236,16 +240,16 @@ Authenticates through the dashboard and stores the token in
|
|
|
236
240
|
~/.broods/config.json.
|
|
237
241
|
|
|
238
242
|
Options:
|
|
239
|
-
--region <region> Broods service region preference (default: ${
|
|
243
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
240
244
|
|
|
241
245
|
${ge}`,logs:`Usage: broods logs [options]
|
|
242
246
|
|
|
243
|
-
Backfills recent logs then live-tails.
|
|
247
|
+
Backfills recent logs then live-tails. Warnings and errors, 100 lines by default.
|
|
244
248
|
|
|
245
249
|
Options:
|
|
246
250
|
-n, --limit <n> Backfill line count (default 100)
|
|
247
|
-
--level <lvl> Minimum log level INFO|WARN|ERROR (default:
|
|
248
|
-
--
|
|
251
|
+
--level <lvl> Minimum log level DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
252
|
+
--all Show every level (DEBUG from the backfill only)
|
|
249
253
|
--json Print the backfill as raw JSON
|
|
250
254
|
|
|
251
255
|
${ge}`,org:`Usage: broods org <list|use|create> [name]
|
|
@@ -274,55 +278,59 @@ Options:
|
|
|
274
278
|
--from <stage> Clone the source stage's architecture and env vars
|
|
275
279
|
--use Switch to the stage \`stage create\` just made
|
|
276
280
|
|
|
277
|
-
${ge}`,status:`Usage: broods status [options]
|
|
278
|
-
|
|
279
|
-
Shows the login, server, org, plan, project and stage the next command uses.
|
|
280
|
-
|
|
281
281
|
${ge}`,stream:`Usage: broods stream [options]
|
|
282
282
|
|
|
283
283
|
Streams live logs for the whole project/stage until Ctrl+C. No backfill.
|
|
284
284
|
|
|
285
285
|
Options:
|
|
286
|
-
--level <lvl> Minimum log level INFO|WARN|ERROR (default:
|
|
287
|
-
--
|
|
286
|
+
--level <lvl> Minimum log level DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
287
|
+
--all Stream INFO and up (DEBUG is dashboard-only)
|
|
288
|
+
|
|
289
|
+
${ge}`,update:`Usage: broods update
|
|
290
|
+
|
|
291
|
+
Installs the newest published broods over the copy you are running, with the
|
|
292
|
+
package manager that installed it (bun or npm). Global installs are replaced in
|
|
293
|
+
place; inside a project the dependency is upgraded instead.`,whoami:`Usage: broods whoami [options]
|
|
294
|
+
|
|
295
|
+
Shows the login, server, org, plan, project and stage the next command uses.
|
|
288
296
|
|
|
289
|
-
${ge}`};async function
|
|
297
|
+
${ge}`};async function $_(){let[,,e,...t]=process.argv;switch(e){case void 0:case"--help":case"-h":console.log(Ra);return;case"--version":case"-v":console.log(at);return}cS(e,t);let r=zf[e];if(r&&(we(t,"--help")||we(t,"-h"))){console.log(r);return}switch(e){case"init":await M_(t);return;case"login":await R_(t);return;case"whoami":await C_(t);return;case"org":await O_(t);return;case"stage":await P_(t);return;case"diff":await N_(t);return;case"deploy":await z_(t);return;case"dev":await D_(t);return;case"env":await eS(t);return;case"stream":await rS(t);return;case"logs":await nS(t);return;case"agent":await oS(t);return;case"run":await iS(t);return;case"update":await j_();return;default:throw Error(`Unknown command: ${e}
|
|
290
298
|
|
|
291
|
-
${
|
|
299
|
+
${Ra}`)}}function Ee(e){return zf[e]??Ra}async function M_(e){let t=we(e,"--force"),r=H(process.cwd(),ce);await za(H(r,Ce),{recursive:!0}),await $n(H(r,"index.ts"),Gf(),t),await $n(H(r,".gitignore"),`_generated
|
|
292
300
|
.cache
|
|
293
|
-
`,t);let
|
|
301
|
+
`,t);let n=E(e,"--dashboard-url")??it;await Ja({dashboardUrl:n,baseUrl:Pa(n),project:E(e,"--project")??Ht(process.cwd()),stage:E(e,"--stage")??"development",region:E(e,"--region")??Jt,force:t}),await Ga(),console.log(`Created ${ce}/`)}async function R_(e){let t=te(),r=E(e,"--dashboard-url")??t.dashboardUrl??it,n=await Zn(r),o=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),a=E(e,"--stage")??lt()??"development";await Ja({dashboardUrl:n.dashboardUrl??r,baseUrl:n.baseUrl,project:o,stage:a,region:E(e,"--region")??process.env.BROODS_REGION??Jt,force:!1});let s=n.user?.email||n.user?.name||n.user?.authId,i=n.org?`${n.org.name} (${n.org.slug})`:void 0,c=n.account?.username;if(console.log(`Logged in to ${n.dashboardUrl}`),s)console.log(`User: ${s}`);if(i)console.log(`Org: ${i}`);if(c)console.log(`Account: ${c}`);await A_(n.baseUrl,n.token,o,a)}async function A_(e,t,r,n){try{let a=await new ae({baseUrl:e,token:t}).getRuntimeKey(r,n);if(a?.apiKey)await Kt("BROODS_API_KEY",a.apiKey),console.log(`Wrote BROODS_API_KEY (${a.keyHint}) to .env.local`)}catch{}}async function C_(e){let t=te(),r=Ua(e),n=E(e,"--dashboard-url")??t.dashboardUrl??it;console.log(`broods v${at}`),console.log(`Dashboard: ${n}`),console.log(`Project: ${r.project}`),console.log(`Stage: ${r.stage}`);let o;try{o=await ke(E(e,"--base-url"))}catch{J("Not logged in. Run `broods login`.");return}console.log(`Server: ${o.baseUrl}`);let a=new ae({baseUrl:o.baseUrl,token:o.token}),s=await a.getOnboarding(),i=s.orgs.find((m)=>m.id===s.currentOrgId);if(s.user)console.log(`User: ${s.user.email}`);if(console.log(`Org: ${i?Or(i):s.currentOrgId}`),s.account)console.log(`Account: ${s.account.username} (${s.account.status})`);let c=process.env.BROODS_API_KEY,u=Cr("BROODS_API_KEY")?"your shell":".env.local",d=null,p=null;try{d=await a.getRuntimeKey(r.project,r.stage)}catch(m){p=m instanceof Error?m.message:String(m)}if(p)console.log("Runtime key: unavailable"),J(`⚠ Could not read the runtime key: ${p}`);else if(!d?.apiKey)console.log("Runtime key: none for this scope"),J(`${r.project}/${r.stage} does not exist in ${i?.name??"this org"} yet. \`broods dev\` will create it.`);else if(!c)console.log(`Runtime key: ${d.keyHint} (not in .env.local)`),J("BROODS_API_KEY is not set locally. Run `broods dev`.");else if(c===d.apiKey)console.log(`Runtime key: ${d.keyHint} (matches this org and stage)`);else console.log(`Runtime key: ${d.keyHint} expected`),J(`⚠ BROODS_API_KEY from ${u} belongs to a different org or stage. Run \`broods stage use ${r.stage}\` to repoint it.`);let f=s.projects.map((m)=>m.name);if(!f.includes(r.project))J(`This org has no project named ${r.project}. It has: ${f.length>0?f.join(", "):"none"}.`)}async function O_(e){let[t,r]=Rt(e);if(!t){console.log(Ee("org"));return}let n=t==="list"||t==="ls",o=t==="use"||t==="select";if(!n&&!o&&!(t==="create"||t==="new"))throw Error(`Unknown org subcommand: ${t}
|
|
294
302
|
|
|
295
|
-
${
|
|
296
|
-
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(
|
|
303
|
+
${Ee("org")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??it,c=await Da(i),u=new ae({baseUrl:c.baseUrl,token:c.token}),d=await u.getOnboarding();if(n){for(let f of d.orgs){let m=f.id===d.currentOrgId?"*":" ",y=f.accountStatus==="active"?"":` [${f.accountStatus} account]`;console.log(`${m} ${Or(f)}${y}`)}console.log(`
|
|
304
|
+
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(o){let f=d.orgs.filter((y)=>y.accountStatus==="active"),m=r?f.find((y)=>y.slug===r||y.name===r||y.id===r):await At("Select organization",f,Or);if(!m)throw Error(`No selectable organization matches "${r}". Run \`broods org list\`.`);await kf(u,c,await u.selectOnboardingOrg(m.id),e);return}let p=r??await pt("Organization name",Ht(process.cwd()));if(!p.trim())throw Error("Organization name is required.");await kf(u,c,await u.createOnboardingOrg(p),e)}async function P_(e){let[t,r]=Rt(e);if(!t){console.log(Ee("stage"));return}let n=t==="list"||t==="ls",o=t==="use"||t==="select";if(!n&&!o&&!(t==="create"||t==="new"))throw Error(`Unknown stage subcommand: ${t}
|
|
297
305
|
|
|
298
|
-
${
|
|
306
|
+
${Ee("stage")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??it,c=Ua(e),u=await Da(i),d=new ae({baseUrl:u.baseUrl,token:u.token});if(n){let v=await d.listStages(c.project);if(v.length===0){console.log(`${c.project} has no stages yet. \`broods dev\` creates Development.`);return}console.log(`Stages for ${c.project}:`);for(let _ of v)console.log($f(_,c.stage));return}if(o){let v=await d.listStages(c.project),_=r?v.find((C)=>Uf(C.name,r)):await At("Select stage",v,(C)=>$f(C,c.stage).trim());if(!_)throw Error(`${c.project} has no stage "${r}". Existing: ${v.map((C)=>C.name).join(", ")}. Create it with \`broods stage create ${r} --from ${c.stage}\`.`);let j=Cr("BROODS_STAGE");await Kt("BROODS_STAGE",_.name),console.log(`Stage: ${_.name} (wrote BROODS_STAGE)`),Ca("BROODS_STAGE",j),await Aa(d,{project:c.project,stage:_.name});return}let p=r??await pt("Stage name","staging");if(!p.trim())throw Error("Stage name is required.");let f=E(e,"--from"),m=await d.createStage(c.project,p,f);if(console.log(`Created stage ${m.stage.name} in ${c.project}${m.clonedFrom?` from ${m.clonedFrom}`:""}`),m.clonedFrom)console.log(` ${m.stage.agentCount} agent(s), ${m.stage.variableCount} env var(s) copied`);if(!we(e,"--use")){console.log(`Switch to it with \`broods stage use ${m.stage.name}\`.`);return}let y=Cr("BROODS_STAGE");await Kt("BROODS_STAGE",m.stage.name),console.log(`Stage: ${m.stage.name} (wrote BROODS_STAGE)`),Ca("BROODS_STAGE",y),await Aa(d,{project:c.project,stage:m.stage.name})}async function N_(e){let{manifest:t,config:r}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),n=await ke(E(e,"--base-url")??r.baseUrl),a=await new ae({baseUrl:n.baseUrl,token:n.token}).getManifest(t.project,t.stage);Fr(Un(t,a?.manifest??null))}async function z_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"deploy",useRuntimeStage:!1}),a=await ke(E(e,"--base-url")??r.baseUrl),i=await new ae({baseUrl:a.baseUrl,token:a.token}).putManifest(t,we(e,"--prune"),we(e,"--rotate-key"));await jr(t,i.ids,process.cwd(),n,i.deployment,o),await Wf(),await Ga(),console.log(`Synced ${i.manifest.resources.length} resources to ${t.project}/${t.stage}`),await jf(i.deployment),Zf(o,i),Df(i)}async function jf(e){if(!e)return;if(e.apiKey){await Kt("BROODS_API_KEY",e.apiKey),console.log(`Wrote BROODS_API_KEY (${e.keyHint}) to .env.local`);return}}function Df(e){let t=e.warnings?.missingEnv??[];if(t.length>0){J(`⚠ ${t.length} env var(s) referenced in agent config but not set: ${t.join(", ")}`);for(let n of t)console.log(` broods env set ${n}`)}let r=e.warnings?.missingPolicies??[];if(r.length>0)J(`⚠ ${r.length} policy ref(s) in agent config match no policy resource in this deploy and will be ignored at runtime: ${r.join(", ")}`)}async function j_(){let e=await Ma({maxAgeMs:0});if(e===null)throw Error("Could not reach the npm registry to check for a newer broods.");if(!$a(e,at)){console.log(`broods v${at} is already the newest release.`);return}let t=Sf();console.log(`Updating broods ${at} → ${e} ${t.global?"globally":"in this project"}`),console.log(`$ ${[t.command,...t.args].join(" ")}`),await new Promise((r,n)=>{let o=Nf(t.command,t.args,{stdio:"inherit"});o.on("error",n),o.on("exit",(a)=>{if(a===0){r();return}n(Error(`${t.command} exited with code ${a??"unknown"}`))})}),console.log(`broods ${e} installed.`)}async function Ef(){let e=await Ma();if(e===null||!$a(e,at))return;J(`broods ${e} is out, you are on ${at}. Run \`broods update\`.`)}async function D_(e){if(await Z_(e),we(e,"--once")){if(!process.env.BROODS_SUPPRESS_DEV_TARGET)await Rf(e),await Ef();let d=If.now();await G_(e),Rs(If.now()-d);return}let t=Pf(E_(),`broods-declined-${process.pid}.txt`),r={...process.env,BROODS_DECLINED_FILE:t,BROODS_SUPPRESS_DEV_TARGET:"1",BROODS_RELOAD_ENV:"1"};await Rf(e),await Ef(),await Mf(e,r);let n,o=!1,a=!1,s=await Af(),i=()=>{if(o){a=!0;return}o=!0,Af().then(async(d)=>{if(d===s)return;s=d,await Mf(e,r)}).catch((d)=>console.error(d instanceof Error?d.message:String(d))).finally(()=>{if(o=!1,a)a=!1,i()})},c=I_(H(process.cwd(),ce),{recursive:!0},(d,p)=>{if(!p||lS(p))return;clearTimeout(n),n=setTimeout(i,150)}),u=new AbortController;U_(e,u.signal),process.on("SIGINT",()=>{u.abort(),c.close(),process.exit(0)})}async function U_(e,t){let r;try{r=Fa()}catch{console.log("· live logs off — no runtime key found for this stage yet. Run `broods dev --once` after login to create or reconnect it.");return}let n,o;try{({project:n,stage:o}=await qa(e,r))}catch{return}let a=Ba(e);console.log(`· live logs [${a}+]${Wa(a)}. Full INFO/DEBUG history is in the dashboard.`);try{for await(let s of Ur({baseUrl:r.baseUrl,apiKey:r.apiKey,project:n,stage:o},{backfill:0,minLevel:a,signal:t}))console.log(Va(s))}catch(s){if(!t.aborted)console.error(`live logs: ${s instanceof Error?s.message:String(s)}`)}}async function Z_(e){await L_(),await F_(e)}async function L_(){let e=H(process.cwd(),ce);await za(H(e,Ce),{recursive:!0});let t=[];if(await Ka(e,t),t.length>0)return;await $n(H(e,"index.ts"),Gf(),!1),await $n(H(e,".gitignore"),`_generated
|
|
299
307
|
.cache
|
|
300
|
-
`,!1),console.log(`Created starter ${ce}/`)}async function
|
|
301
|
-
`,"utf8")}async function
|
|
308
|
+
`,!1),console.log(`Created starter ${ce}/`)}async function F_(e){let t=H(process.cwd(),".env.local"),r=await Et(t),n=Vf(r),o=n.BROODS_STAGE;if(["BROODS_DASHBOARD_URL","BROODS_BASE_URL","BROODS_PROJECT","BROODS_REGION"].filter((y)=>n[y]===void 0).length===0&&o!==void 0)return;let s=n.BROODS_PROJECT===void 0,i=o===void 0,c=n.BROODS_REGION===void 0,u=te(),d=E(e,"--dashboard-url")??u.dashboardUrl??it,p=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),f=E(e,"--stage")??lt()??"development",m=E(e,"--region")??process.env.BROODS_REGION??Jt;if(process.stdin.isTTY&&s){let y=await Da(d),v=new ae({baseUrl:y.baseUrl,token:y.token}),_=await B_(v,y),j=await q_(v,_);if(p=await V_(j,p),!p.trim())throw Error("Project name is required.")}if(process.stdin.isTTY&&i){if(f=await pt("Stage",f),!f.trim())throw Error("Stage is required.")}if(process.stdin.isTTY&&c)m=await At("Select service region",[...k_],(y)=>y.label).then((y)=>y.region);await Ja({dashboardUrl:d,baseUrl:u.baseUrl??Pa(d),project:p,stage:f,region:m,force:!1})}async function Da(e){try{return await ke()}catch(t){if(!process.stdin.isTTY)throw t;return J("No CLI login found. Starting browser login."),await Zn(e)}}async function B_(e,t){try{return await e.getOnboarding()}catch(r){if(!t.org)throw r;return J("CLI onboarding endpoint is not available yet; using the org from the current login."),{currentOrgId:t.org.id,orgs:[{id:t.org.id,name:t.org.name,slug:t.org.slug,role:"admin",accountStatus:"active"}],projects:[]}}}async function kf(e,t,r,n){let o=r.orgs.find((a)=>a.id===r.currentOrgId);if(!o)throw Error("Selected organization is not visible to this login");if(process.env.BROODS_TOKEN)J("BROODS_TOKEN is set, so the switch applies to this token only and was not stored.");else await Zr({...t,org:{id:o.id,name:o.name,slug:o.slug},...r.account?{account:{id:r.account.id,username:r.account.username}}:{}});console.log(`Org: ${Or(o)}`),console.log(`Projects: ${r.projects.length>0?r.projects.map((a)=>a.name).join(", "):"none yet"}`),await Aa(e,Ua(n))}async function Aa(e,t){let r;try{r=await e.getRuntimeKey(t.project,t.stage)}catch(o){J(`⚠ Could not read the runtime key for ${t.project}/${t.stage} (${o instanceof Error?o.message:String(o)}). `+"BROODS_API_KEY still points at the previous scope — run `broods whoami` to check it.");return}if(!r?.apiKey){J(`⚠ ${t.project}/${t.stage} is not synced here yet, so BROODS_API_KEY still points at the previous scope. Run \`broods dev\`.`);return}let n=Cr("BROODS_API_KEY");if(!n&&process.env.BROODS_API_KEY===r.apiKey)return;await Kt("BROODS_API_KEY",r.apiKey),console.log(`Wrote BROODS_API_KEY (${r.keyHint}) to .env.local`),Ca("BROODS_API_KEY",n)}function Ca(e,t){if(!t)return;J(`⚠ ${e} is exported in your shell, which wins over .env.local. Run \`unset ${e}\` or the next broods command keeps the old value.`)}function Or(e){let t=e.role==="owner"||e.role==="admin"?e.role:"member",r=e.plan?`, ${e.plan} plan`:"";return`${e.name} (${e.slug}, ${t}${r})`}function $f(e,t){let r=Uf(e.name,t)?"*":" ",n=e.deploymentRegion?`, ${e.deploymentRegion}`:"";return`${r} ${e.name} (${e.kind}${n}) — ${e.agentCount} agent(s), ${e.variableCount} env var(s)`}function Uf(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}function Ua(e){return te(),{project:E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),stage:E(e,"--stage")??lt()??"development"}}async function q_(e,t){let r=t.orgs.filter((a)=>a.accountStatus==="active"),n={kind:"create",name:"New organization"},o=await At("Select organization",[...r,n],(a)=>("kind"in a)?"Create new organization":Or(a));if("kind"in o){let a=await pt("Organization name",Ht(process.cwd()));if(!a.trim())throw Error("Organization name is required.");return await e.createOnboardingOrg(a)}return o.id===t.currentOrgId?t:await e.selectOnboardingOrg(o.id)}function W_(e,t){return e.projects.find((n)=>n.name===t||n.slug===t)?.name??t}async function V_(e,t){if(e.projects.length===0)return pt("Project name",t);let r={kind:"create",name:W_(e,t),slug:""},n=[...e.projects,r],o=await At("Select project",n,(a)=>("kind"in a)&&a.kind==="create"?`Create new project (${a.name})`:`${a.name} (${a.slug})`);if("kind"in o&&o.kind==="create")return pt("New project name",o.name);return o.name}function Mf(e,t){return new Promise((r,n)=>{let o=process.argv[1]??"",a=Nf(process.execPath,[o,"dev","--once",...e],{stdio:"inherit",env:t});a.on("error",n),a.on("exit",(s,i)=>{if(s===0){r();return}n(Error(i?`Sync child exited from signal ${i}`:`Sync child exited with code ${s??"unknown"}`))})})}async function G_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),a=await ke(E(e,"--base-url")??r.baseUrl),s=new ae({baseUrl:a.baseUrl,token:a.token}),i=await s.getManifest(t.project,t.stage),c=Un(t,i?.manifest??null);Fr(c.filter((y)=>y.operation!=="delete")),await J_(s,t,Lf(a.baseUrl,a.token));let u=await s.putManifest(t,!1);await jr(t,u.ids,process.cwd(),n,u.deployment,o),await Wf(),await Ga();let d=await Y_(),p=c.filter((y)=>y.operation==="delete"),f=p.filter((y)=>!d.has(`${y.kind}:${y.name}`)),m=!1;if(f.length>0)if(J("⚠ These remote resources are no longer declared locally:"),Fr(f),await Ms(`Delete ${f.length} resource(s) from ${t.project}/${t.stage}?`))u=await s.putManifest(t,!0),await jr(t,u.ids,process.cwd(),n,u.deployment,o),await Q_(),m=!0;else await X_(f.map((y)=>`${y.kind}:${y.name}`));if(!m&&p.length>0){let y=p.map((v)=>`${v.kind}:${v.name}`).join(", ");J(`⚠ ${p.length} undeclared resource(s) kept remotely: ${y} — re-declare in code or run \`deploy --prune\` to remove.`)}return await jf(u.deployment),Zf(o,u),Df(u),u}function Zf(e,t){let r=t.deployment;if(!r||e.length===0)return;let n=new Na,o=new Map;for(let s of e){if(!t.ids.agents[s.agentName])continue;let i=o.get(s.type)??[];i.push(s.alias),o.set(s.type,i)}let a=r.stageKind===void 0||r.stageKind==="production";for(let[s,i]of o){let c=a?n.accountWebhookUrl(r.accountId,s):n.stageWebhookUrl(r.accountId,r.endpointId,s);console.log(`Channel ${i.join(", ")} (${s}): ${c}${s==="pancake"?"?secret=<PANCAKE_WEBHOOK_SECRET>":""}`)}}async function J_(e,t,r){let n=ps(t).filter((c)=>{let u=process.env[c];return!c.startsWith("BROODS_")&&u!==void 0&&u!==""});if(n.length===0)return;let o=await Za(),a=o[kn(r,t.project,t.stage)]??{},s=new Set((await e.listEnv(t.project,t.stage)).map((c)=>c.name)),i=n.filter((c)=>!s.has(c)||a[c]!==Oa(process.env[c]));if(i.length===0)return;await Promise.all(i.map((c)=>e.setEnv(t.project,t.stage,c,process.env[c])));for(let c of i)a[c]=Oa(process.env[c]);o[kn(r,t.project,t.stage)]=a,await La(o),Cs(i)}function Lf(e,t){return`${e}:${ja("sha256").update(t).digest("hex").slice(0,16)}`}function kn(e,t,r){return`${e}:${t}:${r}`}function Ff(){return H(S_(En),"env-sync.json")}function Oa(e){return ja("sha256").update(e).digest("hex")}async function Za(){let e=await Et(Ff());if(!e)return{};try{let t=JSON.parse(e);return t&&typeof t==="object"?t:{}}catch{return{}}}async function La(e){let t=Ff();await za(H(t,".."),{recursive:!0}),await st(t,`${JSON.stringify(e,null,2)}
|
|
309
|
+
`,"utf8")}async function K_(e,t,r,n,o){let a=await Za(),s=kn(e,t,r);a[s]={...a[s]??{},[n]:Oa(o)},await La(a)}async function H_(e,t,r,n){let o=await Za(),a=kn(e,t,r);if(!o[a]||!(n in o[a]))return;delete o[a][n],await La(o)}async function Rf(e){let t=te(),{manifest:r,config:n}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),o=await ke(E(e,"--base-url")??n.baseUrl);As({project:r.project,stage:r.stage,dashboardUrl:E(e,"--dashboard-url")??t.dashboardUrl??o.dashboardUrl??n.dashboardUrl??it})}async function Y_(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return new Set;let t=await Et(e);return new Set(t.split(/\r?\n/).map((r)=>r.trim()).filter(Boolean))}async function X_(e){let t=process.env.BROODS_DECLINED_FILE;if(!t||e.length===0)return;await st(t,`${e.join(`
|
|
302
310
|
`)}
|
|
303
|
-
`,{flag:"a"})}async function
|
|
311
|
+
`,{flag:"a"})}async function Q_(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return;await st(e,"","utf8")}async function eS(e){let[t,r]=Rt(e);if(!t){console.log(Ee("env"));return}let n=t==="list"||t==="ls",o=t==="rm"||t==="remove",a=t==="get",s=t==="set"||o||a;if(!n&&!s)throw Error(`Unknown env subcommand: ${t}
|
|
304
312
|
|
|
305
|
-
${
|
|
313
|
+
${Ee("env")}`);if(s&&!r)throw Error(`broods env ${t} needs a variable name.
|
|
306
314
|
|
|
307
|
-
${
|
|
315
|
+
${Ee("env")}`);let{manifest:i,config:c}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),u=await ke(E(e,"--base-url")??c.baseUrl),d=new ae({baseUrl:u.baseUrl,token:u.token}),p=Lf(u.baseUrl,u.token),f=`${i.project}/${i.stage}`;if(n){let y=await d.listEnv(i.project,i.stage);if(y.length===0){console.log(`No environment variables set for ${f}.`);return}console.log(`Environment variables for ${f} (values hidden):`);for(let v of y)console.log(` ${v.name}`);return}if(a){let y=await d.getEnv(i.project,i.stage,r);if(y===null){console.error(`${r} is not set for ${f}`),process.exitCode=1;return}console.log(y);return}if(o){await d.removeEnv(i.project,i.stage,r),await H_(p,i.project,i.stage,r),console.log(`Removed ${r} from ${f}`);return}let m=await $s(r);await d.setEnv(i.project,i.stage,r,m),await K_(p,i.project,i.stage,r,m),console.log(`Stored ${r} for ${f}`)}function Fa(){te();let e=process.env.BROODS_API_KEY??"";if(!e)throw Error("BROODS_API_KEY is not set. Run `broods deploy` first, or set the key in .env.local.");let t=process.env.BROODS_BASE_URL??process.env.BROODS_HOST??Cf;return{apiKey:e,baseUrl:t}}function Ba(e){if(we(e,"--all"))return"DEBUG";let t=E(e,"--level");if(t===void 0&&we(e,"--level"))throw Error("Missing value for --level. Use DEBUG, INFO, WARN, or ERROR.");if(!t)return"WARN";let r=t.toUpperCase();if(r==="DEBUG")return"DEBUG";if(r==="INFO")return"INFO";if(r==="WARN"||r==="WARNING")return"WARN";if(r==="ERROR")return"ERROR";throw Error(`Unknown log level: ${t}. Use DEBUG, INFO, WARN, or ERROR.`)}async function tS(e){te();let t=E(e,"--project")??process.env.BROODS_PROJECT,r=E(e,"--stage")??lt();if(!t)throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT in .env.local.");if(!r)throw Error("Stage name is required. Pass --stage <name> or set BROODS_STAGE in .env.local.");return{project:t,stage:r}}async function qa(e,t){let r=await tS(e),n=await Es(t.baseUrl,t.apiKey);if(!n)return r;if(n.projectSlug!==r.project||n.stageSlug!==r.stage)console.log(`· reading ${n.projectSlug}/${n.stageSlug} — the runtime key is scoped there, not to ${r.project}/${r.stage}.`);return{project:n.projectSlug,stage:n.stageSlug}}function Wa(e){return e==="WARN"?" (--all for INFO too)":""}function Va(e){let t=new Date(e.ts).toISOString().slice(11,23),r=e.level.padEnd(5);return`${t} ${r} ${e.eventType} ${e.message}`}async function rS(e){let{apiKey:t,baseUrl:r}=Fa(),{project:n,stage:o}=await qa(e,{baseUrl:r,apiKey:t}),a=Ba(e),s=new AbortController,i=()=>s.abort();process.on("SIGINT",i),console.log(`Streaming live logs for ${n}/${o} [${a}+]`+Wa(a)+" — Ctrl+C to stop");try{for await(let c of Ur({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:0,minLevel:a,signal:s.signal}))console.log(Va(c))}catch(c){if(!s.signal.aborted)console.error(c instanceof Error?c.message:String(c)),process.exitCode=1}finally{process.off("SIGINT",i)}}async function nS(e){let{apiKey:t,baseUrl:r}=Fa(),{project:n,stage:o}=await qa(e,{baseUrl:r,apiKey:t}),a=Ba(e),s=Number(E(e,"--limit")??E(e,"-n")??100),i=we(e,"--json"),c=new AbortController,u=()=>c.abort();process.on("SIGINT",u),console.log(`Logs for ${n}/${o} [${a}+]`+Wa(a)+` (backfill ${s}) — Ctrl+C to stop`);try{for await(let d of Ur({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:s,minLevel:a,signal:c.signal}))if(i)console.log(JSON.stringify(d));else console.log(Va(d))}catch(d){if(!c.signal.aborted)console.error(d instanceof Error?d.message:String(d)),process.exitCode=1}finally{process.off("SIGINT",u)}}async function oS(e){let[t,r]=Rt(e);if(!t){console.log(Ee("agent"));return}if(t==="list"||t==="ls"){await aS(e);return}if(t==="get"){await sS(r,e);return}throw Error(`Unknown agent subcommand: ${t}
|
|
308
316
|
|
|
309
|
-
${
|
|
317
|
+
${Ee("agent")}`)}async function Bf(e){let{manifest:t,config:r}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),n=await ke(E(e,"--base-url")??r.baseUrl),o=await new ae({baseUrl:n.baseUrl,token:n.token}).getManifest(t.project,t.stage),a=t.resources.filter((s)=>s.kind==="agent").map((s)=>({name:s.name,config:s.config??{},agentId:o?.ids.agents[s.name]}));return{manifest:t,agents:a}}async function aS(e){let{manifest:t,agents:r}=await Bf(e);if(r.length===0){console.log(`No agents declared in ${t.project}/${t.stage}.`);return}console.log(`Agents in ${t.project}/${t.stage}:`);for(let n of r){let o=qf(n.config),a=n.config.publicAccess===!0?"public":"private",s=n.agentId?n.agentId:"not deployed";console.log(` ${n.name} [${a}] ${o} (${s})`)}}async function sS(e,t){if(!e)throw Error(`Missing agent name.
|
|
310
318
|
|
|
311
|
-
${
|
|
319
|
+
${Ee("agent")}`);let{manifest:r,agents:n}=await Bf(t),o=n.find((f)=>f.name===e);if(!o)throw Error(`Unknown local agent: ${e}`);let a=o.config,s=typeof a.sandbox==="string"?a.sandbox:void 0,i=Array.isArray(a.workspaces)?a.workspaces.map((f)=>typeof f==="string"?f:f.name).filter(Boolean):[],c=dt(a.tools)?Object.keys(a.tools):[],u=dt(a.channels)?Object.keys(a.channels):[],d=dt(a.subagent)&&Array.isArray(a.subagent.allowed)?a.subagent.allowed.map((f)=>typeof f==="string"?f:f.name).filter(Boolean):[],p=dt(a.hooks)&&Array.isArray(a.hooks.webhooks)?a.hooks.webhooks.filter(dt):[];if(console.log(`Agent: ${o.name}`),console.log(` Project/Stage: ${r.project}/${r.stage}`),console.log(` Deployed id: ${o.agentId??"not deployed"}`),console.log(` Public access: ${a.publicAccess===!0?"public (SSE/WebSocket enabled)":"private (secured by default)"}`),console.log(` Model: ${qf(a)}`),console.log(` Sandbox: ${s??"—"}`),console.log(` Workspaces: ${i.length>0?i.join(", "):"—"}`),console.log(` Tools: ${c.length>0?c.join(", "):"—"}`),console.log(` Subagents: ${d.length>0?d.join(", "):"—"}`),console.log(` Channels: ${u.length>0?u.join(", "):"—"}`),p.length>0)console.log(" Webhooks:"),p.forEach((f,m)=>{let y=Array.isArray(f.events)&&f.events.length>0?f.events.join(", "):"all events",v=f.enabled===!1?"disabled":"enabled";console.log(` [${m}] ${v} → ${f.url??"—"} (${y})`)})}function qf(e){let t=dt(e.model)?e.model:{},r=typeof t.provider==="string"?t.provider:void 0,n=typeof t.modelId==="string"?t.modelId:void 0;if(r&&n)return`${r}/${n}`;return n??r??"unconfigured model"}async function iS(e){let[t,...r]=Rt(e);if(!t)throw Error(`Missing agent name.
|
|
312
320
|
|
|
313
|
-
${
|
|
314
|
-
`+
|
|
321
|
+
${Ee("run")}`);let n=r.join(" "),o=Boolean(process.stdin.isTTY&&process.stdout.isTTY);if(!o&&!n)throw Error("Usage: broods run <agent> <prompt>. Omit the prompt for an interactive session, which requires a TTY.");let{manifest:a,config:s}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),i=await ke(E(e,"--base-url")??s.baseUrl),c=a.resources.find((y)=>y.kind==="agent"&&y.name===t);if(!c)throw Error(`Unknown local agent: ${t}`);let d=(await new ae({baseUrl:i.baseUrl,token:i.token}).getManifest(a.project,a.stage))?.ids.agents[t];if(!d)throw Error(`Agent ${t} is not synced yet. Run broods dev --once or broods deploy first.`);let p=await new ae({baseUrl:i.baseUrl,token:i.token}).getRuntimeKey(a.project,a.stage).catch(()=>null);if(p?.apiKey)await Kt("BROODS_API_KEY",p.apiKey);if(c.config.publicAccess!==!0)J(`⚠ Agent "${t}" does not set publicAccess: true. The public endpoint is secured by default; if the deployed agent has not enabled it, this run will be refused.`);let f=new Na({baseUrl:E(e,"--base-url")??process.env.BROODS_BASE_URL??process.env.BROODS_HOST??i.baseUrl,...p?.apiKey?{apiKey:p.apiKey}:{}}),m={kind:"agent",name:t,id:d,project:a.project,stage:a.stage,...p?.endpointId?{endpointId:p.endpointId}:{},...p?.projectSlug?{projectSlug:p.projectSlug}:{},...p?.stageSlug?{stageSlug:p.stageSlug}:{}};try{if(o){await hf({client:f,agent:m,...n?{prompt:n}:{}});return}await gf({client:f,agent:m,prompt:n})}catch(y){if((y instanceof Error?y.message:String(y)).includes("public_access_disabled"))throw Error(`Agent "${t}" is not publicly accessible (secured by default). Set publicAccess: true in its config and redeploy, or enable Public access in the dashboard.`);throw y}}async function $n(e,t,r){try{await st(e,t,{flag:r?"w":"wx"})}catch(n){if(n.code==="EEXIST")return;throw n}}async function Wf(){let e=H(process.cwd(),ce,".gitignore"),t=await Et(e),n=["_generated",".cache"].filter((a)=>!t.split(/\r?\n/).some((s)=>s.trim()===a));if(n.length===0)return;let o=t?t.trimEnd()+`
|
|
322
|
+
`+n.join(`
|
|
315
323
|
`)+`
|
|
316
|
-
`:
|
|
324
|
+
`:n.join(`
|
|
317
325
|
`)+`
|
|
318
|
-
`;await
|
|
319
|
-
`,"utf8")}async function
|
|
320
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],s=!1;for(let[u
|
|
326
|
+
`;await st(e,o,"utf8")}async function Ga(){let e=H(process.cwd(),"package.json"),t=await Et(e);if(!t)return;let r;try{r=JSON.parse(t)}catch{return}if(r.type)return;r.type="module",await st(e,JSON.stringify(r,null,2)+`
|
|
327
|
+
`,"utf8")}async function Ja(e){let t=H(process.cwd(),".env.local"),r=await Et(t),n=Vf(r),o={BROODS_DASHBOARD_URL:e.dashboardUrl,...e.baseUrl?{BROODS_BASE_URL:e.baseUrl}:{},BROODS_PROJECT:e.project,BROODS_STAGE:e.stage,BROODS_REGION:e.region},a=r?r.replace(/\n?$/,`
|
|
328
|
+
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],s=!1;for(let[c,u]of Object.entries(o)){if(n[c]!==void 0&&!e.force)continue;let d=a.findIndex((p)=>p.trim().startsWith(`${c}=`));if(d>=0)a[d]=`${c}=${Mn(u)}`;else a.push(`${c}=${Mn(u)}`);if(process.env[c]===void 0)process.env[c]=u;s=!0}if(!s&&r)return;let i=`${a.filter((c,u,d)=>!(c===""&&u===d.length-1)).join(`
|
|
321
329
|
`)}
|
|
322
|
-
`;await
|
|
323
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],a=
|
|
330
|
+
`;await st(t,i,"utf8")}async function Kt(e,t){let r=H(process.cwd(),".env.local"),n=await Et(r),o=n?n.replace(/\n?$/,`
|
|
331
|
+
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],a=o.findIndex((i)=>i.trim().startsWith(`${e}=`));if(a>=0)o[a]=`${e}=${Mn(t)}`;else o.push(`${e}=${Mn(t)}`);process.env[e]=t;let s=`${o.filter((i,c,u)=>!(i===""&&c===u.length-1)).join(`
|
|
324
332
|
`)}
|
|
325
|
-
`;await
|
|
333
|
+
`;await st(r,s,"utf8")}async function Et(e){try{return await Of(e,"utf8")}catch(t){if(t.code==="ENOENT")return"";throw t}}function Vf(e){let t={};for(let r of e.split(/\r?\n/)){let n=r.trim();if(!n||n.startsWith("#"))continue;let o=n.indexOf("=");if(o<=0)continue;t[n.slice(0,o).trim()]=n.slice(o+1).trim()}return t}function Mn(e){return JSON.stringify(e)}function Ht(e){return __(H(e)).replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")||"broods-app"}async function Af(){let e=H(process.cwd(),ce),t=[];await Ka(e,t);let r=ja("sha256");for(let n of t.sort())r.update(T_(e,n)),r.update("\x00"),r.update(await Of(n)),r.update("\x00");return r.digest("hex")}async function Ka(e,t){let r=await x_(e,{withFileTypes:!0});for(let n of r){let o=Pf(e,n.name);if(n.isDirectory()){if(n.name===Ce||n.name==="generated"||n.name===".cache")continue;await Ka(o,t);continue}if(n.isFile()&&(n.name.endsWith(".ts")||n.name.endsWith(".md")))t.push(o)}}function lS(e){return e.split(/[\\/]/).some((t)=>t===Ce||t==="generated"||t===".cache")}function Gf(){return`import { defineAgent, defineSandbox, env } from "broods";
|
|
326
334
|
|
|
327
335
|
// A Lambda sandbox: a fresh, ephemeral bash environment created per run.
|
|
328
336
|
export const lambdaSandbox = defineSandbox({
|
|
@@ -350,4 +358,4 @@ export const myAgent = defineAgent({
|
|
|
350
358
|
`+" // `broods run` can reach this agent. Off by default — secured: a\n"+` // private agent is only reachable via internal endpoints or channel webhooks.
|
|
351
359
|
publicAccess: true,
|
|
352
360
|
});
|
|
353
|
-
`}function
|
|
361
|
+
`}function cS(e,t){if(e==="status")throw Error("status was renamed to whoami. Run `broods whoami`.");if(t.includes("--env"))throw Error("--env was renamed to --stage. Pass --stage <name> instead.");te();let r=process.env.BROODS_ENVIRONMENT;if(r!==void 0&&process.env.BROODS_STAGE===void 0)throw Error(`BROODS_ENVIRONMENT was renamed to BROODS_STAGE. Rename the key in .env.local (it is currently set to "${r}").`)}$_().catch((e)=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});
|