@cline/llms 0.0.45 → 0.0.46
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/dist/catalog/catalog.generated.d.ts.map +1 -1
- package/dist/index.browser.js +1 -1
- package/dist/index.js +28 -28
- package/dist/models.js +26 -26
- package/dist/providers/routing/anthropic-compatible.d.ts.map +1 -1
- package/dist/providers/vendors/openai-compatible.d.ts.map +1 -1
- package/dist/providers/vendors/vertex.d.ts.map +1 -1
- package/dist/providers.js +27 -27
- package/package.json +2 -2
package/dist/providers.js
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
import{createRequire as Th}from"node:module";var Uh=Object.defineProperty;var Oh=(e)=>e;function Eh(e,t){this[e]=Oh.bind(null,t)}var fe=(e,t)=>{for(var n in t)Uh(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Eh.bind(t,n)})};var J=(e,t)=>()=>(e&&(t=e(e=0)),t);var it=Th(import.meta.url);var Dv={};fe(Dv,{zodToJsonSchema:()=>sv,xmlTagsRemoval:()=>iv,withResolvedClineBuildEnv:()=>Dw,validateWithZod:()=>fw,upsertWorkspaceInfo:()=>dS,truncateStr:()=>ov,truncateSplit:()=>lw,toAiSdkToolResultOutput:()=>nv,serializeAbortReason:()=>Rk,sanitizeSurrogates:()=>Q,sanitizeFileName:()=>uw,safeJsonStringify:()=>nw,safeJsonParse:()=>rw,resolveRootSessionId:()=>Qw,resolveReasoningEffortRatio:()=>rv,resolveReasoningBudgetFromRatio:()=>Zk,resolveHubCommandTimeoutMs:()=>bk,resolveHookSessionContext:()=>Vw,resolveEffectiveReasoningEffort:()=>Ak,resolveClineEnvironment:()=>cv,resolveClineBuildEnv:()=>xo,registerRemoteConfigSessionBlobUpload:()=>Kh,registerDisposable:()=>Hp,readRemoteConfigSessionBlobUploadMetadata:()=>hu,processWorkspaceInfo:()=>gw,prepareRemoteConfigRuntime:()=>dy,parseUserCommandEnvelope:()=>ev,parseRuntimeConfigExtensions:()=>sS,parseJsonStream:()=>iw,parseHookEventPayload:()=>gk,normalizeUserInput:()=>tv,normalizeSdkError:()=>fv,normalizePluginManifest:()=>Gp,noopBasicLogger:()=>Lk,maskSecret:()=>dw,isRuntimeConfigExtensionKind:()=>hv,isOAuthProviderId:()=>xv,isLikelyAuthError:()=>qS,isHubToolExecutorName:()=>_k,isHubDaemonProcess:()=>Fw,initVcr:()=>kI,hasRuntimeConfigExtension:()=>uS,getShellArgs:()=>sw,getDefaultShell:()=>ow,getDefaultHubCommandTimeoutMs:()=>Vp,getClineEnvironmentConfig:()=>zo,formatUserInputBlock:()=>Ok,formatUserCommandBlock:()=>Ek,formatUptime:()=>mw,formatMessagesForAiSdk:()=>So,formatHumanReadableDate:()=>cw,formatFileContentBlock:()=>qp,formatDisplayUserInput:()=>Pk,estimateTokens:()=>Io,emptyWorkspaceManifest:()=>lS,disposeAll:()=>tk,createTool:()=>QS,createSessionId:()=>rS,createRemoteConfigSessionMessagesArtifactUploader:()=>Qh,createContributionRegistry:()=>ok,createClineTelemetryServiceMetadata:()=>pv,createClineTelemetryServiceConfig:()=>Yw,clearRemoteConfigSessionBlobUpload:()=>Wh,captureSdkError:()=>En,buildSdkErrorProperties:()=>mv,buildRemoteConfigSessionBlobUploadMetadata:()=>Jh,buildClineSystemPrompt:()=>hw,augmentNodeCommandForDebug:()=>Aw,WorkspaceManifestSchema:()=>bv,WorkspaceInfoSchema:()=>yv,VertexSettingsSchema:()=>wp,VertexModelSchema:()=>kp,ToolCallRecordSchema:()=>Cp,ThinkingConfigSchema:()=>Ap,TeamTeammateSpecSchema:()=>vS,TeamTaskToolResultSchema:()=>ZS,TeamTaskListItemToolResultSchema:()=>kv,TeamTaskInputSchema:()=>_S,TeamStatusToolResultSchema:()=>AS,TeamStatusInputSchema:()=>yS,TeamSpawnTeammateInputSchema:()=>gS,TeamSimpleAgentStatusToolResultSchema:()=>JS,TeamShutdownTeammateInputSchema:()=>hS,TeamSendMessageToolResultSchema:()=>WS,TeamSendMessageInputSchema:()=>xS,TeamRunToolSummarySchema:()=>RS,TeamRunTaskToolResultSchema:()=>CS,TeamRunTaskInputSchema:()=>kS,TeamRunResultSummarySchema:()=>wv,TeamReviewOutcomeFragmentInputSchema:()=>PS,TeamReadMailboxInputSchema:()=>US,TeamOutcomeToolResultSchema:()=>MS,TeamOutcomeFragmentToolResultSchema:()=>XS,TeamMissionLogToolResultSchema:()=>BS,TeamMissionLogInputSchema:()=>OS,TeamMessageType:()=>Sv,TeamMailboxMessageToolResultSchema:()=>LS,TeamListRunsInputSchema:()=>wS,TeamListOutcomesInputSchema:()=>DS,TeamFinalizeOutcomeToolResultSchema:()=>YS,TeamFinalizeOutcomeInputSchema:()=>NS,TeamCreateOutcomeToolResultSchema:()=>FS,TeamCreateOutcomeInputSchema:()=>TS,TeamCleanupToolResultSchema:()=>GS,TeamCleanupInputSchema:()=>ES,TeamCancelRunToolResultSchema:()=>KS,TeamCancelRunInputSchema:()=>SS,TeamBroadcastToolResultSchema:()=>HS,TeamBroadcastInputSchema:()=>zS,TeamAwaitRunsInputSchema:()=>IS,TeamAttachOutcomeFragmentInputSchema:()=>jS,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>$S,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>fS,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>mS,TEAM_PROGRESS_EVENT_TYPE:()=>Iw,TEAM_LIFECYCLE_EVENT_TYPE:()=>xw,TEAM_AWAIT_TIMEOUT_MS:()=>cS,SESSION_STATUS_VALUES:()=>aS,SDK_ERROR_TELEMETRY_EVENT:()=>Jw,S3AccessKeySettingsSchema:()=>Ui,RemoteMCPServerSchema:()=>Op,RemoteConfigSchema:()=>B_,ReasoningEffortSchema:()=>Mp,RUNTIME_CONFIG_EXTENSION_KINDS:()=>Uo,REMOTE_URI_SCHEME:()=>qh,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>fu,REASONING_EFFORT_RATIOS:()=>jt,ProviderProtocolSchema:()=>ww,ProviderClientSchema:()=>Sw,ProviderCapabilitySchema:()=>kw,PromptUploadingSchema:()=>Ep,PLUGIN_FILE_EXTENSIONS:()=>sk,OpenAiCompatibleSchema:()=>gp,OpenAiCompatibleModelSchema:()=>vp,OAUTH_PROVIDER_IDS:()=>Iv,ModelStatusSchema:()=>Np,ModelPricingSchema:()=>Dp,ModelMetadataSchema:()=>Zp,ModelInfoSchema:()=>ko,ModelCapabilitySchema:()=>Pp,LiteLLMSchema:()=>Ip,LiteLLMModelSchema:()=>Sp,HookEventPayloadSchema:()=>Yp,HookEventNameSchema:()=>Xp,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>Uk,HUB_TOOL_EXECUTOR_NAMES:()=>Qp,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>kk,HUB_MISTAKE_LIMIT_CAPABILITY:()=>zk,HUB_HOOK_CAPABILITY_PREFIX:()=>Sk,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>hk,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>wk,HUB_COMPACTION_CAPABILITY:()=>Ik,HUB_COMMAND_SLOW_LOG_MS:()=>yk,HUB_CHECKPOINT_CAPABILITY:()=>xk,GlobalInstructionsFileSchema:()=>mr,EnterpriseTelemetrySchema:()=>Tp,EMPTY_CONTENT_TEXT:()=>fr,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>gv,DEFAULT_REQUEST_HEADERS:()=>Ck,DEFAULT_REASONING_EFFORT:()=>Dk,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>$v,DEFAULT_CLINE_ENVIRONMENT:()=>Rw,ContributionRegistry:()=>wo,ConnectorHookEventSchema:()=>ek,ConnectorHookEventNameSchema:()=>Fp,ConnectorEventContextSchema:()=>Kp,ConnectorEventActorSchema:()=>Jp,ConnectorAuthorizationRequestSchema:()=>Q_,ConnectorAuthorizationDecisionSchema:()=>q_,ClineSettingsSchema:()=>_p,ClineModelSchema:()=>$p,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>Mw,CLINE_HUB_PORT:()=>yw,CLINE_HUB_DEV_PORT:()=>bw,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>Cw,CLINE_ENVIRONMENT_ENV:()=>Zw,CLINE_ENVIRONMENTS:()=>hr,CLINE_DEFAULT_RPC_PORT:()=>$w,CLINE_DEFAULT_RPC_ADDRESS:()=>_w,CLINE_DEBUG_PORT_BASE_ENV:()=>lv,CLINE_DEBUG_HOST_ENV:()=>uv,CLINE_BUILD_ENV_ENV:()=>Li,AwsBedrockSettingsSchema:()=>bp,AwsBedrockModelSchema:()=>hp,AwsBedrockCustomModelSchema:()=>yp,ApiFormatSchema:()=>jp,ApiFormat:()=>X_,AnthropicSchema:()=>zp,AnthropicModelSchema:()=>xp,AllowedMCPServerSchema:()=>Up,AgentUsageSchema:()=>Lp,AgentResultSchema:()=>Y_,AgentFinishReasonSchema:()=>Rp,AgentConfigSchema:()=>V_,AUTH_ERROR_PATTERNS:()=>zv,APIKeySchema:()=>G_});import be from"node:fs/promises";import rr from"node:path";import{createHmac as Zh}from"node:crypto";import{basename as Ch}from"node:path";import nt from"node:path";import{basename as zw}from"node:path";import{webcrypto as uu}from"node:crypto";import{existsSync as eI,mkdirSync as tI,readFileSync as iI,writeFileSync as nI}from"node:fs";import{dirname as rI,resolve as aI}from"node:path";function Dh(e,t){this[e]=Nh.bind(null,t)}async function Ah(e){try{return await be.access(e),!0}catch{return!1}}class du{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await be.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await be.mkdir(rr.dirname(this.filePath),{recursive:!0}),await be.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await be.rm(this.filePath,{force:!0})}}class cu{async writeText(e,t){await be.mkdir(rr.dirname(e),{recursive:!0}),await be.writeFile(e,t,"utf8")}async remove(e){await be.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await Ah(e))return;let t=await be.readdir(e);await Promise.all(t.map((n)=>be.rm(rr.join(e,n),{recursive:!0,force:!0})))}}class $r{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:r,region:i,cache:a,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=r,this.region=i,this.cache=a||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:a,headers:o,body:s}=e;if(t=Object.assign({method:i,url:a,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=a}let n=new mu(Object.assign({url:e.toString()},t,this,t&&t.aws)),r=Object.assign({},t,await n.sign());delete r.aws;try{return new Request(r.url.toString(),r)}catch(i){if(i instanceof TypeError)return new Request(r.url.toString(),Object.assign({duplex:"half"},r));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let r=fetch(await this.sign(e,t));if(n===this.retries)return r;let i=await r;if(i.status<500&&i.status!==429)return i;await new Promise((a)=>setTimeout(a,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class mu{constructor({method:e,url:t,headers:n,body:r,accessKeyId:i,secretAccessKey:a,sessionToken:o,service:s,region:d,cache:l,datetime:c,signQuery:f,appendSessionToken:v,allHeaders:p,singleEncode:y}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(a==null)throw TypeError("secretAccessKey is a required option");this.method=e||(r?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=r,this.accessKeyId=i,this.secretAccessKey=a,this.sessionToken=o;let I,j;if(!s||!d)[I,j]=Mh(this.url,this.headers);if(this.service=s||I||"",this.region=d||j||"us-east-1",this.cache=l||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=f,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let U=this.signQuery?this.url.searchParams:this.headers;if(U.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)U.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((w)=>p||!Lh.has(w)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((w)=>w+":"+(w==="host"?this.url.host:(this.headers.get(w)||"").replace(/\s+/g," "))).join(`
|
|
2
|
-
`),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery){if(this.service==="s3"&&!U.has("X-Amz-Expires"))U.set("X-Amz-Expires","86400");U.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),U.set("X-Amz-Credential",this.accessKeyId+"/"+this.credentialString),U.set("X-Amz-SignedHeaders",this.signedHeaders)}if(this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch(w){this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");if(!y)this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/");this.encodedPath
|
|
1
|
+
import{createRequire as Th}from"node:module";var Uh=Object.defineProperty;var Oh=(e)=>e;function Eh(e,t){this[e]=Oh.bind(null,t)}var fe=(e,t)=>{for(var n in t)Uh(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Eh.bind(t,n)})};var F=(e,t)=>()=>(e&&(t=e(e=0)),t);var it=Th(import.meta.url);var Nv={};fe(Nv,{zodToJsonSchema:()=>uv,xmlTagsRemoval:()=>nv,withResolvedClineBuildEnv:()=>Dw,validateWithZod:()=>fw,upsertWorkspaceInfo:()=>dS,truncateStr:()=>sv,truncateSplit:()=>lw,toAiSdkToolResultOutput:()=>rv,serializeAbortReason:()=>Rk,sanitizeSurrogates:()=>Q,sanitizeFileName:()=>uw,safeJsonStringify:()=>nw,safeJsonParse:()=>rw,resolveRootSessionId:()=>Qw,resolveReasoningEffortRatio:()=>av,resolveReasoningBudgetFromRatio:()=>Zk,resolveHubCommandTimeoutMs:()=>bk,resolveHookSessionContext:()=>Vw,resolveEffectiveReasoningEffort:()=>Ak,resolveClineEnvironment:()=>mv,resolveClineBuildEnv:()=>zo,registerRemoteConfigSessionBlobUpload:()=>Kh,registerDisposable:()=>Bp,readRemoteConfigSessionBlobUploadMetadata:()=>yu,processWorkspaceInfo:()=>gw,prepareRemoteConfigRuntime:()=>dy,parseUserCommandEnvelope:()=>tv,parseRuntimeConfigExtensions:()=>sS,parseJsonStream:()=>iw,parseHookEventPayload:()=>gk,normalizeUserInput:()=>iv,normalizeSdkError:()=>pv,normalizePluginManifest:()=>Xp,noopBasicLogger:()=>Lk,maskSecret:()=>dw,isRuntimeConfigExtensionKind:()=>yv,isLikelyAuthError:()=>qS,isHubToolExecutorName:()=>_k,isHubDaemonProcess:()=>Jw,initVcr:()=>kI,hasRuntimeConfigExtension:()=>uS,getShellArgs:()=>sw,getDefaultShell:()=>ow,getDefaultHubCommandTimeoutMs:()=>Qp,getClineEnvironmentConfig:()=>Uo,formatUserInputBlock:()=>Ok,formatUserCommandBlock:()=>Ek,formatUptime:()=>mw,formatMessagesForAiSdk:()=>Io,formatHumanReadableDate:()=>cw,formatFileContentBlock:()=>ev,formatDisplayUserInput:()=>Pk,estimateTokens:()=>xo,emptyWorkspaceManifest:()=>lS,disposeAll:()=>tk,createTool:()=>QS,createSessionId:()=>rS,createRemoteConfigSessionMessagesArtifactUploader:()=>Qh,createContributionRegistry:()=>ok,createClineTelemetryServiceMetadata:()=>vv,createClineTelemetryServiceConfig:()=>Yw,clearRemoteConfigSessionBlobUpload:()=>Wh,captureSdkError:()=>En,buildSdkErrorProperties:()=>fv,buildRemoteConfigSessionBlobUploadMetadata:()=>Fh,buildClineSystemPrompt:()=>hw,augmentNodeCommandForDebug:()=>Aw,WorkspaceManifestSchema:()=>$v,WorkspaceInfoSchema:()=>bv,VertexSettingsSchema:()=>Sp,VertexModelSchema:()=>wp,ToolCallRecordSchema:()=>Rp,ThinkingConfigSchema:()=>Zp,TeamTeammateSpecSchema:()=>vS,TeamTaskToolResultSchema:()=>ZS,TeamTaskListItemToolResultSchema:()=>wv,TeamTaskInputSchema:()=>_S,TeamStatusToolResultSchema:()=>AS,TeamStatusInputSchema:()=>yS,TeamSpawnTeammateInputSchema:()=>gS,TeamSimpleAgentStatusToolResultSchema:()=>FS,TeamShutdownTeammateInputSchema:()=>hS,TeamSendMessageToolResultSchema:()=>WS,TeamSendMessageInputSchema:()=>xS,TeamRunToolSummarySchema:()=>RS,TeamRunTaskToolResultSchema:()=>CS,TeamRunTaskInputSchema:()=>kS,TeamRunResultSummarySchema:()=>Sv,TeamReviewOutcomeFragmentInputSchema:()=>PS,TeamReadMailboxInputSchema:()=>US,TeamOutcomeToolResultSchema:()=>MS,TeamOutcomeFragmentToolResultSchema:()=>XS,TeamMissionLogToolResultSchema:()=>BS,TeamMissionLogInputSchema:()=>OS,TeamMessageType:()=>Iv,TeamMailboxMessageToolResultSchema:()=>LS,TeamListRunsInputSchema:()=>wS,TeamListOutcomesInputSchema:()=>DS,TeamFinalizeOutcomeToolResultSchema:()=>YS,TeamFinalizeOutcomeInputSchema:()=>NS,TeamCreateOutcomeToolResultSchema:()=>JS,TeamCreateOutcomeInputSchema:()=>TS,TeamCleanupToolResultSchema:()=>GS,TeamCleanupInputSchema:()=>ES,TeamCancelRunToolResultSchema:()=>KS,TeamCancelRunInputSchema:()=>SS,TeamBroadcastToolResultSchema:()=>HS,TeamBroadcastInputSchema:()=>zS,TeamAwaitRunsInputSchema:()=>IS,TeamAttachOutcomeFragmentInputSchema:()=>jS,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>$S,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>fS,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>mS,TEAM_PROGRESS_EVENT_TYPE:()=>Iw,TEAM_LIFECYCLE_EVENT_TYPE:()=>xw,TEAM_AWAIT_TIMEOUT_MS:()=>cS,SESSION_STATUS_VALUES:()=>aS,SDK_ERROR_TELEMETRY_EVENT:()=>Fw,S3AccessKeySettingsSchema:()=>Ui,RemoteMCPServerSchema:()=>Ep,RemoteConfigSchema:()=>B_,ReasoningEffortSchema:()=>Jp,RUNTIME_CONFIG_EXTENSION_KINDS:()=>Oo,REMOTE_URI_SCHEME:()=>qh,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>pu,REASONING_EFFORT_RATIOS:()=>jt,ProviderProtocolSchema:()=>ww,ProviderClientSchema:()=>Sw,ProviderCapabilitySchema:()=>kw,PromptUploadingSchema:()=>Tp,PLUGIN_FILE_EXTENSIONS:()=>sk,OpenAiCompatibleSchema:()=>hp,OpenAiCompatibleModelSchema:()=>gp,ModelStatusSchema:()=>Dp,ModelPricingSchema:()=>Ap,ModelMetadataSchema:()=>Cp,ModelInfoSchema:()=>wo,ModelCapabilitySchema:()=>Np,LiteLLMSchema:()=>xp,LiteLLMModelSchema:()=>Ip,HookEventPayloadSchema:()=>Vp,HookEventNameSchema:()=>Yp,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>Uk,HUB_TOOL_EXECUTOR_NAMES:()=>qp,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>kk,HUB_MISTAKE_LIMIT_CAPABILITY:()=>zk,HUB_HOOK_CAPABILITY_PREFIX:()=>Sk,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>hk,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>wk,HUB_COMPACTION_CAPABILITY:()=>Ik,HUB_COMMAND_SLOW_LOG_MS:()=>yk,HUB_CHECKPOINT_CAPABILITY:()=>xk,GlobalInstructionsFileSchema:()=>fr,EnterpriseTelemetrySchema:()=>jp,EMPTY_CONTENT_TEXT:()=>pr,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>hv,DEFAULT_REQUEST_HEADERS:()=>Ck,DEFAULT_REASONING_EFFORT:()=>Dk,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>_v,DEFAULT_CLINE_ENVIRONMENT:()=>Rw,ContributionRegistry:()=>So,ConnectorHookEventSchema:()=>ek,ConnectorHookEventNameSchema:()=>Fp,ConnectorEventContextSchema:()=>Wp,ConnectorEventActorSchema:()=>Kp,ConnectorAuthorizationRequestSchema:()=>Q_,ConnectorAuthorizationDecisionSchema:()=>q_,ClineSettingsSchema:()=>kp,ClineModelSchema:()=>_p,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>Mw,CLINE_HUB_PORT:()=>yw,CLINE_HUB_DEV_PORT:()=>bw,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>Cw,CLINE_ENVIRONMENT_ENV:()=>Zw,CLINE_ENVIRONMENTS:()=>yr,CLINE_DEFAULT_RPC_PORT:()=>$w,CLINE_DEFAULT_RPC_ADDRESS:()=>_w,CLINE_DEBUG_PORT_BASE_ENV:()=>dv,CLINE_DEBUG_HOST_ENV:()=>lv,CLINE_BUILD_ENV_ENV:()=>Li,AwsBedrockSettingsSchema:()=>$p,AwsBedrockModelSchema:()=>yp,AwsBedrockCustomModelSchema:()=>bp,ApiFormatSchema:()=>Pp,ApiFormat:()=>X_,AnthropicSchema:()=>Up,AnthropicModelSchema:()=>zp,AllowedMCPServerSchema:()=>Op,AgentUsageSchema:()=>Mp,AgentResultSchema:()=>Y_,AgentFinishReasonSchema:()=>Lp,AgentConfigSchema:()=>V_,AUTH_ERROR_PATTERNS:()=>xv,APIKeySchema:()=>G_});import be from"node:fs/promises";import ar from"node:path";import{createHmac as Zh}from"node:crypto";import{basename as Ch}from"node:path";import nt from"node:path";import{basename as zw}from"node:path";import{webcrypto as lu}from"node:crypto";import{existsSync as eI,mkdirSync as tI,readFileSync as iI,writeFileSync as nI}from"node:fs";import{dirname as rI,resolve as aI}from"node:path";function Dh(e,t){this[e]=Nh.bind(null,t)}async function Ah(e){try{return await be.access(e),!0}catch{return!1}}class cu{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await be.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await be.mkdir(ar.dirname(this.filePath),{recursive:!0}),await be.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await be.rm(this.filePath,{force:!0})}}class mu{async writeText(e,t){await be.mkdir(ar.dirname(e),{recursive:!0}),await be.writeFile(e,t,"utf8")}async remove(e){await be.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await Ah(e))return;let t=await be.readdir(e);await Promise.all(t.map((n)=>be.rm(ar.join(e,n),{recursive:!0,force:!0})))}}class _r{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:r,region:i,cache:a,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=r,this.region=i,this.cache=a||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:a,headers:o,body:s}=e;if(t=Object.assign({method:i,url:a,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=a}let n=new fu(Object.assign({url:e.toString()},t,this,t&&t.aws)),r=Object.assign({},t,await n.sign());delete r.aws;try{return new Request(r.url.toString(),r)}catch(i){if(i instanceof TypeError)return new Request(r.url.toString(),Object.assign({duplex:"half"},r));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let r=fetch(await this.sign(e,t));if(n===this.retries)return r;let i=await r;if(i.status<500&&i.status!==429)return i;await new Promise((a)=>setTimeout(a,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class fu{constructor({method:e,url:t,headers:n,body:r,accessKeyId:i,secretAccessKey:a,sessionToken:o,service:s,region:d,cache:l,datetime:c,signQuery:f,appendSessionToken:v,allHeaders:p,singleEncode:y}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(a==null)throw TypeError("secretAccessKey is a required option");this.method=e||(r?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=r,this.accessKeyId=i,this.secretAccessKey=a,this.sessionToken=o;let I,j;if(!s||!d)[I,j]=Mh(this.url,this.headers);if(this.service=s||I||"",this.region=d||j||"us-east-1",this.cache=l||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=f,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let U=this.signQuery?this.url.searchParams:this.headers;if(U.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)U.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((w)=>p||!Lh.has(w)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((w)=>w+":"+(w==="host"?this.url.host:(this.headers.get(w)||"").replace(/\s+/g," "))).join(`
|
|
2
|
+
`),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery){if(this.service==="s3"&&!U.has("X-Amz-Expires"))U.set("X-Amz-Expires","86400");U.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),U.set("X-Amz-Credential",this.accessKeyId+"/"+this.credentialString),U.set("X-Amz-SignedHeaders",this.signedHeaders)}if(this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch(w){this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");if(!y)this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/");this.encodedPath=_s(this.encodedPath);let C=new Set;this.encodedSearch=[...this.url.searchParams].filter(([w])=>{if(!w)return!1;if(this.service==="s3"){if(C.has(w))return!1;C.add(w)}return!0}).map((w)=>w.map((Z)=>_s(encodeURIComponent(Z)))).sort(([w,Z],[Y,ye])=>w<Y?-1:w>Y?1:Z<ye?-1:Z>ye?1:0).map((w)=>w.join("=")).join("&")}async sign(){if(this.signQuery){if(this.url.searchParams.set("X-Amz-Signature",await this.signature()),this.sessionToken&&this.appendSessionToken)this.url.searchParams.set("X-Amz-Security-Token",this.sessionToken)}else this.headers.set("Authorization",await this.authHeader());return{method:this.method,url:this.url,headers:this.headers,body:this.body}}async authHeader(){return["AWS4-HMAC-SHA256 Credential="+this.accessKeyId+"/"+this.credentialString,"SignedHeaders="+this.signedHeaders,"Signature="+await this.signature()].join(", ")}async signature(){let e=this.datetime.slice(0,8),t=[this.secretAccessKey,e,this.region,this.service].join(),n=this.cache.get(t);if(!n){let r=await Ut("AWS4"+this.secretAccessKey,e),i=await Ut(r,this.region),a=await Ut(i,this.service);n=await Ut(a,"aws4_request"),this.cache.set(t,n)}return er(await Ut(n,await this.stringToSign()))}async stringToSign(){return["AWS4-HMAC-SHA256",this.datetime,this.credentialString,er(await bs(await this.canonicalString()))].join(`
|
|
3
3
|
`)}async canonicalString(){return[this.method.toUpperCase(),this.encodedPath,this.encodedSearch,this.canonicalHeaders+`
|
|
4
4
|
`,this.signedHeaders,await this.hexBodyHash()].join(`
|
|
5
|
-
`)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256")||(this.service==="s3"&&this.signQuery?"UNSIGNED-PAYLOAD":null);if(e==null){if(this.body&&typeof this.body!=="string"&&!("byteLength"in this.body))throw Error("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=
|
|
5
|
+
`)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256")||(this.service==="s3"&&this.signQuery?"UNSIGNED-PAYLOAD":null);if(e==null){if(this.body&&typeof this.body!=="string"&&!("byteLength"in this.body))throw Error("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=er(await bs(this.body||""))}return e}}async function Ut(e,t){let n=await crypto.subtle.importKey("raw",typeof e==="string"?or.encode(e):e,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return crypto.subtle.sign("HMAC",n,or.encode(t))}async function bs(e){return crypto.subtle.digest("SHA-256",typeof e==="string"?or.encode(e):e)}function er(e){let t=new Uint8Array(e),n="";for(let r=0;r<t.length;r++){let i=t[r];n+=$s[i>>>4&15],n+=$s[i&15]}return n}function _s(e){return e.replace(/[!'()*]/g,(t)=>"%"+t.charCodeAt(0).toString(16).toUpperCase())}function Mh(e,t){let{hostname:n,pathname:r}=e;if(n.endsWith(".on.aws")){let s=n.match(/^[^.]{1,63}\.lambda-url\.([^.]{1,63})\.on\.aws$/);return s!=null?["lambda",s[1]||""]:["",""]}if(n.endsWith(".r2.cloudflarestorage.com"))return["s3","auto"];if(n.endsWith(".backblazeb2.com")){let s=n.match(/^(?:[^.]{1,63}\.)?s3\.([^.]{1,63})\.backblazeb2\.com$/);return s!=null?["s3",s[1]||""]:["",""]}let i=n.replace("dualstack.","").match(/([^.]{1,63})\.(?:([^.]{0,63})\.)?amazonaws\.com(?:\.cn)?$/),a=i&&i[1]||"",o=i&&i[2];if(o==="us-gov")o="us-gov-west-1";else if(o==="s3"||o==="s3-accelerate")o="us-east-1",a="s3";else if(a==="iot")if(n.startsWith("iot."))a="execute-api";else if(n.startsWith("data.jobs.iot."))a="iot-jobs-data";else a=r==="/mqtt"?"iotdevicegateway":"iotdata";else if(a==="autoscaling"){let s=(t.get("X-Amz-Target")||"").split(".")[0];if(s==="AnyScaleFrontendService")a="application-autoscaling";else if(s==="AnyScaleScalingPlannerFrontendService")a="autoscaling-plans"}else if(o==null&&a.startsWith("s3-"))o=a.slice(3).replace(/^fips-|^external-1/,""),a="s3";else if(a.endsWith("-fips"))a=a.slice(0,-5);else if(o&&/-\d$/.test(a)&&!/-\d$/.test(o))[a,o]=[o,a];return[Rh[a]||a,o||""]}function tr(e,t){return{adapterType:e,accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,region:t.region,bucket:t.bucket,endpoint:t.endpoint,accountId:t.accountId}}function vu(e){return{adapterType:e.adapterType,bucket:e.bucket,region:e.region,endpoint:e.endpoint,accountId:e.accountId}}function Jh(e){if(!e||e.enabled!==!0)return;if(e.type==="s3_access_keys"&&e.s3AccessSettings)return tr("s3",e.s3AccessSettings);if(e.type==="r2_access_keys"&&e.r2AccessSettings)return tr("r2",e.r2AccessSettings);if(e.type==="azure_access_keys"&&e.azureAccessSettings)return tr("azure",e.azureAccessSettings);return}function gu(e){return Jh(e?.enterpriseTelemetry?.promptUploading)}function Fh(e,t){let n=gu(e);if(!n)return;return{version:1,storage:vu(n),userDistinctId:t}}function Kh(e,t,n){let r=gu(t);if(!r){Ei.delete(e);return}return Ei.set(e,r),{version:1,storage:vu(r),userDistinctId:n}}function Wh(e){Ei.delete(e)}function hu(e,t,n){let r=`${t}/${n}`;return{async write(i,a){let o=await e.fetch(`${r}/${i}`,{method:"PUT",body:a,headers:{"Content-Type":"application/json; charset=utf-8"}});if(!o.ok)throw Error(`Failed to write ${i}: ${o.status}`)}}}function Hh(e){let{bucket:t,accessKeyId:n,secretAccessKey:r}=e;if(!t||!n||!r)return;let i=e.region||"us-east-1",a=e.endpoint||`https://s3.${i}.amazonaws.com`;return hu(new _r({region:i,accessKeyId:n,secretAccessKey:r}),a,t)}function Bh(e){let{accountId:t,endpoint:n,bucket:r,accessKeyId:i,secretAccessKey:a}=e;if(!n&&!t||!r||!i||!a)return;return hu(new _r({accessKeyId:i,secretAccessKey:a}),e.endpoint??`https://${t}.r2.cloudflarestorage.com`,r)}function Gh(e,t,n,r,i){let a=i["Content-Length"]||"",o=i["Content-Type"]||"",s=Object.entries(i).filter(([v])=>v.toLowerCase().startsWith("x-ms-")).sort(([v],[p])=>v.toLowerCase().localeCompare(p.toLowerCase())).map(([v,p])=>`${v.toLowerCase()}:${p}`).join(`
|
|
6
6
|
`),d=`/${e}${r}`,l=[n,"","",a,"",o,"","","","","","",s,d].join(`
|
|
7
|
-
`),c=Buffer.from(t,"base64"),f=Zh("sha256",c).update(l,"utf8").digest("base64");return`SharedKey ${e}:${f}`}function Xh(e){let{accessKeyId:t,secretAccessKey:n,bucket:r}=e;if(!t||!n||!r)return;let i=e.endpoint||`https://${t}.blob.core.windows.net`;return{async write(a,o){let s=`/${r}/${a}`,d=new Date().toUTCString(),l=Buffer.from(o,"utf8"),c={"x-ms-date":d,"x-ms-version":"2024-11-04","x-ms-blob-type":"BlockBlob","Content-Type":"application/json; charset=utf-8","Content-Length":l.byteLength.toString()};c.Authorization=Gh(t,n,"PUT",s,c);let f=await fetch(`${i}${s}`,{method:"PUT",body:l,headers:c});if(!f.ok){let v=await f.text().catch(()=>"");throw Error(`Failed to write ${a}: ${f.status} ${v}`.trim())}}}}function Yh(e){if(e.adapterType==="s3")return Hh(e);if(e.adapterType==="r2")return Bh(e);if(e.adapterType==="azure")return Xh(e);return}function
|
|
7
|
+
`),c=Buffer.from(t,"base64"),f=Zh("sha256",c).update(l,"utf8").digest("base64");return`SharedKey ${e}:${f}`}function Xh(e){let{accessKeyId:t,secretAccessKey:n,bucket:r}=e;if(!t||!n||!r)return;let i=e.endpoint||`https://${t}.blob.core.windows.net`;return{async write(a,o){let s=`/${r}/${a}`,d=new Date().toUTCString(),l=Buffer.from(o,"utf8"),c={"x-ms-date":d,"x-ms-version":"2024-11-04","x-ms-blob-type":"BlockBlob","Content-Type":"application/json; charset=utf-8","Content-Length":l.byteLength.toString()};c.Authorization=Gh(t,n,"PUT",s,c);let f=await fetch(`${i}${s}`,{method:"PUT",body:l,headers:c});if(!f.ok){let v=await f.text().catch(()=>"");throw Error(`Failed to write ${a}: ${f.status} ${v}`.trim())}}}}function Yh(e){if(e.adapterType==="s3")return Hh(e);if(e.adapterType==="r2")return Bh(e);if(e.adapterType==="azure")return Xh(e);return}function ks(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function yu(e){let t=e?.metadata?.[pu];if(!ks(t))return;let n=t.storage;if(!ks(n))return;let r=n.adapterType;if(r!=="s3"&&r!=="r2"&&r!=="azure")return;if(typeof n.bucket!=="string")return;return{version:1,storage:{adapterType:r,bucket:n.bucket,region:typeof n.region==="string"?n.region:void 0,endpoint:typeof n.endpoint==="string"?n.endpoint:void 0,accountId:typeof n.accountId==="string"?n.accountId:void 0},keyPrefix:typeof t.keyPrefix==="string"?t.keyPrefix:void 0,userDistinctId:typeof t.userDistinctId==="string"?t.userDistinctId:void 0}}function Vh(e,t,n){return["sessions",n.userDistinctId?.trim()||"unknown",e,t?.endsWith("messages.json")?"messages.json":Ch(t)].filter((r)=>Boolean(r?.trim())).join("/")}function Qh(){let e=new Map;return{async uploadMessagesFile({sessionId:t,path:n,contents:r,row:i}){let a=yu(i);if(!a)return;let o=Ei.get(t);if(!o)return;let s=JSON.stringify(o),d=e.get(s);if(!d){if(d=Yh(o),!d)return;e.set(s,d)}await d.write(Vh(t,n,a),r)}}}function ws(e,t,n){return{id:`remote-config:${e}:${n}:${t.name}`,name:t.name,kind:e,contents:t.contents,alwaysEnabled:t.alwaysEnabled}}function Ss(e){let t="",n=!1;for(let r of e.trim().toLowerCase()){let i=r.charCodeAt(0);if(i>=97&&i<=122||i>=48&&i<=57||r==="."||r==="_"||r==="-"){if(n&&t&&t[t.length-1]!=="-")t+="-";n=!1,t+=r}else n=!0;if(t.length>=80)break}while(t.endsWith("-"))t=t.slice(0,-1);while(t.startsWith("-"))t=t.slice(1);return t||"item"}function ey(e){let t=e?.globalRules?.map((r,i)=>ws("rule",r,`${i}`))??[],n=e?.globalWorkflows?.map((r,i)=>ws("workflow",r,`${i}`))??[];return[...t,...n]}function ty(e){return[...ey(e.remoteConfig),...e.managedInstructions??[]]}function iy(e){return e.map((t)=>{let n=`## ${t.name}`,r=t.alwaysEnabled?`_Always enabled_
|
|
8
8
|
`:"";return`${n}
|
|
9
9
|
|
|
10
10
|
${r}${t.contents.trim()}`}).join(`
|
|
11
11
|
|
|
12
|
-
`)}function tr(e,t){return e.filter((n)=>n.kind===t)}class yu{async materialize(e){let t=ty(e.bundle),n=tr(t,"rule"),r=tr(t,"workflow"),i=tr(t,"skill");await e.artifactStore.removeChildren(e.paths.workflowsPath),await e.artifactStore.removeChildren(e.paths.skillsPath);let a=[];if(n.length>0)await e.artifactStore.writeText(e.paths.rulesFilePath,iy(n)),a.push(...n.map((o)=>({kind:o.kind,filePath:e.paths.rulesFilePath,id:o.id,name:o.name})));else await e.artifactStore.remove(e.paths.rulesFilePath);for(let o of r){let s=`${e.paths.workflowsPath}/${ws(o.name.replace(/\.(md|markdown|txt)$/i,""))}.md`;await e.artifactStore.writeText(s,o.contents),a.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}for(let o of i){let s=`${e.paths.skillsPath}/${ws(o.name)}/SKILL.md`;await e.artifactStore.writeText(s,o.contents),a.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}return await e.artifactStore.writeText(e.paths.manifestPath,JSON.stringify({source:e.bundle.source,version:e.bundle.version,files:a},null,2)),{paths:e.paths,rulesFilePath:n.length>0?e.paths.rulesFilePath:void 0,files:a}}}function ry(e){let t=e.pluginName??ny,n=nt.join(e.workspacePath,".cline",t);return{pluginName:t,pluginPath:n,workflowsPath:nt.join(n,"workflows"),skillsPath:nt.join(n,"skills"),bundleCachePath:nt.join(n,"cache","bundle.json"),manifestPath:nt.join(n,"managed.json"),rulesFilePath:nt.join(n,"rules.md")}}function ay(e){return{workflowsDirectories:[e.workflowsPath],skillsDirectories:[e.skillsPath]}}function oy(e){if(!e)return;return{enabled:e.openTelemetryEnabled??!1,metricsExporter:e.openTelemetryMetricsExporter,logsExporter:e.openTelemetryLogsExporter,otlpProtocol:e.openTelemetryOtlpProtocol,otlpEndpoint:e.openTelemetryOtlpEndpoint,otlpHeaders:e.openTelemetryOtlpHeaders,otlpMetricsProtocol:e.openTelemetryOtlpMetricsProtocol,otlpMetricsEndpoint:e.openTelemetryOtlpMetricsEndpoint,otlpMetricsHeaders:e.openTelemetryOtlpMetricsHeaders,otlpLogsProtocol:e.openTelemetryOtlpLogsProtocol,otlpLogsEndpoint:e.openTelemetryOtlpLogsEndpoint,otlpLogsHeaders:e.openTelemetryOtlpLogsHeaders,metricExportInterval:e.openTelemetryMetricExportInterval,otlpInsecure:e.openTelemetryOtlpInsecure,logBatchSize:e.openTelemetryLogBatchSize,logBatchTimeout:e.openTelemetryLogBatchTimeout,logMaxQueueSize:e.openTelemetryLogMaxQueueSize}}function bu(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ue(e,t){let n=e[t];return typeof n==="string"?n:void 0}function Ss(e,t){let n=e[t];return typeof n==="boolean"?n:void 0}function wi(e,t){let n=e[t];return typeof n==="number"&&Number.isFinite(n)?n:void 0}function ir(e,t){let n=e[t];if(!bu(n))return;let r=Object.entries(n).filter((i)=>typeof i[1]==="string");return r.length>0?Object.fromEntries(r):void 0}function sy(e){if(!bu(e))return;let t={enabled:Ss(e,"enabled"),metricsExporter:Ue(e,"metricsExporter"),logsExporter:Ue(e,"logsExporter"),otlpProtocol:Ue(e,"otlpProtocol"),otlpEndpoint:Ue(e,"otlpEndpoint"),otlpHeaders:ir(e,"otlpHeaders"),otlpMetricsProtocol:Ue(e,"otlpMetricsProtocol"),otlpMetricsEndpoint:Ue(e,"otlpMetricsEndpoint"),otlpMetricsHeaders:ir(e,"otlpMetricsHeaders"),otlpLogsProtocol:Ue(e,"otlpLogsProtocol"),otlpLogsEndpoint:Ue(e,"otlpLogsEndpoint"),otlpLogsHeaders:ir(e,"otlpLogsHeaders"),metricExportInterval:wi(e,"metricExportInterval"),otlpInsecure:Ss(e,"otlpInsecure"),logBatchSize:wi(e,"logBatchSize"),logBatchTimeout:wi(e,"logBatchTimeout"),logMaxQueueSize:wi(e,"logMaxQueueSize")};return Object.values(t).some((n)=>n!==void 0)?t:void 0}class $u{name="remote-config";resolveTelemetry(e,t){return{...oy(e.remoteConfig),...sy(e.telemetry)}}}function _u(e){return e?.claims}function ku(e,t){if(!e)return[];if(t.claimsMapper)return t.claimsMapper.mapClaimsToRoles(e);return e.roles??[]}function uy(e,t){return{...e,metadata:{...e.metadata??{},paths:t}}}class wu{options;constructor(e){this.options=e}async sync(e){let t=await this.options.controlPlane.fetchBundle({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger});if(!t)throw Error("Remote config control plane returned no bundle");await this.options.bundleStore.write(t);let n=await this.options.materializer.materialize({bundle:t,paths:e.paths,artifactStore:this.options.artifactStore}),r=this.options.telemetryAdapter?await this.options.telemetryAdapter.resolveTelemetry(t,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger}):void 0,i=_u(t),a=ku(i,this.options);return{bundle:t,materialized:n,telemetry:r,roles:a,claims:i}}}function ly(e){let t=e?.name??"remote-config";return{name:t,manifest:{capabilities:["providers"]},async setup(n,r){n.registerProvider?.({name:t,description:"Remote-config managed runtime integration"}),await e?.setup?.(n,r)}}}async function dy(e){let t=ry({workspacePath:e.workspacePath,pluginName:e.pluginName}),n=e.bundleStore??new du(t.bundleCachePath),r=e.artifactStore??new cu,i=e.materializer??new yu,a=e.telemetryAdapter??new $u,o,s,d=[],l,c=!1,f=!1;if(e.controlPlane){let p=new wu({controlPlane:e.controlPlane,bundleStore:n,artifactStore:r,materializer:i,telemetryAdapter:a,claimsMapper:e.claimsMapper,logger:e.logger});try{let y=await p.sync({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,paths:t,signal:e.signal,now:e.now});o=y.bundle,s=y.telemetry,d=y.roles,l=y.claims,f=!0}catch(y){if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o)throw y}}else if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o&&e.requireBundle)throw Error("Remote config runtime preparation requires a bundle");if(o){let p=uy(o,t);if(await n.write(p),!f)await i.materialize({bundle:p,paths:t,artifactStore:r});l??=_u(p),d=d.length>0?d:ku(l,e),s??=await a.resolveTelemetry(p,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:e.logger}),o=p}let v=ay(t);return{pluginName:t.pluginName,pluginDefinition:ly({name:t.pluginName}),paths:t,bundle:o,telemetry:s,roles:d,claims:l,usedCachedBundle:c,workflowsDirectories:v.workflowsDirectories,skillsDirectories:v.skillsDirectories}}function m(e,t,n){function r(s,d){if(!s._zod)Object.defineProperty(s,"_zod",{value:{def:d,constr:o,traits:new Set},enumerable:!1});if(s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,d);let l=o.prototype,c=Object.keys(l);for(let f=0;f<c.length;f++){let v=c[f];if(!(v in s))s[v]=l[v].bind(s)}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(s){var d;let l=n?.Parent?new a:this;r(l,s),(d=l._zod).deferred??(d.deferred=[]);for(let c of l._zod.deferred)c();return l}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:(s)=>{if(n?.Parent&&s instanceof n.Parent)return!0;return s?._zod?.traits?.has(e)}}),Object.defineProperty(o,"name",{value:e}),o}function W(e){if(e)Object.assign(Pt,e);return Pt}function cy(e){return e}function my(e){return e}function fy(e){}function py(e){throw Error("Unexpected value in exhaustive check")}function vy(e){}function _r(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,r])=>t.indexOf(+n)===-1).map(([n,r])=>r)}function g(e,t="|"){return e.map((n)=>_(n)).join(t)}function Ti(e,t){if(typeof t==="bigint")return t.toString();return t}function Lt(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error("cached value already set")}}}function Ge(e){return e===null||e===void 0}function Mi(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function zu(e,t){let n=e/t,r=Math.round(n),i=Number.EPSILON*Math.max(Math.abs(n),1);if(Math.abs(n-r)<i)return 0;return n-r}function E(e,t,n){let r=void 0;Object.defineProperty(e,t,{get(){if(r===xs)return;if(r===void 0)r=xs,r=n();return r},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function gy(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Ne(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Ie(...e){let t={};for(let n of e){let r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function hy(e){return Ie(e._zod.def)}function yy(e,t){if(!t)return e;return t.reduce((n,r)=>n?.[r],e)}function by(e){let t=Object.keys(e),n=t.map((r)=>e[r]);return Promise.all(n).then((r)=>{let i={};for(let a=0;a<t.length;a++)i[t[a]]=r[a];return i})}function $y(e=10){let t="";for(let n=0;n<e;n++)t+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return t}function or(e){return JSON.stringify(e)}function Uu(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}function ut(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ke(e){if(ut(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if(ut(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function Eu(e){if(Ke(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 _y(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}function we(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function de(e,t,n){let r=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)r._zod.parent=e;return r}function h(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 wy(e){let t;return new Proxy({},{get(n,r,i){return t??(t=e()),Reflect.get(t,r,i)},set(n,r,i,a){return t??(t=e()),Reflect.set(t,r,i,a)},has(n,r){return t??(t=e()),Reflect.has(t,r)},deleteProperty(n,r){return t??(t=e()),Reflect.deleteProperty(t,r)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,i){return t??(t=e()),Reflect.defineProperty(t,r,i)}})}function _(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function ju(e){return Object.keys(e).filter((t)=>{return e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional"})}function Sy(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=Ie(e._zod.def,{get shape(){let a={};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;a[o]=n.shape[o]}return Ne(this,"shape",a),a},checks:[]});return de(e,i)}function Iy(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=Ie(e._zod.def,{get shape(){let a={...e._zod.def.shape};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;delete a[o]}return Ne(this,"shape",a),a},checks:[]});return de(e,i)}function xy(e,t){if(!Ke(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let a in t)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let r=Ie(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Ne(this,"shape",i),i}});return de(e,r)}function zy(e,t){if(!Ke(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=Ie(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t};return Ne(this,"shape",r),r}});return de(e,n)}function Uy(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=Ie(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Ne(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return de(e,n)}function Oy(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let i=Ie(t._zod.def,{get shape(){let a=t._zod.def.shape,o={...a};if(n)for(let s in n){if(!(s in a))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;o[s]=e?new e({type:"optional",innerType:a[s]}):a[s]}else for(let s in a)o[s]=e?new e({type:"optional",innerType:a[s]}):a[s];return Ne(this,"shape",o),o},checks:[]});return de(t,i)}function Ey(e,t,n){let r=Ie(t._zod.def,{get shape(){let i=t._zod.def.shape,a={...i};if(n)for(let o in n){if(!(o in a))throw Error(`Unrecognized key: "${o}"`);if(!n[o])continue;a[o]=new e({type:"nonoptional",innerType:i[o]})}else for(let o in i)a[o]=new e({type:"nonoptional",innerType:i[o]});return Ne(this,"shape",a),a}});return de(t,r)}function Je(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Du(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function se(e,t){return t.map((n)=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function Tt(e){return typeof e==="string"?e:e?.message}function ie(e,t,n){let r=e.message?e.message:Tt(e.inst?._zod.def?.error?.(e))??Tt(t?.error?.(e))??Tt(n.customError?.(e))??Tt(n.localeError?.(e))??"Invalid input",{inst:i,continue:a,input:o,...s}=e;if(s.path??(s.path=[]),s.message=r,t?.reportInput)s.input=o;return s}function Fi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Ji(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function k(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 n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function Pi(...e){let[t,n,r]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:r};return{...t}}function Ty(e){return Object.entries(e).filter(([t,n])=>{return Number.isNaN(Number.parseInt(t,10))}).map((t)=>t[1])}function Au(e){let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}function Zu(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function jy(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return Au(t+n)}function Py(e){return Zu(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Ny(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let r=0;r<t.length;r+=2)n[r/2]=Number.parseInt(t.slice(r,r+2),16);return n}function Dy(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Cu{constructor(...e){}}function Sr(e,t=(n)=>n.message){let n={},r=[];for(let i of e.issues)if(i.path.length>0)n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i));else r.push(t(i));return{formErrors:r,fieldErrors:n}}function Ir(e,t=(n)=>n.message){let n={_errors:[]},r=(i,a=[])=>{for(let o of i.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map((s)=>r({issues:s},[...a,...o.path]));else if(o.code==="invalid_key")r({issues:o.issues},[...a,...o.path]);else if(o.code==="invalid_element")r({issues:o.issues},[...a,...o.path]);else{let s=[...a,...o.path];if(s.length===0)n._errors.push(t(o));else{let d=n,l=0;while(l<s.length){let c=s[l];if(l!==s.length-1)d[c]=d[c]||{_errors:[]};else d[c]=d[c]||{_errors:[]},d[c]._errors.push(t(o));d=d[c],l++}}}};return r(e),n}function Lu(e,t=(n)=>n.message){let n={errors:[]},r=(i,a=[])=>{var o,s;for(let d of i.issues)if(d.code==="invalid_union"&&d.errors.length)d.errors.map((l)=>r({issues:l},[...a,...d.path]));else if(d.code==="invalid_key")r({issues:d.issues},[...a,...d.path]);else if(d.code==="invalid_element")r({issues:d.issues},[...a,...d.path]);else{let l=[...a,...d.path];if(l.length===0){n.errors.push(t(d));continue}let c=n,f=0;while(f<l.length){let v=l[f],p=f===l.length-1;if(typeof v==="string")c.properties??(c.properties={}),(o=c.properties)[v]??(o[v]={errors:[]}),c=c.properties[v];else c.items??(c.items=[]),(s=c.items)[v]??(s[v]={errors:[]}),c=c.items[v];if(p)c.errors.push(t(d));f++}}};return r(e),n}function Mu(e){let t=[],n=e.map((r)=>typeof r==="object"?r.key:r);for(let r of n)if(typeof r==="number")t.push(`[${r}]`);else if(typeof r==="symbol")t.push(`[${JSON.stringify(String(r))}]`);else if(/[^\w$]/.test(r))t.push(`[${JSON.stringify(r)}]`);else{if(t.length)t.push(".");t.push(r)}return t.join("")}function Fu(e){let t=[],n=[...e.issues].sort((r,i)=>(r.path??[]).length-(i.path??[]).length);for(let r of n)if(t.push(`✖ ${r.message}`),r.path?.length)t.push(` → at ${Mu(r.path)}`);return t.join(`
|
|
13
|
-
`)}function
|
|
12
|
+
`)}function ir(e,t){return e.filter((n)=>n.kind===t)}class bu{async materialize(e){let t=ty(e.bundle),n=ir(t,"rule"),r=ir(t,"workflow"),i=ir(t,"skill");await e.artifactStore.removeChildren(e.paths.workflowsPath),await e.artifactStore.removeChildren(e.paths.skillsPath);let a=[];if(n.length>0)await e.artifactStore.writeText(e.paths.rulesFilePath,iy(n)),a.push(...n.map((o)=>({kind:o.kind,filePath:e.paths.rulesFilePath,id:o.id,name:o.name})));else await e.artifactStore.remove(e.paths.rulesFilePath);for(let o of r){let s=`${e.paths.workflowsPath}/${Ss(o.name.replace(/\.(md|markdown|txt)$/i,""))}.md`;await e.artifactStore.writeText(s,o.contents),a.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}for(let o of i){let s=`${e.paths.skillsPath}/${Ss(o.name)}/SKILL.md`;await e.artifactStore.writeText(s,o.contents),a.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}return await e.artifactStore.writeText(e.paths.manifestPath,JSON.stringify({source:e.bundle.source,version:e.bundle.version,files:a},null,2)),{paths:e.paths,rulesFilePath:n.length>0?e.paths.rulesFilePath:void 0,files:a}}}function ry(e){let t=e.pluginName??ny,n=nt.join(e.workspacePath,".cline",t);return{pluginName:t,pluginPath:n,workflowsPath:nt.join(n,"workflows"),skillsPath:nt.join(n,"skills"),bundleCachePath:nt.join(n,"cache","bundle.json"),manifestPath:nt.join(n,"managed.json"),rulesFilePath:nt.join(n,"rules.md")}}function ay(e){return{workflowsDirectories:[e.workflowsPath],skillsDirectories:[e.skillsPath]}}function oy(e){if(!e)return;return{enabled:e.openTelemetryEnabled??!1,metricsExporter:e.openTelemetryMetricsExporter,logsExporter:e.openTelemetryLogsExporter,otlpProtocol:e.openTelemetryOtlpProtocol,otlpEndpoint:e.openTelemetryOtlpEndpoint,otlpHeaders:e.openTelemetryOtlpHeaders,otlpMetricsProtocol:e.openTelemetryOtlpMetricsProtocol,otlpMetricsEndpoint:e.openTelemetryOtlpMetricsEndpoint,otlpMetricsHeaders:e.openTelemetryOtlpMetricsHeaders,otlpLogsProtocol:e.openTelemetryOtlpLogsProtocol,otlpLogsEndpoint:e.openTelemetryOtlpLogsEndpoint,otlpLogsHeaders:e.openTelemetryOtlpLogsHeaders,metricExportInterval:e.openTelemetryMetricExportInterval,otlpInsecure:e.openTelemetryOtlpInsecure,logBatchSize:e.openTelemetryLogBatchSize,logBatchTimeout:e.openTelemetryLogBatchTimeout,logMaxQueueSize:e.openTelemetryLogMaxQueueSize}}function $u(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ue(e,t){let n=e[t];return typeof n==="string"?n:void 0}function Is(e,t){let n=e[t];return typeof n==="boolean"?n:void 0}function wi(e,t){let n=e[t];return typeof n==="number"&&Number.isFinite(n)?n:void 0}function nr(e,t){let n=e[t];if(!$u(n))return;let r=Object.entries(n).filter((i)=>typeof i[1]==="string");return r.length>0?Object.fromEntries(r):void 0}function sy(e){if(!$u(e))return;let t={enabled:Is(e,"enabled"),metricsExporter:Ue(e,"metricsExporter"),logsExporter:Ue(e,"logsExporter"),otlpProtocol:Ue(e,"otlpProtocol"),otlpEndpoint:Ue(e,"otlpEndpoint"),otlpHeaders:nr(e,"otlpHeaders"),otlpMetricsProtocol:Ue(e,"otlpMetricsProtocol"),otlpMetricsEndpoint:Ue(e,"otlpMetricsEndpoint"),otlpMetricsHeaders:nr(e,"otlpMetricsHeaders"),otlpLogsProtocol:Ue(e,"otlpLogsProtocol"),otlpLogsEndpoint:Ue(e,"otlpLogsEndpoint"),otlpLogsHeaders:nr(e,"otlpLogsHeaders"),metricExportInterval:wi(e,"metricExportInterval"),otlpInsecure:Is(e,"otlpInsecure"),logBatchSize:wi(e,"logBatchSize"),logBatchTimeout:wi(e,"logBatchTimeout"),logMaxQueueSize:wi(e,"logMaxQueueSize")};return Object.values(t).some((n)=>n!==void 0)?t:void 0}class _u{name="remote-config";resolveTelemetry(e,t){return{...oy(e.remoteConfig),...sy(e.telemetry)}}}function ku(e){return e?.claims}function wu(e,t){if(!e)return[];if(t.claimsMapper)return t.claimsMapper.mapClaimsToRoles(e);return e.roles??[]}function uy(e,t){return{...e,metadata:{...e.metadata??{},paths:t}}}class Su{options;constructor(e){this.options=e}async sync(e){let t=await this.options.controlPlane.fetchBundle({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger});if(!t)throw Error("Remote config control plane returned no bundle");await this.options.bundleStore.write(t);let n=await this.options.materializer.materialize({bundle:t,paths:e.paths,artifactStore:this.options.artifactStore}),r=this.options.telemetryAdapter?await this.options.telemetryAdapter.resolveTelemetry(t,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger}):void 0,i=ku(t),a=wu(i,this.options);return{bundle:t,materialized:n,telemetry:r,roles:a,claims:i}}}function ly(e){let t=e?.name??"remote-config";return{name:t,manifest:{capabilities:["providers"]},async setup(n,r){n.registerProvider?.({name:t,description:"Remote-config managed runtime integration"}),await e?.setup?.(n,r)}}}async function dy(e){let t=ry({workspacePath:e.workspacePath,pluginName:e.pluginName}),n=e.bundleStore??new cu(t.bundleCachePath),r=e.artifactStore??new mu,i=e.materializer??new bu,a=e.telemetryAdapter??new _u,o,s,d=[],l,c=!1,f=!1;if(e.controlPlane){let p=new Su({controlPlane:e.controlPlane,bundleStore:n,artifactStore:r,materializer:i,telemetryAdapter:a,claimsMapper:e.claimsMapper,logger:e.logger});try{let y=await p.sync({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,paths:t,signal:e.signal,now:e.now});o=y.bundle,s=y.telemetry,d=y.roles,l=y.claims,f=!0}catch(y){if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o)throw y}}else if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o&&e.requireBundle)throw Error("Remote config runtime preparation requires a bundle");if(o){let p=uy(o,t);if(await n.write(p),!f)await i.materialize({bundle:p,paths:t,artifactStore:r});l??=ku(p),d=d.length>0?d:wu(l,e),s??=await a.resolveTelemetry(p,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:e.logger}),o=p}let v=ay(t);return{pluginName:t.pluginName,pluginDefinition:ly({name:t.pluginName}),paths:t,bundle:o,telemetry:s,roles:d,claims:l,usedCachedBundle:c,workflowsDirectories:v.workflowsDirectories,skillsDirectories:v.skillsDirectories}}function m(e,t,n){function r(s,d){if(!s._zod)Object.defineProperty(s,"_zod",{value:{def:d,constr:o,traits:new Set},enumerable:!1});if(s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,d);let l=o.prototype,c=Object.keys(l);for(let f=0;f<c.length;f++){let v=c[f];if(!(v in s))s[v]=l[v].bind(s)}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(s){var d;let l=n?.Parent?new a:this;r(l,s),(d=l._zod).deferred??(d.deferred=[]);for(let c of l._zod.deferred)c();return l}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:(s)=>{if(n?.Parent&&s instanceof n.Parent)return!0;return s?._zod?.traits?.has(e)}}),Object.defineProperty(o,"name",{value:e}),o}function W(e){if(e)Object.assign(Pt,e);return Pt}function cy(e){return e}function my(e){return e}function fy(e){}function py(e){throw Error("Unexpected value in exhaustive check")}function vy(e){}function kr(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,r])=>t.indexOf(+n)===-1).map(([n,r])=>r)}function g(e,t="|"){return e.map((n)=>_(n)).join(t)}function Ti(e,t){if(typeof t==="bigint")return t.toString();return t}function Lt(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error("cached value already set")}}}function Ge(e){return e===null||e===void 0}function Mi(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Uu(e,t){let n=e/t,r=Math.round(n),i=Number.EPSILON*Math.max(Math.abs(n),1);if(Math.abs(n-r)<i)return 0;return n-r}function E(e,t,n){let r=void 0;Object.defineProperty(e,t,{get(){if(r===zs)return;if(r===void 0)r=zs,r=n();return r},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function gy(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Ne(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Ie(...e){let t={};for(let n of e){let r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function hy(e){return Ie(e._zod.def)}function yy(e,t){if(!t)return e;return t.reduce((n,r)=>n?.[r],e)}function by(e){let t=Object.keys(e),n=t.map((r)=>e[r]);return Promise.all(n).then((r)=>{let i={};for(let a=0;a<t.length;a++)i[t[a]]=r[a];return i})}function $y(e=10){let t="";for(let n=0;n<e;n++)t+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return t}function sr(e){return JSON.stringify(e)}function Ou(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}function ut(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ke(e){if(ut(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if(ut(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function Tu(e){if(Ke(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 _y(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}function we(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function de(e,t,n){let r=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)r._zod.parent=e;return r}function h(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 wy(e){let t;return new Proxy({},{get(n,r,i){return t??(t=e()),Reflect.get(t,r,i)},set(n,r,i,a){return t??(t=e()),Reflect.set(t,r,i,a)},has(n,r){return t??(t=e()),Reflect.has(t,r)},deleteProperty(n,r){return t??(t=e()),Reflect.deleteProperty(t,r)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,i){return t??(t=e()),Reflect.defineProperty(t,r,i)}})}function _(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Pu(e){return Object.keys(e).filter((t)=>{return e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional"})}function Sy(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=Ie(e._zod.def,{get shape(){let a={};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;a[o]=n.shape[o]}return Ne(this,"shape",a),a},checks:[]});return de(e,i)}function Iy(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=Ie(e._zod.def,{get shape(){let a={...e._zod.def.shape};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;delete a[o]}return Ne(this,"shape",a),a},checks:[]});return de(e,i)}function xy(e,t){if(!Ke(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let a in t)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let r=Ie(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Ne(this,"shape",i),i}});return de(e,r)}function zy(e,t){if(!Ke(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=Ie(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t};return Ne(this,"shape",r),r}});return de(e,n)}function Uy(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=Ie(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return Ne(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return de(e,n)}function Oy(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let i=Ie(t._zod.def,{get shape(){let a=t._zod.def.shape,o={...a};if(n)for(let s in n){if(!(s in a))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;o[s]=e?new e({type:"optional",innerType:a[s]}):a[s]}else for(let s in a)o[s]=e?new e({type:"optional",innerType:a[s]}):a[s];return Ne(this,"shape",o),o},checks:[]});return de(t,i)}function Ey(e,t,n){let r=Ie(t._zod.def,{get shape(){let i=t._zod.def.shape,a={...i};if(n)for(let o in n){if(!(o in a))throw Error(`Unrecognized key: "${o}"`);if(!n[o])continue;a[o]=new e({type:"nonoptional",innerType:i[o]})}else for(let o in i)a[o]=new e({type:"nonoptional",innerType:i[o]});return Ne(this,"shape",a),a}});return de(t,r)}function Fe(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Au(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function se(e,t){return t.map((n)=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function Tt(e){return typeof e==="string"?e:e?.message}function ie(e,t,n){let r=e.message?e.message:Tt(e.inst?._zod.def?.error?.(e))??Tt(t?.error?.(e))??Tt(n.customError?.(e))??Tt(n.localeError?.(e))??"Invalid input",{inst:i,continue:a,input:o,...s}=e;if(s.path??(s.path=[]),s.message=r,t?.reportInput)s.input=o;return s}function Ji(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Fi(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function k(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 n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function Pi(...e){let[t,n,r]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:r};return{...t}}function Ty(e){return Object.entries(e).filter(([t,n])=>{return Number.isNaN(Number.parseInt(t,10))}).map((t)=>t[1])}function Zu(e){let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}function Cu(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function jy(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return Zu(t+n)}function Py(e){return Cu(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Ny(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let r=0;r<t.length;r+=2)n[r/2]=Number.parseInt(t.slice(r,r+2),16);return n}function Dy(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Ru{constructor(...e){}}function Ir(e,t=(n)=>n.message){let n={},r=[];for(let i of e.issues)if(i.path.length>0)n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i));else r.push(t(i));return{formErrors:r,fieldErrors:n}}function xr(e,t=(n)=>n.message){let n={_errors:[]},r=(i,a=[])=>{for(let o of i.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map((s)=>r({issues:s},[...a,...o.path]));else if(o.code==="invalid_key")r({issues:o.issues},[...a,...o.path]);else if(o.code==="invalid_element")r({issues:o.issues},[...a,...o.path]);else{let s=[...a,...o.path];if(s.length===0)n._errors.push(t(o));else{let d=n,l=0;while(l<s.length){let c=s[l];if(l!==s.length-1)d[c]=d[c]||{_errors:[]};else d[c]=d[c]||{_errors:[]},d[c]._errors.push(t(o));d=d[c],l++}}}};return r(e),n}function Mu(e,t=(n)=>n.message){let n={errors:[]},r=(i,a=[])=>{var o,s;for(let d of i.issues)if(d.code==="invalid_union"&&d.errors.length)d.errors.map((l)=>r({issues:l},[...a,...d.path]));else if(d.code==="invalid_key")r({issues:d.issues},[...a,...d.path]);else if(d.code==="invalid_element")r({issues:d.issues},[...a,...d.path]);else{let l=[...a,...d.path];if(l.length===0){n.errors.push(t(d));continue}let c=n,f=0;while(f<l.length){let v=l[f],p=f===l.length-1;if(typeof v==="string")c.properties??(c.properties={}),(o=c.properties)[v]??(o[v]={errors:[]}),c=c.properties[v];else c.items??(c.items=[]),(s=c.items)[v]??(s[v]={errors:[]}),c=c.items[v];if(p)c.errors.push(t(d));f++}}};return r(e),n}function Ju(e){let t=[],n=e.map((r)=>typeof r==="object"?r.key:r);for(let r of n)if(typeof r==="number")t.push(`[${r}]`);else if(typeof r==="symbol")t.push(`[${JSON.stringify(String(r))}]`);else if(/[^\w$]/.test(r))t.push(`[${JSON.stringify(r)}]`);else{if(t.length)t.push(".");t.push(r)}return t.join("")}function Fu(e){let t=[],n=[...e.issues].sort((r,i)=>(r.path??[]).length-(i.path??[]).length);for(let r of n)if(t.push(`✖ ${r.message}`),r.path?.length)t.push(` → at ${Ju(r.path)}`);return t.join(`
|
|
13
|
+
`)}function il(){return new RegExp(Qy,"u")}function fl(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(`^${fl(e)}$`)}function vl(e){let t=fl({precision:e.precision}),n=["Z"];if(e.local)n.push("");if(e.offset)n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${t}(?:${n.join("|")})`;return new RegExp(`^${cl}T(?:${r})$`)}function Wt(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function Ht(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}function Us(e,t,n){if(e.issues.length)t.issues.push(...se(n,e.issues))}class Rr{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 t=e.split(`
|
|
14
14
|
`).filter((i)=>i),n=Math.min(...t.map((i)=>i.length-i.trimStart().length)),r=t.map((i)=>i.slice(n)).map((i)=>" ".repeat(this.indent*2)+i);for(let i of r)this.content.push(i)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[""]).map((r)=>` ${r}`)];return new e(...t,n.join(`
|
|
15
|
-
`))}}function Rr(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}}function dd(e){if(!Nr.test(e))return!1;let t=e.replace(/[-_]/g,(r)=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Rr(n)}function fd(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));if("typ"in i&&i?.typ!=="JWT")return!1;if(!i.alg)return!1;if(t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}function Us(e,t,n){if(e.issues.length)t.issues.push(...se(n,e.issues));t.value[n]=e.value}function Ni(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...se(n,e.issues))}if(!o&&!i){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}if(e.value===void 0){if(o)t.value[n]=void 0}else t.value[n]=e.value}function zd(e){let t=Object.keys(e.shape);for(let r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${r}": expected a Zod schema`);let n=ju(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Ud(e,t,n,r,i,a){let o=[],s=i.keySet,d=i.catchall._zod,l=d.def.type,c=d.optin==="optional",f=d.optout==="optional";for(let v in t){if(v==="__proto__")continue;if(s.has(v))continue;if(l==="never"){o.push(v);continue}let p=d.run({value:t[v],issues:[]},r);if(p instanceof Promise)e.push(p.then((y)=>Ni(y,n,v,t,c,f)));else Ni(p,n,v,t,c,f)}if(o.length)n.issues.push({code:"unrecognized_keys",keys:o,input:t,inst:a});if(!e.length)return n;return Promise.all(e).then(()=>{return n})}function Os(e,t,n,r){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let i=e.filter((a)=>!Je(a));if(i.length===1)return t.value=i[0].value,i[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((a)=>a.issues.map((o)=>ie(o,r,W())))}),t}function Es(e,t,n,r){let i=e.filter((a)=>a.issues.length===0);if(i.length===1)return t.value=i[0].value,t;if(i.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((a)=>a.issues.map((o)=>ie(o,r,W())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}function lr(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(Ke(e)&&Ke(t)){let n=Object.keys(t),r=Object.keys(e).filter((a)=>n.indexOf(a)!==-1),i={...e,...t};for(let a of r){let o=lr(e[a],t[a]);if(!o.valid)return{valid:!1,mergeErrorPath:[a,...o.mergeErrorPath]};i[a]=o.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=lr(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Ts(e,t,n){let r=new Map,i;for(let s of t.issues)if(s.code==="unrecognized_keys"){i??(i=s);for(let d of s.keys){if(!r.has(d))r.set(d,{});r.get(d).l=!0}}else e.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let d of s.keys){if(!r.has(d))r.set(d,{});r.get(d).r=!0}else e.issues.push(s);let a=[...r].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(a.length&&i)e.issues.push({...i,keys:a});if(Je(e))return e;let o=lr(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}function js(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function Ps(e,t,n){if(e.issues.length)t.issues.push(...se(n,e.issues));t.value[n]=e.value}function Ns(e,t,n,r,i){for(let a=0;a<n.length;a++){let o=e[a],s=a<r.length;if(o.issues.length){if(!s&&a>=i){t.value.length=a;break}t.issues.push(...se(a,o.issues))}t.value[a]=o.value}for(let a=t.value.length-1;a>=r.length;a--)if(n[a]._zod.optout==="optional"&&t.value[a]===void 0)t.value.length=a;else break;return t}function Ds(e,t,n,r,i,a,o){if(e.issues.length)if(ji.has(typeof r))n.issues.push(...se(r,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:i,inst:a,issues:e.issues.map((s)=>ie(s,o,W()))});if(t.issues.length)if(ji.has(typeof r))n.issues.push(...se(r,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:i,inst:a,key:r,issues:t.issues.map((s)=>ie(s,o,W()))});n.value.set(e.value,t.value)}function As(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}function Zs(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}function Cs(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}function Rs(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}function Si(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}function Ii(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let r=t.transform(e.value,e);if(r instanceof Promise)return r.then((i)=>xi(e,i,t.out,n));return xi(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);if(r instanceof Promise)return r.then((i)=>xi(e,i,t.in,n));return xi(e,r,t.in,n)}}function xi(e,t,n,r){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},r)}function Ls(e){return e.value=Object.freeze(e.value),e}function Ms(e,t,n,r){if(!e){let i={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};if(r._zod.def.params)i.params=r._zod.def.params;t.issues.push(Pi(i))}}function yb(){return{localeError:hb()}}function $b(){return{localeError:bb()}}function Fs(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;if(o>=11&&o<=19)return r;if(a===1)return t;if(a>=2&&a<=4)return n;return r}function kb(){return{localeError:_b()}}function Sb(){return{localeError:wb()}}function xb(){return{localeError:Ib()}}function Ub(){return{localeError:zb()}}function Eb(){return{localeError:Ob()}}function jb(){return{localeError:Tb()}}function Nb(){return{localeError:Pb()}}function ic(){return{localeError:Db()}}function Zb(){return{localeError:Ab()}}function Rb(){return{localeError:Cb()}}function Mb(){return{localeError:Lb()}}function Jb(){return{localeError:Fb()}}function Wb(){return{localeError:Kb()}}function Bb(){return{localeError:Hb()}}function Xb(){return{localeError:Gb()}}function Vb(){return{localeError:Yb()}}function qb(){return{localeError:Qb()}}function Js(e,t,n){return Math.abs(e)===1?t:n}function rt(e){if(!e)return"";let t=["ա","ե","ը","ի","ո","ու","օ"],n=e[e.length-1];return e+(t.includes(n)?"ն":"ը")}function t$(){return{localeError:e$()}}function n$(){return{localeError:i$()}}function a$(){return{localeError:r$()}}function s$(){return{localeError:o$()}}function l$(){return{localeError:u$()}}function c$(){return{localeError:d$()}}function nc(){return{localeError:m$()}}function f$(){return nc()}function v$(){return{localeError:p$()}}function Ks(e){let t=Math.abs(e),n=t%10,r=t%100;if(r>=11&&r<=19||n===0)return"many";if(n===1)return"one";return"few"}function h$(){return{localeError:g$()}}function b$(){return{localeError:y$()}}function _$(){return{localeError:$$()}}function w$(){return{localeError:k$()}}function I$(){return{localeError:S$()}}function z$(){return{localeError:x$()}}function O$(){return{localeError:U$()}}function T$(){return{localeError:E$()}}function P$(){return{localeError:j$()}}function D$(){return{localeError:N$()}}function Ws(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;if(o>=11&&o<=19)return r;if(a===1)return t;if(a>=2&&a<=4)return n;return r}function Z$(){return{localeError:A$()}}function R$(){return{localeError:C$()}}function M$(){return{localeError:L$()}}function J$(){return{localeError:F$()}}function W$(){return{localeError:K$()}}function B$(){return{localeError:H$()}}function rc(){return{localeError:G$()}}function X$(){return rc()}function V$(){return{localeError:Y$()}}function q$(){return{localeError:Q$()}}function t_(){return{localeError:e_()}}function n_(){return{localeError:i_()}}function a_(){return{localeError:r_()}}function s_(){return{localeError:o_()}}class Gr{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.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 n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Xr(){return new Gr}function sc(e,t){return new e({type:"string",...h(t)})}function uc(e,t){return new e({type:"string",coerce:!0,...h(t)})}function Yr(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...h(t)})}function Di(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...h(t)})}function Vr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...h(t)})}function Qr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...h(t)})}function qr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...h(t)})}function ea(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...h(t)})}function Wi(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...h(t)})}function ta(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...h(t)})}function ia(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...h(t)})}function na(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...h(t)})}function ra(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...h(t)})}function aa(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...h(t)})}function oa(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...h(t)})}function sa(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...h(t)})}function ua(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...h(t)})}function la(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...h(t)})}function lc(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...h(t)})}function da(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...h(t)})}function ca(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...h(t)})}function ma(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...h(t)})}function fa(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...h(t)})}function pa(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...h(t)})}function va(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...h(t)})}function cc(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...h(t)})}function mc(e,t){return new e({type:"string",format:"date",check:"string_format",...h(t)})}function fc(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...h(t)})}function pc(e,t){return new e({type:"string",format:"duration",check:"string_format",...h(t)})}function vc(e,t){return new e({type:"number",checks:[],...h(t)})}function gc(e,t){return new e({type:"number",coerce:!0,checks:[],...h(t)})}function hc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...h(t)})}function yc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...h(t)})}function bc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...h(t)})}function $c(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...h(t)})}function _c(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...h(t)})}function kc(e,t){return new e({type:"boolean",...h(t)})}function wc(e,t){return new e({type:"boolean",coerce:!0,...h(t)})}function Sc(e,t){return new e({type:"bigint",...h(t)})}function Ic(e,t){return new e({type:"bigint",coerce:!0,...h(t)})}function xc(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...h(t)})}function zc(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...h(t)})}function Uc(e,t){return new e({type:"symbol",...h(t)})}function Oc(e,t){return new e({type:"undefined",...h(t)})}function Ec(e,t){return new e({type:"null",...h(t)})}function Tc(e){return new e({type:"any"})}function jc(e){return new e({type:"unknown"})}function Pc(e,t){return new e({type:"never",...h(t)})}function Nc(e,t){return new e({type:"void",...h(t)})}function Dc(e,t){return new e({type:"date",...h(t)})}function Ac(e,t){return new e({type:"date",coerce:!0,...h(t)})}function Zc(e,t){return new e({type:"nan",...h(t)})}function Te(e,t){return new Ar({check:"less_than",...h(t),value:e,inclusive:!1})}function le(e,t){return new Ar({check:"less_than",...h(t),value:e,inclusive:!0})}function je(e,t){return new Zr({check:"greater_than",...h(t),value:e,inclusive:!1})}function V(e,t){return new Zr({check:"greater_than",...h(t),value:e,inclusive:!0})}function ga(e){return je(0,e)}function ha(e){return Te(0,e)}function ya(e){return le(0,e)}function ba(e){return V(0,e)}function dt(e,t){return new Sl({check:"multiple_of",...h(t),value:e})}function gt(e,t){return new zl({check:"max_size",...h(t),maximum:e})}function Pe(e,t){return new Ul({check:"min_size",...h(t),minimum:e})}function Xt(e,t){return new Ol({check:"size_equals",...h(t),size:e})}function Yt(e,t){return new El({check:"max_length",...h(t),maximum:e})}function We(e,t){return new Tl({check:"min_length",...h(t),minimum:e})}function Vt(e,t){return new jl({check:"length_equals",...h(t),length:e})}function Hi(e,t){return new Pl({check:"string_format",format:"regex",...h(t),pattern:e})}function Bi(e){return new Nl({check:"string_format",format:"lowercase",...h(e)})}function Gi(e){return new Dl({check:"string_format",format:"uppercase",...h(e)})}function Xi(e,t){return new Al({check:"string_format",format:"includes",...h(t),includes:e})}function Yi(e,t){return new Zl({check:"string_format",format:"starts_with",...h(t),prefix:e})}function Vi(e,t){return new Cl({check:"string_format",format:"ends_with",...h(t),suffix:e})}function $a(e,t,n){return new Rl({check:"property",property:e,schema:t,...h(n)})}function Qi(e,t){return new Ll({check:"mime_type",mime:e,...h(t)})}function xe(e){return new Ml({check:"overwrite",tx:e})}function qi(e){return xe((t)=>t.normalize(e))}function en(){return xe((e)=>e.trim())}function tn(){return xe((e)=>e.toLowerCase())}function nn(){return xe((e)=>e.toUpperCase())}function rn(){return xe((e)=>Uu(e))}function Cc(e,t,n){return new e({type:"array",element:t,...h(n)})}function u_(e,t,n){return new e({type:"union",options:t,...h(n)})}function l_(e,t,n){return new e({type:"union",options:t,inclusive:!1,...h(n)})}function d_(e,t,n,r){return new e({type:"union",options:n,discriminator:t,...h(r)})}function c_(e,t,n){return new e({type:"intersection",left:t,right:n})}function m_(e,t,n,r){let i=n instanceof x;return new e({type:"tuple",items:t,rest:i?n:null,...h(i?r:n)})}function f_(e,t,n,r){return new e({type:"record",keyType:t,valueType:n,...h(r)})}function p_(e,t,n,r){return new e({type:"map",keyType:t,valueType:n,...h(r)})}function v_(e,t,n){return new e({type:"set",valueType:t,...h(n)})}function g_(e,t,n){let r=Array.isArray(t)?Object.fromEntries(t.map((i)=>[i,i])):t;return new e({type:"enum",entries:r,...h(n)})}function h_(e,t,n){return new e({type:"enum",entries:t,...h(n)})}function y_(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...h(n)})}function Rc(e,t){return new e({type:"file",...h(t)})}function b_(e,t){return new e({type:"transform",transform:t})}function $_(e,t){return new e({type:"optional",innerType:t})}function __(e,t){return new e({type:"nullable",innerType:t})}function k_(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():Eu(n)}})}function w_(e,t,n){return new e({type:"nonoptional",innerType:t,...h(n)})}function S_(e,t){return new e({type:"success",innerType:t})}function I_(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function x_(e,t,n){return new e({type:"pipe",in:t,out:n})}function z_(e,t){return new e({type:"readonly",innerType:t})}function U_(e,t,n){return new e({type:"template_literal",parts:t,...h(n)})}function O_(e,t){return new e({type:"lazy",getter:t})}function E_(e,t){return new e({type:"promise",innerType:t})}function Lc(e,t,n){let r=h(n);return r.abort??(r.abort=!0),new e({type:"custom",check:"custom",fn:t,...r})}function Mc(e,t,n){return new e({type:"custom",check:"custom",fn:t,...h(n)})}function Fc(e,t){let n=Jc((r)=>{return r.addIssue=(i)=>{if(typeof i==="string")r.issues.push(Pi(i,r.value,n._zod.def));else{let a=i;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=n),a.continue??(a.continue=!n._zod.def.abort),r.issues.push(Pi(a))}},e(r.value,r)},t);return n}function Jc(e,t){let n=new L({check:"custom",...h(t)});return n._zod.check=e,n}function Kc(e){let t=new L({check:"describe"});return t._zod.onattach=[(n)=>{let r=ue.get(n)??{};ue.add(n,{...r,description:e})}],t._zod.check=()=>{},t}function Wc(e){let t=new L({check:"meta"});return t._zod.onattach=[(n)=>{let r=ue.get(n)??{};ue.add(n,{...r,...e})}],t._zod.check=()=>{},t}function Hc(e,t){let n=h(t),r=n.truthy??["true","1","yes","on","y","enabled"],i=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")r=r.map((v)=>typeof v==="string"?v.toLowerCase():v),i=i.map((v)=>typeof v==="string"?v.toLowerCase():v);let a=new Set(r),o=new Set(i),s=e.Codec??Hr,d=e.Boolean??Mr,l=new(e.String??Gt)({type:"string",error:n.error}),c=new d({type:"boolean",error:n.error}),f=new s({type:"pipe",in:l,out:c,transform:(v,p)=>{let y=v;if(n.case!=="sensitive")y=y.toLowerCase();if(a.has(y))return!0;else if(o.has(y))return!1;else return p.issues.push({code:"invalid_value",expected:"stringbool",values:[...a,...o],input:p.value,inst:f,continue:!1}),{}},reverseTransform:(v,p)=>{if(v===!0)return r[0]||"true";else return i[0]||"false"},error:n.error});return f}function Qt(e,t,n,r={}){let i=h(r),a={...h(r),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(o)=>n.test(o),...i};if(n instanceof RegExp)a.pattern=n;return new e(a)}function ct(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??ue,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 N(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a){if(a.count++,n.schemaPath.includes(e))a.cycle=n.path;return a.schema}let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let l={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,l);else{let f=o.schema,v=t.processors[i.type];if(!v)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);v(e,t,f,l)}let c=e._zod.parent;if(c){if(!o.ref)o.ref=c;N(c,t,l),t.seen.get(c).isParent=!0}}let d=t.metadataRegistry.get(e);if(d)Object.assign(o.schema,d);if(t.io==="input"&&X(e))delete o.schema.examples,delete o.schema.default;if(t.io==="input"&&"_prefault"in o.schema)(r=o.schema).default??(r.default=o.schema._prefault);return delete o.schema._prefault,t.seen.get(e).schema}function mt(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let r=new Map;for(let o of e.seen.entries()){let s=e.metadataRegistry.get(o[0])?.id;if(s){let d=r.get(s);if(d&&d!==o[0])throw Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(s,o[0])}}let i=(o)=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let c=e.external.registry.get(o[0])?.id,f=e.external.uri??((p)=>p);if(c)return{ref:f(c)};let v=o[1].defId??o[1].schema.id??`schema${e.counter++}`;return o[1].defId=v,{defId:v,ref:`${f("__shared")}#/${s}/${v}`}}if(o[1]===n)return{ref:"#"};let d=`#/${s}/`,l=o[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:d+l}},a=(o)=>{if(o[1].schema.$ref)return;let s=o[1],{ref:d,defId:l}=i(o);if(s.def={...s.schema},l)s.defId=l;let c=s.schema;for(let f in c)delete c[f];c.$ref=d};if(e.cycles==="throw")for(let o of e.seen.entries()){let s=o[1];if(s.cycle)throw Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
|
|
15
|
+
`))}}function Lr(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}}function cd(e){if(!Dr.test(e))return!1;let t=e.replace(/[-_]/g,(r)=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Lr(n)}function pd(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));if("typ"in i&&i?.typ!=="JWT")return!1;if(!i.alg)return!1;if(t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}function Os(e,t,n){if(e.issues.length)t.issues.push(...se(n,e.issues));t.value[n]=e.value}function Ni(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...se(n,e.issues))}if(!o&&!i){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}if(e.value===void 0){if(o)t.value[n]=void 0}else t.value[n]=e.value}function Ud(e){let t=Object.keys(e.shape);for(let r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${r}": expected a Zod schema`);let n=Pu(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Od(e,t,n,r,i,a){let o=[],s=i.keySet,d=i.catchall._zod,l=d.def.type,c=d.optin==="optional",f=d.optout==="optional";for(let v in t){if(v==="__proto__")continue;if(s.has(v))continue;if(l==="never"){o.push(v);continue}let p=d.run({value:t[v],issues:[]},r);if(p instanceof Promise)e.push(p.then((y)=>Ni(y,n,v,t,c,f)));else Ni(p,n,v,t,c,f)}if(o.length)n.issues.push({code:"unrecognized_keys",keys:o,input:t,inst:a});if(!e.length)return n;return Promise.all(e).then(()=>{return n})}function Es(e,t,n,r){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let i=e.filter((a)=>!Fe(a));if(i.length===1)return t.value=i[0].value,i[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((a)=>a.issues.map((o)=>ie(o,r,W())))}),t}function Ts(e,t,n,r){let i=e.filter((a)=>a.issues.length===0);if(i.length===1)return t.value=i[0].value,t;if(i.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((a)=>a.issues.map((o)=>ie(o,r,W())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}function dr(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(Ke(e)&&Ke(t)){let n=Object.keys(t),r=Object.keys(e).filter((a)=>n.indexOf(a)!==-1),i={...e,...t};for(let a of r){let o=dr(e[a],t[a]);if(!o.valid)return{valid:!1,mergeErrorPath:[a,...o.mergeErrorPath]};i[a]=o.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=dr(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function js(e,t,n){let r=new Map,i;for(let s of t.issues)if(s.code==="unrecognized_keys"){i??(i=s);for(let d of s.keys){if(!r.has(d))r.set(d,{});r.get(d).l=!0}}else e.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let d of s.keys){if(!r.has(d))r.set(d,{});r.get(d).r=!0}else e.issues.push(s);let a=[...r].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(a.length&&i)e.issues.push({...i,keys:a});if(Fe(e))return e;let o=dr(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}function Ps(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function Ns(e,t,n){if(e.issues.length)t.issues.push(...se(n,e.issues));t.value[n]=e.value}function Ds(e,t,n,r,i){for(let a=0;a<n.length;a++){let o=e[a],s=a<r.length;if(o.issues.length){if(!s&&a>=i){t.value.length=a;break}t.issues.push(...se(a,o.issues))}t.value[a]=o.value}for(let a=t.value.length-1;a>=r.length;a--)if(n[a]._zod.optout==="optional"&&t.value[a]===void 0)t.value.length=a;else break;return t}function As(e,t,n,r,i,a,o){if(e.issues.length)if(ji.has(typeof r))n.issues.push(...se(r,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:i,inst:a,issues:e.issues.map((s)=>ie(s,o,W()))});if(t.issues.length)if(ji.has(typeof r))n.issues.push(...se(r,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:i,inst:a,key:r,issues:t.issues.map((s)=>ie(s,o,W()))});n.value.set(e.value,t.value)}function Zs(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}function Cs(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}function Rs(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}function Ls(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}function Si(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}function Ii(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let r=t.transform(e.value,e);if(r instanceof Promise)return r.then((i)=>xi(e,i,t.out,n));return xi(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);if(r instanceof Promise)return r.then((i)=>xi(e,i,t.in,n));return xi(e,r,t.in,n)}}function xi(e,t,n,r){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},r)}function Ms(e){return e.value=Object.freeze(e.value),e}function Js(e,t,n,r){if(!e){let i={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};if(r._zod.def.params)i.params=r._zod.def.params;t.issues.push(Pi(i))}}function yb(){return{localeError:hb()}}function $b(){return{localeError:bb()}}function Fs(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;if(o>=11&&o<=19)return r;if(a===1)return t;if(a>=2&&a<=4)return n;return r}function kb(){return{localeError:_b()}}function Sb(){return{localeError:wb()}}function xb(){return{localeError:Ib()}}function Ub(){return{localeError:zb()}}function Eb(){return{localeError:Ob()}}function jb(){return{localeError:Tb()}}function Nb(){return{localeError:Pb()}}function nc(){return{localeError:Db()}}function Zb(){return{localeError:Ab()}}function Rb(){return{localeError:Cb()}}function Mb(){return{localeError:Lb()}}function Fb(){return{localeError:Jb()}}function Wb(){return{localeError:Kb()}}function Bb(){return{localeError:Hb()}}function Xb(){return{localeError:Gb()}}function Vb(){return{localeError:Yb()}}function qb(){return{localeError:Qb()}}function Ks(e,t,n){return Math.abs(e)===1?t:n}function rt(e){if(!e)return"";let t=["ա","ե","ը","ի","ո","ու","օ"],n=e[e.length-1];return e+(t.includes(n)?"ն":"ը")}function t$(){return{localeError:e$()}}function n$(){return{localeError:i$()}}function a$(){return{localeError:r$()}}function s$(){return{localeError:o$()}}function l$(){return{localeError:u$()}}function c$(){return{localeError:d$()}}function rc(){return{localeError:m$()}}function f$(){return rc()}function v$(){return{localeError:p$()}}function Ws(e){let t=Math.abs(e),n=t%10,r=t%100;if(r>=11&&r<=19||n===0)return"many";if(n===1)return"one";return"few"}function h$(){return{localeError:g$()}}function b$(){return{localeError:y$()}}function _$(){return{localeError:$$()}}function w$(){return{localeError:k$()}}function I$(){return{localeError:S$()}}function z$(){return{localeError:x$()}}function O$(){return{localeError:U$()}}function T$(){return{localeError:E$()}}function P$(){return{localeError:j$()}}function D$(){return{localeError:N$()}}function Hs(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;if(o>=11&&o<=19)return r;if(a===1)return t;if(a>=2&&a<=4)return n;return r}function Z$(){return{localeError:A$()}}function R$(){return{localeError:C$()}}function M$(){return{localeError:L$()}}function F$(){return{localeError:J$()}}function W$(){return{localeError:K$()}}function B$(){return{localeError:H$()}}function ac(){return{localeError:G$()}}function X$(){return ac()}function V$(){return{localeError:Y$()}}function q$(){return{localeError:Q$()}}function t_(){return{localeError:e_()}}function n_(){return{localeError:i_()}}function a_(){return{localeError:r_()}}function s_(){return{localeError:o_()}}class Xr{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.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 n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Yr(){return new Xr}function uc(e,t){return new e({type:"string",...h(t)})}function lc(e,t){return new e({type:"string",coerce:!0,...h(t)})}function Vr(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...h(t)})}function Di(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...h(t)})}function Qr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...h(t)})}function qr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...h(t)})}function ea(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...h(t)})}function ta(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...h(t)})}function Wi(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...h(t)})}function ia(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...h(t)})}function na(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...h(t)})}function ra(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...h(t)})}function aa(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...h(t)})}function oa(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...h(t)})}function sa(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...h(t)})}function ua(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...h(t)})}function la(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...h(t)})}function da(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...h(t)})}function dc(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...h(t)})}function ca(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...h(t)})}function ma(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...h(t)})}function fa(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...h(t)})}function pa(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...h(t)})}function va(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...h(t)})}function ga(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...h(t)})}function mc(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...h(t)})}function fc(e,t){return new e({type:"string",format:"date",check:"string_format",...h(t)})}function pc(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...h(t)})}function vc(e,t){return new e({type:"string",format:"duration",check:"string_format",...h(t)})}function gc(e,t){return new e({type:"number",checks:[],...h(t)})}function hc(e,t){return new e({type:"number",coerce:!0,checks:[],...h(t)})}function yc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...h(t)})}function bc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...h(t)})}function $c(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...h(t)})}function _c(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...h(t)})}function kc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...h(t)})}function wc(e,t){return new e({type:"boolean",...h(t)})}function Sc(e,t){return new e({type:"boolean",coerce:!0,...h(t)})}function Ic(e,t){return new e({type:"bigint",...h(t)})}function xc(e,t){return new e({type:"bigint",coerce:!0,...h(t)})}function zc(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...h(t)})}function Uc(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...h(t)})}function Oc(e,t){return new e({type:"symbol",...h(t)})}function Ec(e,t){return new e({type:"undefined",...h(t)})}function Tc(e,t){return new e({type:"null",...h(t)})}function jc(e){return new e({type:"any"})}function Pc(e){return new e({type:"unknown"})}function Nc(e,t){return new e({type:"never",...h(t)})}function Dc(e,t){return new e({type:"void",...h(t)})}function Ac(e,t){return new e({type:"date",...h(t)})}function Zc(e,t){return new e({type:"date",coerce:!0,...h(t)})}function Cc(e,t){return new e({type:"nan",...h(t)})}function Te(e,t){return new Zr({check:"less_than",...h(t),value:e,inclusive:!1})}function le(e,t){return new Zr({check:"less_than",...h(t),value:e,inclusive:!0})}function je(e,t){return new Cr({check:"greater_than",...h(t),value:e,inclusive:!1})}function V(e,t){return new Cr({check:"greater_than",...h(t),value:e,inclusive:!0})}function ha(e){return je(0,e)}function ya(e){return Te(0,e)}function ba(e){return le(0,e)}function $a(e){return V(0,e)}function dt(e,t){return new Il({check:"multiple_of",...h(t),value:e})}function gt(e,t){return new Ul({check:"max_size",...h(t),maximum:e})}function Pe(e,t){return new Ol({check:"min_size",...h(t),minimum:e})}function Xt(e,t){return new El({check:"size_equals",...h(t),size:e})}function Yt(e,t){return new Tl({check:"max_length",...h(t),maximum:e})}function We(e,t){return new jl({check:"min_length",...h(t),minimum:e})}function Vt(e,t){return new Pl({check:"length_equals",...h(t),length:e})}function Hi(e,t){return new Nl({check:"string_format",format:"regex",...h(t),pattern:e})}function Bi(e){return new Dl({check:"string_format",format:"lowercase",...h(e)})}function Gi(e){return new Al({check:"string_format",format:"uppercase",...h(e)})}function Xi(e,t){return new Zl({check:"string_format",format:"includes",...h(t),includes:e})}function Yi(e,t){return new Cl({check:"string_format",format:"starts_with",...h(t),prefix:e})}function Vi(e,t){return new Rl({check:"string_format",format:"ends_with",...h(t),suffix:e})}function _a(e,t,n){return new Ll({check:"property",property:e,schema:t,...h(n)})}function Qi(e,t){return new Ml({check:"mime_type",mime:e,...h(t)})}function xe(e){return new Jl({check:"overwrite",tx:e})}function qi(e){return xe((t)=>t.normalize(e))}function en(){return xe((e)=>e.trim())}function tn(){return xe((e)=>e.toLowerCase())}function nn(){return xe((e)=>e.toUpperCase())}function rn(){return xe((e)=>Ou(e))}function Rc(e,t,n){return new e({type:"array",element:t,...h(n)})}function u_(e,t,n){return new e({type:"union",options:t,...h(n)})}function l_(e,t,n){return new e({type:"union",options:t,inclusive:!1,...h(n)})}function d_(e,t,n,r){return new e({type:"union",options:n,discriminator:t,...h(r)})}function c_(e,t,n){return new e({type:"intersection",left:t,right:n})}function m_(e,t,n,r){let i=n instanceof x;return new e({type:"tuple",items:t,rest:i?n:null,...h(i?r:n)})}function f_(e,t,n,r){return new e({type:"record",keyType:t,valueType:n,...h(r)})}function p_(e,t,n,r){return new e({type:"map",keyType:t,valueType:n,...h(r)})}function v_(e,t,n){return new e({type:"set",valueType:t,...h(n)})}function g_(e,t,n){let r=Array.isArray(t)?Object.fromEntries(t.map((i)=>[i,i])):t;return new e({type:"enum",entries:r,...h(n)})}function h_(e,t,n){return new e({type:"enum",entries:t,...h(n)})}function y_(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...h(n)})}function Lc(e,t){return new e({type:"file",...h(t)})}function b_(e,t){return new e({type:"transform",transform:t})}function $_(e,t){return new e({type:"optional",innerType:t})}function __(e,t){return new e({type:"nullable",innerType:t})}function k_(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():Tu(n)}})}function w_(e,t,n){return new e({type:"nonoptional",innerType:t,...h(n)})}function S_(e,t){return new e({type:"success",innerType:t})}function I_(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function x_(e,t,n){return new e({type:"pipe",in:t,out:n})}function z_(e,t){return new e({type:"readonly",innerType:t})}function U_(e,t,n){return new e({type:"template_literal",parts:t,...h(n)})}function O_(e,t){return new e({type:"lazy",getter:t})}function E_(e,t){return new e({type:"promise",innerType:t})}function Mc(e,t,n){let r=h(n);return r.abort??(r.abort=!0),new e({type:"custom",check:"custom",fn:t,...r})}function Jc(e,t,n){return new e({type:"custom",check:"custom",fn:t,...h(n)})}function Fc(e,t){let n=Kc((r)=>{return r.addIssue=(i)=>{if(typeof i==="string")r.issues.push(Pi(i,r.value,n._zod.def));else{let a=i;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=n),a.continue??(a.continue=!n._zod.def.abort),r.issues.push(Pi(a))}},e(r.value,r)},t);return n}function Kc(e,t){let n=new L({check:"custom",...h(t)});return n._zod.check=e,n}function Wc(e){let t=new L({check:"describe"});return t._zod.onattach=[(n)=>{let r=ue.get(n)??{};ue.add(n,{...r,description:e})}],t._zod.check=()=>{},t}function Hc(e){let t=new L({check:"meta"});return t._zod.onattach=[(n)=>{let r=ue.get(n)??{};ue.add(n,{...r,...e})}],t._zod.check=()=>{},t}function Bc(e,t){let n=h(t),r=n.truthy??["true","1","yes","on","y","enabled"],i=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")r=r.map((v)=>typeof v==="string"?v.toLowerCase():v),i=i.map((v)=>typeof v==="string"?v.toLowerCase():v);let a=new Set(r),o=new Set(i),s=e.Codec??Br,d=e.Boolean??Jr,l=new(e.String??Gt)({type:"string",error:n.error}),c=new d({type:"boolean",error:n.error}),f=new s({type:"pipe",in:l,out:c,transform:(v,p)=>{let y=v;if(n.case!=="sensitive")y=y.toLowerCase();if(a.has(y))return!0;else if(o.has(y))return!1;else return p.issues.push({code:"invalid_value",expected:"stringbool",values:[...a,...o],input:p.value,inst:f,continue:!1}),{}},reverseTransform:(v,p)=>{if(v===!0)return r[0]||"true";else return i[0]||"false"},error:n.error});return f}function Qt(e,t,n,r={}){let i=h(r),a={...h(r),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(o)=>n.test(o),...i};if(n instanceof RegExp)a.pattern=n;return new e(a)}function ct(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??ue,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 N(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a){if(a.count++,n.schemaPath.includes(e))a.cycle=n.path;return a.schema}let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let l={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,l);else{let f=o.schema,v=t.processors[i.type];if(!v)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);v(e,t,f,l)}let c=e._zod.parent;if(c){if(!o.ref)o.ref=c;N(c,t,l),t.seen.get(c).isParent=!0}}let d=t.metadataRegistry.get(e);if(d)Object.assign(o.schema,d);if(t.io==="input"&&X(e))delete o.schema.examples,delete o.schema.default;if(t.io==="input"&&"_prefault"in o.schema)(r=o.schema).default??(r.default=o.schema._prefault);return delete o.schema._prefault,t.seen.get(e).schema}function mt(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let r=new Map;for(let o of e.seen.entries()){let s=e.metadataRegistry.get(o[0])?.id;if(s){let d=r.get(s);if(d&&d!==o[0])throw Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(s,o[0])}}let i=(o)=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let c=e.external.registry.get(o[0])?.id,f=e.external.uri??((p)=>p);if(c)return{ref:f(c)};let v=o[1].defId??o[1].schema.id??`schema${e.counter++}`;return o[1].defId=v,{defId:v,ref:`${f("__shared")}#/${s}/${v}`}}if(o[1]===n)return{ref:"#"};let d=`#/${s}/`,l=o[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:d+l}},a=(o)=>{if(o[1].schema.$ref)return;let s=o[1],{ref:d,defId:l}=i(o);if(s.def={...s.schema},l)s.defId=l;let c=s.schema;for(let f in c)delete c[f];c.$ref=d};if(e.cycles==="throw")for(let o of e.seen.entries()){let s=o[1];if(s.cycle)throw Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
|
|
16
16
|
|
|
17
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of e.seen.entries()){let s=o[1];if(t===o[0]){a(o);continue}if(e.external){let d=e.external.registry.get(o[0])?.id;if(t!==o[0]&&d){a(o);continue}}if(e.metadataRegistry.get(o[0])?.id){a(o);continue}if(s.cycle){a(o);continue}if(s.count>1){if(e.reused==="ref"){a(o);continue}}}}function ft(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let r=(s)=>{let d=e.seen.get(s);if(d.ref===null)return;let l=d.def??d.schema,c={...l},f=d.ref;if(d.ref=null,f){r(f);let p=e.seen.get(f),y=p.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))l.allOf=l.allOf??[],l.allOf.push(y);else Object.assign(l,y);if(Object.assign(l,c),s._zod.parent===f)for(let I in l){if(I==="$ref"||I==="allOf")continue;if(!(I in c))delete l[I]}if(y.$ref&&p.def)for(let I in l){if(I==="$ref"||I==="allOf")continue;if(I in p.def&&JSON.stringify(l[I])===JSON.stringify(p.def[I]))delete l[I]}}let v=s._zod.parent;if(v&&v!==f){r(v);let p=e.seen.get(v);if(p?.schema.$ref){if(l.$ref=p.schema.$ref,p.def)for(let y in l){if(y==="$ref"||y==="allOf")continue;if(y in p.def&&JSON.stringify(l[y])===JSON.stringify(p.def[y]))delete l[y]}}}e.override({zodSchema:s,jsonSchema:l,path:d.path??[]})};for(let s of[...e.seen.entries()].reverse())r(s[0]);let i={};if(e.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(s)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&i.id===a)delete i.id;let o=e.external?.defs??{};for(let s of e.seen.entries()){let d=s[1];if(d.def&&d.defId){if(d.def.id===d.defId)delete d.def.id;o[d.defId]=d.def}}if(e.external);else if(Object.keys(o).length>0)if(e.target==="draft-2020-12")i.$defs=o;else i.definitions=o;try{let s=JSON.parse(JSON.stringify(i));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:Nt(t,"input",e.processors),output:Nt(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch(s){throw Error("Error converting schema to JSON.")}}function X(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return X(r.element,n);if(r.type==="set")return X(r.valueType,n);if(r.type==="lazy")return X(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return X(r.innerType,n);if(r.type==="intersection")return X(r.left,n)||X(r.right,n);if(r.type==="record"||r.type==="map")return X(r.keyType,n)||X(r.valueType,n);if(r.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return X(r.in,n)||X(r.out,n)}if(r.type==="object"){for(let i in r.shape)if(X(r.shape[i],n))return!0;return!1}if(r.type==="union"){for(let i of r.options)if(X(i,n))return!0;return!1}if(r.type==="tuple"){for(let i of r.items)if(X(i,n))return!0;if(r.rest&&X(r.rest,n))return!0;return!1}return!1}function Tm(e,t){if("_idmap"in e){let r=e,i=ct({...t,processors:dr}),a={};for(let d of r._idmap.entries()){let[l,c]=d;N(c,i)}let o={},s={registry:r,uri:t?.uri,defs:a};i.external=s;for(let d of r._idmap.entries()){let[l,c]=d;mt(i,c),o[l]=ft(i,c)}if(Object.keys(a).length>0){let d=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[d]:a}}return{schemas:o}}let n=ct({...t,processors:dr});return N(e,n),mt(n,e),ft(n,e)}class jm{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=ct({processors:dr,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return N(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}mt(this.ctx,e);let n=ft(this.ctx,e),{"~standard":r,...i}=n;return i}}function Dm(e){return cc(Sa,e)}function Am(e){return mc(Ia,e)}function Zm(e){return fc(xa,e)}function Cm(e){return pc(za,e)}function qt(e,t,n){let r=Object.getPrototypeOf(e),i=Bs.get(r);if(!i)i=new Set,Bs.set(r,i);if(i.has(t))return;i.add(t);for(let a in n){let o=n[a];Object.defineProperty(r,a,{configurable:!0,enumerable:!1,get(){let s=o.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}function Dt(e){return sc(ei,e)}function Qm(e){return Yr(on,e)}function qm(e){return Di(At,e)}function ef(e){return Vr($e,e)}function tf(e){return Qr($e,e)}function nf(e){return qr($e,e)}function rf(e){return ea($e,e)}function af(e){return Wi(ti,e)}function of(e){return Wi(ti,{protocol:Ee.httpProtocol,hostname:Ee.domain,...O.normalizeParams(e)})}function sf(e){return ta(sn,e)}function uf(e){return ia(un,e)}function lf(e){return na(ln,e)}function df(e){return ra(dn,e)}function cf(e){return aa(cn,e)}function mf(e){return oa(mn,e)}function ff(e){return sa(fn,e)}function pf(e){return ua(pn,e)}function vf(e){return lc(Ua,e)}function gf(e){return la(vn,e)}function hf(e){return da(gn,e)}function yf(e){return ca(hn,e)}function bf(e){return ma(yn,e)}function $f(e){return fa(bn,e)}function _f(e){return pa($n,e)}function kf(e){return va(_n,e)}function wf(e,t,n={}){return Qt(ht,e,t,n)}function Sf(e){return Qt(ht,"hostname",Ee.hostname,e)}function If(e){return Qt(ht,"hex",Ee.hex,e)}function xf(e,t){let n=t?.enc??"hex",r=`${e}_${n}`,i=Ee[r];if(!i)throw Error(`Unrecognized hash format: ${r}`);return Qt(ht,r,i,t)}function Oa(e){return vc(ii,e)}function Ai(e){return hc(Xe,e)}function zf(e){return yc(Xe,e)}function Uf(e){return bc(Xe,e)}function Of(e){return $c(Xe,e)}function Ef(e){return _c(Xe,e)}function Ea(e){return kc(ni,e)}function Tf(e){return Sc(ri,e)}function jf(e){return xc(kn,e)}function Pf(e){return zc(kn,e)}function Nf(e){return Uc(Ta,e)}function Df(e){return Oc(ja,e)}function Na(e){return Ec(Pa,e)}function Af(){return Tc(Da)}function He(){return jc(Aa)}function wn(e){return Pc(Za,e)}function Zf(e){return Nc(Ca,e)}function Cf(e){return Dc(Sn,e)}function ai(e,t){return Cc(Ra,e,t)}function Rf(e){let t=e._zod.def.shape;return xn(Object.keys(t))}function Lf(e,t){let n={type:"object",shape:e??{},...O.normalizeParams(t)};return new oi(n)}function Mf(e,t){return new oi({type:"object",shape:e,catchall:wn(),...O.normalizeParams(t)})}function Ff(e,t){return new oi({type:"object",shape:e,catchall:He(),...O.normalizeParams(t)})}function In(e,t){return new si({type:"union",options:e,...O.normalizeParams(t)})}function Jf(e,t){return new La({type:"union",options:e,inclusive:!1,...O.normalizeParams(t)})}function Kf(e,t,n){return new Ma({type:"union",options:t,discriminator:e,...O.normalizeParams(n)})}function Ja(e,t){return new Fa({type:"intersection",left:e,right:t})}function Wa(e,t,n){let r=t instanceof x,i=r?n:t;return new Ka({type:"tuple",items:e,rest:r?t:null,...O.normalizeParams(i)})}function Ha(e,t,n){if(!t||!t._zod)return new pt({type:"record",keyType:Dt(),valueType:e,...O.normalizeParams(t)});return new pt({type:"record",keyType:e,valueType:t,...O.normalizeParams(n)})}function Wf(e,t,n){let r=de(e);return r._zod.values=void 0,new pt({type:"record",keyType:r,valueType:t,...O.normalizeParams(n)})}function Hf(e,t,n){return new pt({type:"record",keyType:e,valueType:t,mode:"loose",...O.normalizeParams(n)})}function Bf(e,t,n){return new Ba({type:"map",keyType:e,valueType:t,...O.normalizeParams(n)})}function Gf(e,t){return new Ga({type:"set",valueType:e,...O.normalizeParams(t)})}function xn(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((r)=>[r,r])):e;return new vt({type:"enum",entries:n,...O.normalizeParams(t)})}function Xf(e,t){return new vt({type:"enum",entries:e,...O.normalizeParams(t)})}function Yf(e,t){return new Xa({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}function Vf(e){return Rc(Ya,e)}function zn(e){return new Va({type:"transform",transform:e})}function Zt(e){return new Un({type:"optional",innerType:e})}function qa(e){return new Qa({type:"optional",innerType:e})}function Ct(e){return new eo({type:"nullable",innerType:e})}function Qf(e){return Zt(Ct(e))}function io(e,t){return new to({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}function ro(e,t){return new no({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}function ao(e,t){return new On({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}function qf(e){return new oo({type:"success",innerType:e})}function uo(e,t){return new so({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}function ep(e){return Zc(lo,e)}function Zi(e,t){return new ui({type:"pipe",in:e,out:t})}function tp(e,t,n){return new li({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function ip(e){let t=e._zod.def;return new li({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}function fo(e){return new mo({type:"readonly",innerType:e})}function np(e,t){return new po({type:"template_literal",parts:e,...O.normalizeParams(t)})}function go(e){return new vo({type:"lazy",getter:e})}function rp(e){return new ho({type:"promise",innerType:e})}function Ci(e){return new yo({type:"function",input:Array.isArray(e?.input)?Wa(e?.input):e?.input??ai(He()),output:e?.output??He()})}function ap(e){let t=new L({check:"custom"});return t._zod.check=e,t}function op(e,t){return Lc(di,e??(()=>!0),t)}function bo(e,t={}){return Mc(di,e,t)}function $o(e,t){return Fc(e,t)}function lp(e,t={}){let n=new di({type:"custom",check:"custom",fn:(r)=>r instanceof e,abort:!0,...O.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(r)=>{if(!(r.value instanceof e))r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}function cp(e){let t=go(()=>{return In([Dt(e),Oa(),Ea(),Na(),ai(t),Ha(Dt(),t)])});return t}function mp(e,t){return new co({type:"pipe",in:zn(e),out:t})}function D_(e){W({customError:e})}function A_(){return W().customError}function C_(e,t){let n=e.$schema;if(n==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(n==="http://json-schema.org/draft-07/schema#")return"draft-7";if(n==="http://json-schema.org/draft-04/schema#")return"draft-4";return t??"draft-2020-12"}function R_(e,t){if(!e.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let r=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===r){let i=n[1];if(!i||!t.defs[i])throw Error(`Reference not found: ${e}`);return t.defs[i]}throw Error(`Reference not found: ${e}`)}function fp(e,t){if(e.not!==void 0){if(typeof e.not==="object"&&Object.keys(e.not).length===0)return b.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let i=e.$ref;if(t.refs.has(i))return t.refs.get(i);if(t.processing.has(i))return b.lazy(()=>{if(!t.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return t.refs.get(i)});t.processing.add(i);let a=R_(i,t),o=B(a,t);return t.refs.set(i,o),t.processing.delete(i),o}if(e.enum!==void 0){let i=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&i.length===1&&i[0]===null)return b.null();if(i.length===0)return b.never();if(i.length===1)return b.literal(i[0]);if(i.every((o)=>typeof o==="string"))return b.enum(i);let a=i.map((o)=>b.literal(o));if(a.length<2)return a[0];return b.union([a[0],a[1],...a.slice(2)])}if(e.const!==void 0)return b.literal(e.const);let n=e.type;if(Array.isArray(n)){let i=n.map((a)=>{let o={...e,type:a};return fp(o,t)});if(i.length===0)return b.never();if(i.length===1)return i[0];return b.union(i)}if(!n)return b.any();let r;switch(n){case"string":{let i=b.string();if(e.format){let a=e.format;if(a==="email")i=i.check(b.email());else if(a==="uri"||a==="uri-reference")i=i.check(b.url());else if(a==="uuid"||a==="guid")i=i.check(b.uuid());else if(a==="date-time")i=i.check(b.iso.datetime());else if(a==="date")i=i.check(b.iso.date());else if(a==="time")i=i.check(b.iso.time());else if(a==="duration")i=i.check(b.iso.duration());else if(a==="ipv4")i=i.check(b.ipv4());else if(a==="ipv6")i=i.check(b.ipv6());else if(a==="mac")i=i.check(b.mac());else if(a==="cidr")i=i.check(b.cidrv4());else if(a==="cidr-v6")i=i.check(b.cidrv6());else if(a==="base64")i=i.check(b.base64());else if(a==="base64url")i=i.check(b.base64url());else if(a==="e164")i=i.check(b.e164());else if(a==="jwt")i=i.check(b.jwt());else if(a==="emoji")i=i.check(b.emoji());else if(a==="nanoid")i=i.check(b.nanoid());else if(a==="cuid")i=i.check(b.cuid());else if(a==="cuid2")i=i.check(b.cuid2());else if(a==="ulid")i=i.check(b.ulid());else if(a==="xid")i=i.check(b.xid());else if(a==="ksuid")i=i.check(b.ksuid())}if(typeof e.minLength==="number")i=i.min(e.minLength);if(typeof e.maxLength==="number")i=i.max(e.maxLength);if(e.pattern)i=i.regex(new RegExp(e.pattern));r=i;break}case"number":case"integer":{let i=n==="integer"?b.number().int():b.number();if(typeof e.minimum==="number")i=i.min(e.minimum);if(typeof e.maximum==="number")i=i.max(e.maximum);if(typeof e.exclusiveMinimum==="number")i=i.gt(e.exclusiveMinimum);else if(e.exclusiveMinimum===!0&&typeof e.minimum==="number")i=i.gt(e.minimum);if(typeof e.exclusiveMaximum==="number")i=i.lt(e.exclusiveMaximum);else if(e.exclusiveMaximum===!0&&typeof e.maximum==="number")i=i.lt(e.maximum);if(typeof e.multipleOf==="number")i=i.multipleOf(e.multipleOf);r=i;break}case"boolean":{r=b.boolean();break}case"null":{r=b.null();break}case"object":{let i={},a=e.properties||{},o=new Set(e.required||[]);for(let[d,l]of Object.entries(a)){let c=B(l,t);i[d]=o.has(d)?c:c.optional()}if(e.propertyNames){let d=B(e.propertyNames,t),l=e.additionalProperties&&typeof e.additionalProperties==="object"?B(e.additionalProperties,t):b.any();if(Object.keys(i).length===0){r=b.record(d,l);break}let c=b.object(i).passthrough(),f=b.looseRecord(d,l);r=b.intersection(c,f);break}if(e.patternProperties){let d=e.patternProperties,l=Object.keys(d),c=[];for(let v of l){let p=B(d[v],t),y=b.string().regex(new RegExp(v));c.push(b.looseRecord(y,p))}let f=[];if(Object.keys(i).length>0)f.push(b.object(i).passthrough());if(f.push(...c),f.length===0)r=b.object({}).passthrough();else if(f.length===1)r=f[0];else{let v=b.intersection(f[0],f[1]);for(let p=2;p<f.length;p++)v=b.intersection(v,f[p]);r=v}break}let s=b.object(i);if(e.additionalProperties===!1)r=s.strict();else if(typeof e.additionalProperties==="object")r=s.catchall(B(e.additionalProperties,t));else r=s.passthrough();break}case"array":{let{prefixItems:i,items:a}=e;if(i&&Array.isArray(i)){let o=i.map((d)=>B(d,t)),s=a&&typeof a==="object"&&!Array.isArray(a)?B(a,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(Array.isArray(a)){let o=a.map((d)=>B(d,t)),s=e.additionalItems&&typeof e.additionalItems==="object"?B(e.additionalItems,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(a!==void 0){let o=B(a,t),s=b.array(o);if(typeof e.minItems==="number")s=s.min(e.minItems);if(typeof e.maxItems==="number")s=s.max(e.maxItems);r=s}else r=b.array(b.any());break}default:throw Error(`Unsupported type: ${n}`)}return r}function B(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n=fp(e,t),r=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map((l)=>B(l,t)),d=b.union(s);n=r?b.intersection(n,d):d}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map((l)=>B(l,t)),d=b.xor(s);n=r?b.intersection(n,d):d}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=r?n:b.any();else{let s=r?n:B(e.allOf[0],t),d=r?0:1;for(let l=d;l<e.allOf.length;l++)s=b.intersection(s,B(e.allOf[l],t));n=s}if(e.nullable===!0&&t.version==="openapi-3.0")n=b.nullable(n);if(e.readOnly===!0)n=b.readonly(n);if(e.default!==void 0)n=n.default(e.default);let i={},a=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of a)if(s in e)i[s]=e[s];let o=["contentEncoding","contentMediaType","contentSchema"];for(let s of o)if(s in e)i[s]=e[s];for(let s of Object.keys(e))if(!Z_.has(s))i[s]=e[s];if(Object.keys(i).length>0)t.registry.add(n,i);if(e.description)n=n.describe(e.description);return n}function L_(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let r=C_(n,t?.defaultTarget),i=n.$defs||n.definitions||{},a={version:r,defs:i,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??ue};return B(n,a)}function M_(e){return uc(ei,e)}function F_(e){return gc(ii,e)}function J_(e){return wc(ni,e)}function K_(e){return Ic(ri,e)}function W_(e){return Ac(Sn,e)}function Hp(e){Wp.push(e)}async function tk(){let e=Wp.splice(0);await Promise.all(e.map((t)=>{try{return(typeof t==="function"?t():t.dispose())??Promise.resolve()}catch{return Promise.resolve()}}))}function Bp(e,t){return e.name||`extension_${String(t).padStart(4,"0")}`}function Gs(e){return Array.isArray(e)&&e.every((t)=>typeof t==="string")}function Xs(e){if(!Array.isArray(e))return;let t=e.filter((n)=>typeof n==="string").map((n)=>n.trim()).filter((n)=>n.length>0);return t.length>0?t:void 0}function Gp(e){let t=Xs(e.providerIds),n=Xs(e.modelIds);return{...e,...t?{providerIds:t}:{},...n?{modelIds:n}:{}}}function rk(e,t){let n=Bp(e,t),r=e.manifest;if(!r||typeof r!=="object")throw Error(`Invalid manifest for extension "${n}": manifest is required`);if(!Array.isArray(r.capabilities)||r.capabilities.length===0)throw Error(`Invalid manifest for extension "${n}": capabilities must be a non-empty array`);let i=new Set;for(let o of r.capabilities){if(!nk.has(o))throw Error(`Invalid manifest for extension "${n}": unsupported capability "${String(o)}"`);i.add(o)}if(Object.hasOwn(r,"providerIds")&&!Gs(r.providerIds))throw Error(`Invalid manifest for extension "${n}": providerIds must be a string array when provided`);if(Object.hasOwn(r,"modelIds")&&!Gs(r.modelIds))throw Error(`Invalid manifest for extension "${n}": modelIds must be a string array when provided`);let a=i.has("hooks");if(e.hooks!==void 0&&!a)throw Error(`Invalid manifest for extension "${n}": runtime hooks require the "hooks" capability`);return{capabilities:i,raw:Gp(r)}}function ak(e,t){if(!e||typeof e!=="object")throw Error(`Invalid automation event contribution for extension "${t}": expected object`);let n=typeof e.eventType==="string"?e.eventType.trim():"",r=typeof e.source==="string"?e.source.trim():"";if(!n)throw Error(`Invalid automation event contribution for extension "${t}": eventType is required`);if(!r)throw Error(`Invalid automation event contribution for extension "${t}": source is required`);return{...e,eventType:n,source:r,examples:e.examples?[...e.examples]:void 0,metadata:e.metadata?{...e.metadata}:void 0}}class wo{extensions;registry={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[]};normalized=[];phase="resolve";setupContext;constructor(e={}){this.extensions=e.extensions??[],this.setupContext=e.setupContext??{}}resolve(){if(this.phase!=="resolve")return;this.normalized=this.extensions.map((e,t)=>({extension:e,order:t,manifest:{capabilities:new Set,raw:e.manifest}})),this.phase="validate"}validate(){if(this.phase==="resolve")this.resolve();if(this.phase!=="validate")return;this.normalized=this.normalized.map((e)=>({...e,manifest:rk(e.extension,e.order)})),this.phase="setup"}async setup(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase!=="setup")return;for(let e of this.normalized){let{extension:t}=e;if(t.disabled)continue;let n=Bp(t,e.order),r={registerTool:(a)=>this.registry.tools.push(a),registerCommand:(a)=>this.registry.commands.push(a),registerRule:(a)=>{if(!e.manifest.capabilities.has("rules"))throw Error(`Invalid setup for extension "${n}": registerRule requires the "rules" capability`);this.registry.rules.push(a)},registerMessageBuilder:(a)=>this.registry.messageBuilder.push(a),registerProvider:(a)=>this.registry.providers.push(a),registerAutomationEventType:(a)=>{if(!e.manifest.capabilities.has("automationEvents"))throw Error(`Invalid setup for extension "${n}": registerAutomationEventType requires the "automationEvents" capability`);this.registry.automationEventTypes.push(ak(a,n))}},i=e.manifest.capabilities.has("automationEvents")?this.setupContext:{...this.setupContext,automation:void 0};await t.setup?.(r,i)}this.phase="activate"}activate(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase==="setup")throw Error("Contribution registry setup must complete before activation");if(this.phase!=="activate")return;this.phase="run"}async initialize(){this.resolve(),this.validate(),await this.setup(),this.activate()}isActivated(){return this.phase==="run"}getRegistrySnapshot(){return{tools:[...this.registry.tools],commands:[...this.registry.commands],rules:[...this.registry.rules],messageBuilder:[...this.registry.messageBuilder],providers:[...this.registry.providers],automationEventTypes:[...this.registry.automationEventTypes]}}getRegisteredTools(){return[...this.registry.tools]}getRegisteredRules(){return[...this.registry.rules]}getRegisteredAutomationEventTypes(){return[...this.registry.automationEventTypes]}getValidatedExtensions(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();return this.normalized.slice().sort((e,t)=>e.order-t.order).map(({extension:e})=>e)}}function ok(e={}){return new wo(e)}function gk(e){let t=Yp.safeParse(e);if(!t.success)return;return t.data}function Vp(e){switch(e){case"run.start":case"session.send_input":return null;default:return 30000}}function bk(e,t){return t===void 0?Vp(e):t}function _k(e){return typeof e==="string"&&$k.has(e)}function qp(e,t){return`<file_content path="${e}">
|
|
17
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of e.seen.entries()){let s=o[1];if(t===o[0]){a(o);continue}if(e.external){let d=e.external.registry.get(o[0])?.id;if(t!==o[0]&&d){a(o);continue}}if(e.metadataRegistry.get(o[0])?.id){a(o);continue}if(s.cycle){a(o);continue}if(s.count>1){if(e.reused==="ref"){a(o);continue}}}}function ft(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let r=(s)=>{let d=e.seen.get(s);if(d.ref===null)return;let l=d.def??d.schema,c={...l},f=d.ref;if(d.ref=null,f){r(f);let p=e.seen.get(f),y=p.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))l.allOf=l.allOf??[],l.allOf.push(y);else Object.assign(l,y);if(Object.assign(l,c),s._zod.parent===f)for(let I in l){if(I==="$ref"||I==="allOf")continue;if(!(I in c))delete l[I]}if(y.$ref&&p.def)for(let I in l){if(I==="$ref"||I==="allOf")continue;if(I in p.def&&JSON.stringify(l[I])===JSON.stringify(p.def[I]))delete l[I]}}let v=s._zod.parent;if(v&&v!==f){r(v);let p=e.seen.get(v);if(p?.schema.$ref){if(l.$ref=p.schema.$ref,p.def)for(let y in l){if(y==="$ref"||y==="allOf")continue;if(y in p.def&&JSON.stringify(l[y])===JSON.stringify(p.def[y]))delete l[y]}}}e.override({zodSchema:s,jsonSchema:l,path:d.path??[]})};for(let s of[...e.seen.entries()].reverse())r(s[0]);let i={};if(e.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(s)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&i.id===a)delete i.id;let o=e.external?.defs??{};for(let s of e.seen.entries()){let d=s[1];if(d.def&&d.defId){if(d.def.id===d.defId)delete d.def.id;o[d.defId]=d.def}}if(e.external);else if(Object.keys(o).length>0)if(e.target==="draft-2020-12")i.$defs=o;else i.definitions=o;try{let s=JSON.parse(JSON.stringify(i));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:Nt(t,"input",e.processors),output:Nt(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch(s){throw Error("Error converting schema to JSON.")}}function X(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return X(r.element,n);if(r.type==="set")return X(r.valueType,n);if(r.type==="lazy")return X(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return X(r.innerType,n);if(r.type==="intersection")return X(r.left,n)||X(r.right,n);if(r.type==="record"||r.type==="map")return X(r.keyType,n)||X(r.valueType,n);if(r.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return X(r.in,n)||X(r.out,n)}if(r.type==="object"){for(let i in r.shape)if(X(r.shape[i],n))return!0;return!1}if(r.type==="union"){for(let i of r.options)if(X(i,n))return!0;return!1}if(r.type==="tuple"){for(let i of r.items)if(X(i,n))return!0;if(r.rest&&X(r.rest,n))return!0;return!1}return!1}function jm(e,t){if("_idmap"in e){let r=e,i=ct({...t,processors:cr}),a={};for(let d of r._idmap.entries()){let[l,c]=d;N(c,i)}let o={},s={registry:r,uri:t?.uri,defs:a};i.external=s;for(let d of r._idmap.entries()){let[l,c]=d;mt(i,c),o[l]=ft(i,c)}if(Object.keys(a).length>0){let d=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[d]:a}}return{schemas:o}}let n=ct({...t,processors:cr});return N(e,n),mt(n,e),ft(n,e)}class Pm{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=ct({processors:cr,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return N(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}mt(this.ctx,e);let n=ft(this.ctx,e),{"~standard":r,...i}=n;return i}}function Am(e){return mc(Ia,e)}function Zm(e){return fc(xa,e)}function Cm(e){return pc(za,e)}function Rm(e){return vc(Ua,e)}function qt(e,t,n){let r=Object.getPrototypeOf(e),i=Gs.get(r);if(!i)i=new Set,Gs.set(r,i);if(i.has(t))return;i.add(t);for(let a in n){let o=n[a];Object.defineProperty(r,a,{configurable:!0,enumerable:!1,get(){let s=o.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}function Dt(e){return uc(ei,e)}function qm(e){return Vr(on,e)}function ef(e){return Di(At,e)}function tf(e){return Qr($e,e)}function nf(e){return qr($e,e)}function rf(e){return ea($e,e)}function af(e){return ta($e,e)}function of(e){return Wi(ti,e)}function sf(e){return Wi(ti,{protocol:Ee.httpProtocol,hostname:Ee.domain,...O.normalizeParams(e)})}function uf(e){return ia(sn,e)}function lf(e){return na(un,e)}function df(e){return ra(ln,e)}function cf(e){return aa(dn,e)}function mf(e){return oa(cn,e)}function ff(e){return sa(mn,e)}function pf(e){return ua(fn,e)}function vf(e){return la(pn,e)}function gf(e){return dc(Oa,e)}function hf(e){return da(vn,e)}function yf(e){return ca(gn,e)}function bf(e){return ma(hn,e)}function $f(e){return fa(yn,e)}function _f(e){return pa(bn,e)}function kf(e){return va($n,e)}function wf(e){return ga(_n,e)}function Sf(e,t,n={}){return Qt(ht,e,t,n)}function If(e){return Qt(ht,"hostname",Ee.hostname,e)}function xf(e){return Qt(ht,"hex",Ee.hex,e)}function zf(e,t){let n=t?.enc??"hex",r=`${e}_${n}`,i=Ee[r];if(!i)throw Error(`Unrecognized hash format: ${r}`);return Qt(ht,r,i,t)}function Ea(e){return gc(ii,e)}function Ai(e){return yc(Xe,e)}function Uf(e){return bc(Xe,e)}function Of(e){return $c(Xe,e)}function Ef(e){return _c(Xe,e)}function Tf(e){return kc(Xe,e)}function Ta(e){return wc(ni,e)}function jf(e){return Ic(ri,e)}function Pf(e){return zc(kn,e)}function Nf(e){return Uc(kn,e)}function Df(e){return Oc(ja,e)}function Af(e){return Ec(Pa,e)}function Da(e){return Tc(Na,e)}function Zf(){return jc(Aa)}function He(){return Pc(Za)}function wn(e){return Nc(Ca,e)}function Cf(e){return Dc(Ra,e)}function Rf(e){return Ac(Sn,e)}function ai(e,t){return Rc(La,e,t)}function Lf(e){let t=e._zod.def.shape;return xn(Object.keys(t))}function Mf(e,t){let n={type:"object",shape:e??{},...O.normalizeParams(t)};return new oi(n)}function Jf(e,t){return new oi({type:"object",shape:e,catchall:wn(),...O.normalizeParams(t)})}function Ff(e,t){return new oi({type:"object",shape:e,catchall:He(),...O.normalizeParams(t)})}function In(e,t){return new si({type:"union",options:e,...O.normalizeParams(t)})}function Kf(e,t){return new Ma({type:"union",options:e,inclusive:!1,...O.normalizeParams(t)})}function Wf(e,t,n){return new Ja({type:"union",options:t,discriminator:e,...O.normalizeParams(n)})}function Ka(e,t){return new Fa({type:"intersection",left:e,right:t})}function Ha(e,t,n){let r=t instanceof x,i=r?n:t;return new Wa({type:"tuple",items:e,rest:r?t:null,...O.normalizeParams(i)})}function Ba(e,t,n){if(!t||!t._zod)return new pt({type:"record",keyType:Dt(),valueType:e,...O.normalizeParams(t)});return new pt({type:"record",keyType:e,valueType:t,...O.normalizeParams(n)})}function Hf(e,t,n){let r=de(e);return r._zod.values=void 0,new pt({type:"record",keyType:r,valueType:t,...O.normalizeParams(n)})}function Bf(e,t,n){return new pt({type:"record",keyType:e,valueType:t,mode:"loose",...O.normalizeParams(n)})}function Gf(e,t,n){return new Ga({type:"map",keyType:e,valueType:t,...O.normalizeParams(n)})}function Xf(e,t){return new Xa({type:"set",valueType:e,...O.normalizeParams(t)})}function xn(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((r)=>[r,r])):e;return new vt({type:"enum",entries:n,...O.normalizeParams(t)})}function Yf(e,t){return new vt({type:"enum",entries:e,...O.normalizeParams(t)})}function Vf(e,t){return new Ya({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}function Qf(e){return Lc(Va,e)}function zn(e){return new Qa({type:"transform",transform:e})}function Zt(e){return new Un({type:"optional",innerType:e})}function eo(e){return new qa({type:"optional",innerType:e})}function Ct(e){return new to({type:"nullable",innerType:e})}function qf(e){return Zt(Ct(e))}function no(e,t){return new io({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}function ao(e,t){return new ro({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}function oo(e,t){return new On({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}function ep(e){return new so({type:"success",innerType:e})}function lo(e,t){return new uo({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}function tp(e){return Cc(co,e)}function Zi(e,t){return new ui({type:"pipe",in:e,out:t})}function ip(e,t,n){return new li({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function np(e){let t=e._zod.def;return new li({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}function po(e){return new fo({type:"readonly",innerType:e})}function rp(e,t){return new vo({type:"template_literal",parts:e,...O.normalizeParams(t)})}function ho(e){return new go({type:"lazy",getter:e})}function ap(e){return new yo({type:"promise",innerType:e})}function Ci(e){return new bo({type:"function",input:Array.isArray(e?.input)?Ha(e?.input):e?.input??ai(He()),output:e?.output??He()})}function op(e){let t=new L({check:"custom"});return t._zod.check=e,t}function sp(e,t){return Mc(di,e??(()=>!0),t)}function $o(e,t={}){return Jc(di,e,t)}function _o(e,t){return Fc(e,t)}function dp(e,t={}){let n=new di({type:"custom",check:"custom",fn:(r)=>r instanceof e,abort:!0,...O.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(r)=>{if(!(r.value instanceof e))r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}function mp(e){let t=ho(()=>{return In([Dt(e),Ea(),Ta(),Da(),ai(t),Ba(Dt(),t)])});return t}function fp(e,t){return new mo({type:"pipe",in:zn(e),out:t})}function D_(e){W({customError:e})}function A_(){return W().customError}function C_(e,t){let n=e.$schema;if(n==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(n==="http://json-schema.org/draft-07/schema#")return"draft-7";if(n==="http://json-schema.org/draft-04/schema#")return"draft-4";return t??"draft-2020-12"}function R_(e,t){if(!e.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let r=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===r){let i=n[1];if(!i||!t.defs[i])throw Error(`Reference not found: ${e}`);return t.defs[i]}throw Error(`Reference not found: ${e}`)}function pp(e,t){if(e.not!==void 0){if(typeof e.not==="object"&&Object.keys(e.not).length===0)return b.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let i=e.$ref;if(t.refs.has(i))return t.refs.get(i);if(t.processing.has(i))return b.lazy(()=>{if(!t.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return t.refs.get(i)});t.processing.add(i);let a=R_(i,t),o=B(a,t);return t.refs.set(i,o),t.processing.delete(i),o}if(e.enum!==void 0){let i=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&i.length===1&&i[0]===null)return b.null();if(i.length===0)return b.never();if(i.length===1)return b.literal(i[0]);if(i.every((o)=>typeof o==="string"))return b.enum(i);let a=i.map((o)=>b.literal(o));if(a.length<2)return a[0];return b.union([a[0],a[1],...a.slice(2)])}if(e.const!==void 0)return b.literal(e.const);let n=e.type;if(Array.isArray(n)){let i=n.map((a)=>{let o={...e,type:a};return pp(o,t)});if(i.length===0)return b.never();if(i.length===1)return i[0];return b.union(i)}if(!n)return b.any();let r;switch(n){case"string":{let i=b.string();if(e.format){let a=e.format;if(a==="email")i=i.check(b.email());else if(a==="uri"||a==="uri-reference")i=i.check(b.url());else if(a==="uuid"||a==="guid")i=i.check(b.uuid());else if(a==="date-time")i=i.check(b.iso.datetime());else if(a==="date")i=i.check(b.iso.date());else if(a==="time")i=i.check(b.iso.time());else if(a==="duration")i=i.check(b.iso.duration());else if(a==="ipv4")i=i.check(b.ipv4());else if(a==="ipv6")i=i.check(b.ipv6());else if(a==="mac")i=i.check(b.mac());else if(a==="cidr")i=i.check(b.cidrv4());else if(a==="cidr-v6")i=i.check(b.cidrv6());else if(a==="base64")i=i.check(b.base64());else if(a==="base64url")i=i.check(b.base64url());else if(a==="e164")i=i.check(b.e164());else if(a==="jwt")i=i.check(b.jwt());else if(a==="emoji")i=i.check(b.emoji());else if(a==="nanoid")i=i.check(b.nanoid());else if(a==="cuid")i=i.check(b.cuid());else if(a==="cuid2")i=i.check(b.cuid2());else if(a==="ulid")i=i.check(b.ulid());else if(a==="xid")i=i.check(b.xid());else if(a==="ksuid")i=i.check(b.ksuid())}if(typeof e.minLength==="number")i=i.min(e.minLength);if(typeof e.maxLength==="number")i=i.max(e.maxLength);if(e.pattern)i=i.regex(new RegExp(e.pattern));r=i;break}case"number":case"integer":{let i=n==="integer"?b.number().int():b.number();if(typeof e.minimum==="number")i=i.min(e.minimum);if(typeof e.maximum==="number")i=i.max(e.maximum);if(typeof e.exclusiveMinimum==="number")i=i.gt(e.exclusiveMinimum);else if(e.exclusiveMinimum===!0&&typeof e.minimum==="number")i=i.gt(e.minimum);if(typeof e.exclusiveMaximum==="number")i=i.lt(e.exclusiveMaximum);else if(e.exclusiveMaximum===!0&&typeof e.maximum==="number")i=i.lt(e.maximum);if(typeof e.multipleOf==="number")i=i.multipleOf(e.multipleOf);r=i;break}case"boolean":{r=b.boolean();break}case"null":{r=b.null();break}case"object":{let i={},a=e.properties||{},o=new Set(e.required||[]);for(let[d,l]of Object.entries(a)){let c=B(l,t);i[d]=o.has(d)?c:c.optional()}if(e.propertyNames){let d=B(e.propertyNames,t),l=e.additionalProperties&&typeof e.additionalProperties==="object"?B(e.additionalProperties,t):b.any();if(Object.keys(i).length===0){r=b.record(d,l);break}let c=b.object(i).passthrough(),f=b.looseRecord(d,l);r=b.intersection(c,f);break}if(e.patternProperties){let d=e.patternProperties,l=Object.keys(d),c=[];for(let v of l){let p=B(d[v],t),y=b.string().regex(new RegExp(v));c.push(b.looseRecord(y,p))}let f=[];if(Object.keys(i).length>0)f.push(b.object(i).passthrough());if(f.push(...c),f.length===0)r=b.object({}).passthrough();else if(f.length===1)r=f[0];else{let v=b.intersection(f[0],f[1]);for(let p=2;p<f.length;p++)v=b.intersection(v,f[p]);r=v}break}let s=b.object(i);if(e.additionalProperties===!1)r=s.strict();else if(typeof e.additionalProperties==="object")r=s.catchall(B(e.additionalProperties,t));else r=s.passthrough();break}case"array":{let{prefixItems:i,items:a}=e;if(i&&Array.isArray(i)){let o=i.map((d)=>B(d,t)),s=a&&typeof a==="object"&&!Array.isArray(a)?B(a,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(Array.isArray(a)){let o=a.map((d)=>B(d,t)),s=e.additionalItems&&typeof e.additionalItems==="object"?B(e.additionalItems,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(a!==void 0){let o=B(a,t),s=b.array(o);if(typeof e.minItems==="number")s=s.min(e.minItems);if(typeof e.maxItems==="number")s=s.max(e.maxItems);r=s}else r=b.array(b.any());break}default:throw Error(`Unsupported type: ${n}`)}return r}function B(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n=pp(e,t),r=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map((l)=>B(l,t)),d=b.union(s);n=r?b.intersection(n,d):d}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map((l)=>B(l,t)),d=b.xor(s);n=r?b.intersection(n,d):d}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=r?n:b.any();else{let s=r?n:B(e.allOf[0],t),d=r?0:1;for(let l=d;l<e.allOf.length;l++)s=b.intersection(s,B(e.allOf[l],t));n=s}if(e.nullable===!0&&t.version==="openapi-3.0")n=b.nullable(n);if(e.readOnly===!0)n=b.readonly(n);if(e.default!==void 0)n=n.default(e.default);let i={},a=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of a)if(s in e)i[s]=e[s];let o=["contentEncoding","contentMediaType","contentSchema"];for(let s of o)if(s in e)i[s]=e[s];for(let s of Object.keys(e))if(!Z_.has(s))i[s]=e[s];if(Object.keys(i).length>0)t.registry.add(n,i);if(e.description)n=n.describe(e.description);return n}function L_(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let r=C_(n,t?.defaultTarget),i=n.$defs||n.definitions||{},a={version:r,defs:i,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??ue};return B(n,a)}function M_(e){return lc(ei,e)}function J_(e){return hc(ii,e)}function F_(e){return Sc(ni,e)}function K_(e){return xc(ri,e)}function W_(e){return Zc(Sn,e)}function Bp(e){Hp.push(e)}async function tk(){let e=Hp.splice(0);await Promise.all(e.map((t)=>{try{return(typeof t==="function"?t():t.dispose())??Promise.resolve()}catch{return Promise.resolve()}}))}function Gp(e,t){return e.name||`extension_${String(t).padStart(4,"0")}`}function Xs(e){return Array.isArray(e)&&e.every((t)=>typeof t==="string")}function Ys(e){if(!Array.isArray(e))return;let t=e.filter((n)=>typeof n==="string").map((n)=>n.trim()).filter((n)=>n.length>0);return t.length>0?t:void 0}function Xp(e){let t=Ys(e.providerIds),n=Ys(e.modelIds);return{...e,...t?{providerIds:t}:{},...n?{modelIds:n}:{}}}function rk(e,t){let n=Gp(e,t),r=e.manifest;if(!r||typeof r!=="object")throw Error(`Invalid manifest for extension "${n}": manifest is required`);if(!Array.isArray(r.capabilities)||r.capabilities.length===0)throw Error(`Invalid manifest for extension "${n}": capabilities must be a non-empty array`);let i=new Set;for(let o of r.capabilities){if(!nk.has(o))throw Error(`Invalid manifest for extension "${n}": unsupported capability "${String(o)}"`);i.add(o)}if(Object.hasOwn(r,"providerIds")&&!Xs(r.providerIds))throw Error(`Invalid manifest for extension "${n}": providerIds must be a string array when provided`);if(Object.hasOwn(r,"modelIds")&&!Xs(r.modelIds))throw Error(`Invalid manifest for extension "${n}": modelIds must be a string array when provided`);let a=i.has("hooks");if(e.hooks!==void 0&&!a)throw Error(`Invalid manifest for extension "${n}": runtime hooks require the "hooks" capability`);return{capabilities:i,raw:Xp(r)}}function ak(e,t){if(!e||typeof e!=="object")throw Error(`Invalid automation event contribution for extension "${t}": expected object`);let n=typeof e.eventType==="string"?e.eventType.trim():"",r=typeof e.source==="string"?e.source.trim():"";if(!n)throw Error(`Invalid automation event contribution for extension "${t}": eventType is required`);if(!r)throw Error(`Invalid automation event contribution for extension "${t}": source is required`);return{...e,eventType:n,source:r,examples:e.examples?[...e.examples]:void 0,metadata:e.metadata?{...e.metadata}:void 0}}class So{extensions;registry={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[]};normalized=[];phase="resolve";setupContext;constructor(e={}){this.extensions=e.extensions??[],this.setupContext=e.setupContext??{}}resolve(){if(this.phase!=="resolve")return;this.normalized=this.extensions.map((e,t)=>({extension:e,order:t,manifest:{capabilities:new Set,raw:e.manifest}})),this.phase="validate"}validate(){if(this.phase==="resolve")this.resolve();if(this.phase!=="validate")return;this.normalized=this.normalized.map((e)=>({...e,manifest:rk(e.extension,e.order)})),this.phase="setup"}async setup(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase!=="setup")return;for(let e of this.normalized){let{extension:t}=e;if(t.disabled)continue;let n=Gp(t,e.order),r={registerTool:(a)=>this.registry.tools.push(a),registerCommand:(a)=>this.registry.commands.push(a),registerRule:(a)=>{if(!e.manifest.capabilities.has("rules"))throw Error(`Invalid setup for extension "${n}": registerRule requires the "rules" capability`);this.registry.rules.push(a)},registerMessageBuilder:(a)=>this.registry.messageBuilder.push(a),registerProvider:(a)=>this.registry.providers.push(a),registerAutomationEventType:(a)=>{if(!e.manifest.capabilities.has("automationEvents"))throw Error(`Invalid setup for extension "${n}": registerAutomationEventType requires the "automationEvents" capability`);this.registry.automationEventTypes.push(ak(a,n))}},i=e.manifest.capabilities.has("automationEvents")?this.setupContext:{...this.setupContext,automation:void 0};await t.setup?.(r,i)}this.phase="activate"}activate(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase==="setup")throw Error("Contribution registry setup must complete before activation");if(this.phase!=="activate")return;this.phase="run"}async initialize(){this.resolve(),this.validate(),await this.setup(),this.activate()}isActivated(){return this.phase==="run"}getRegistrySnapshot(){return{tools:[...this.registry.tools],commands:[...this.registry.commands],rules:[...this.registry.rules],messageBuilder:[...this.registry.messageBuilder],providers:[...this.registry.providers],automationEventTypes:[...this.registry.automationEventTypes]}}getRegisteredTools(){return[...this.registry.tools]}getRegisteredRules(){return[...this.registry.rules]}getRegisteredAutomationEventTypes(){return[...this.registry.automationEventTypes]}getValidatedExtensions(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();return this.normalized.slice().sort((e,t)=>e.order-t.order).map(({extension:e})=>e)}}function ok(e={}){return new So(e)}function gk(e){let t=Vp.safeParse(e);if(!t.success)return;return t.data}function Qp(e){switch(e){case"run.start":case"session.send_input":return null;default:return 30000}}function bk(e,t){return t===void 0?Qp(e):t}function _k(e){return typeof e==="string"&&$k.has(e)}function ev(e,t){return`<file_content path="${e}">
|
|
18
18
|
${t}
|
|
19
|
-
</file_content>`}function Ok(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function Ek(e,t){return`<user_command slash="${t}">${e}</user_command>`}function Tk(e,t){let n=e.trim(),r=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!r)return;return{attrs:r[1]??"",content:r[2]??""}}function jk(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function
|
|
20
|
-
+`.includes(e)}function
|
|
21
|
-
+`.includes(e)}function
|
|
22
|
-
`||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function
|
|
23
|
-
`)t++;return!0}return!1}function d($){if(l($)){if(
|
|
19
|
+
</file_content>`}function Ok(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function Ek(e,t){return`<user_command slash="${t}">${e}</user_command>`}function Tk(e,t){let n=e.trim(),r=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!r)return;return{attrs:r[1]??"",content:r[2]??""}}function jk(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function tv(e){if(!e?.trim())return;let t=Tk(e,"user_command");if(!t)return;let n=jk(t.attrs,"slash");if(!n)return;return{slash:n,content:t.content.trim()}}function iv(e){if(!e?.trim())return"";let t=e.trim();for(let n of["user_input","user_command"]){let r=nv(t,n);t=(r!==t?r:t.replace(new RegExp(`<${n}[^>]*>`,"g"),"")).trim()}return t}function Pk(e){let t=iv(e),n=tv(e);if(!n)return t;if(n.slash.toLowerCase()==="team"){let r=t.toLowerCase().startsWith("spawn a team of agents for the following task:")?t.slice(46).trim():t;return r?`/team ${r}`:"/team"}return t?`/${n.slash} ${t}`:`/${n.slash}`}function nv(e,t){if(!e?.trim())return"";if(!t)return e;let n=new RegExp(`<${t}\\b[^>]*>([\\s\\S]*?)</${t}>`,"g");return e.replace(n,"$1")}function Q(e){return e.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"�")}function Vs(e,t){let n=e[e.length-1];if(t.role==="tool"&&n?.role==="tool"&&Array.isArray(n.content)&&Array.isArray(t.content)){n.content.push(...t.content);return}e.push(t)}function Nk(e){if(!Array.isArray(e)||e.length===0)return!1;return e.every((t)=>{if(!t||typeof t!=="object")return!1;let n=t;if(n.type==="text")return typeof n.text==="string";if(n.type==="image")return typeof n.data==="string"&&typeof n.mediaType==="string";return!1})}function vr(e,t){if(e==null||typeof e!=="object")return e;if(Array.isArray(e)){let i=[];for(let a of e){if(a&&typeof a==="object"){let o=a;if(o.type==="image"&&typeof o.data==="string"&&typeof o.mediaType==="string"){t.push({type:"image",data:o.data,mediaType:o.mediaType});continue}if(o.type==="text"&&typeof o.text==="string"){i.push(o.text);continue}}i.push(vr(a,t))}return i}let n=e,r={};for(let[i,a]of Object.entries(n))r[i]=vr(a,t);return r}function Ri(e){if(typeof e==="string")return Q(e);if(Array.isArray(e))return e.map((t)=>Ri(t));if(e!==null&&typeof e==="object"){let t=e,n={};for(let[r,i]of Object.entries(t))n[r]=Ri(i);return n}return e}function rv(e,t=!1){if(typeof e==="string")return{type:t?"error-text":"text",value:Q(e)};if(!t&&Nk(e))return{type:"content",value:e.map((n)=>n.type==="image"?{type:"image-data",data:n.data,mediaType:n.mediaType}:{type:"text",text:Q(n.text)})};if(!t&&e!==null&&typeof e==="object"){let n=[],r=vr(e,n);if(n.length>0)return{type:"content",value:[{type:"text",text:typeof r==="string"?Q(r):JSON.stringify(Ri(r))},...n.map((i)=>({type:"image-data",data:i.data,mediaType:i.mediaType}))]}}if(e===null||typeof e==="boolean"||typeof e==="number"||typeof e==="object")return{type:t?"error-json":"json",value:Ri(e)};return{type:t?"error-text":"text",value:Q(String(e))}}function Io(e,t,n){let r=n?.assistantToolCallArgKey??"input",i=[];if(typeof e==="string"&&e.trim().length>0||Array.isArray(e)&&e.length>0)i.push({role:"system",content:typeof e==="string"?Q(e):e});for(let a of t){let o=a.content;if(typeof o==="string"){if(o.trim().length===0){i.push({role:a.role,content:[{type:"text",text:pr}]});continue}i.push({role:a.role,content:Q(o)});continue}let s=[],d=[];if(o.length===0){i.push({role:a.role,content:[{type:"text",text:pr}]});continue}for(let l of o)switch(l.type){case"text":s.push({type:"text",text:Q(l.text),...l.providerOptions?{providerOptions:l.providerOptions}:{}});break;case"reasoning":s.push({type:"reasoning",text:Q(l.text),...l.providerOptions?{providerOptions:l.providerOptions}:{}});break;case"image":s.push({type:"image",image:l.image,mediaType:l.mediaType});break;case"file":s.push({type:"text",text:ev(l.path,Q(l.content))});break;case"tool-call":if(a.role==="assistant")s.push({type:"tool-call",toolCallId:l.toolCallId,toolName:l.toolName,[r]:l.input,...l.providerOptions?{providerOptions:l.providerOptions}:{}});break;case"tool-result":{d.push({type:"tool-result",toolCallId:l.toolCallId,toolName:l.toolName,output:rv(l.output,l.isError??!1)});break}}if(s.length>0)Vs(i,{role:a.role,content:s});if(d.length>0)Vs(i,{role:"tool",content:d})}return i}function Ak(e,t){if(typeof e==="string"&&e.toLowerCase()in jt)return e.toLowerCase();return t?void 0:void 0}function av(e,t){let n=typeof e==="string"?e.toLowerCase():void 0;if(n&&n in jt)return jt[n];if(t?.fallbackEffort)return jt[t.fallbackEffort];return}function Zk(e){let t=av(e.effort,{fallbackEffort:e.fallbackEffort});if(t===void 0)return;if(t<=0)return 0;let n=e.minimumBudget??1;if(e.maxBudget<n)return;let r=e.scaleTokens??e.maxBudget;return Math.min(Math.max(Math.floor(r*t),n),e.maxBudget)}function Rk(e){return e instanceof Error?{name:e.name,message:e.message}:e}function xo(e){return Math.max(1,Math.ceil(e/3))}function Mk(e){return/^[0-9A-Fa-f]$/.test(e)}function Re(e){return e>="0"&&e<="9"}function Jk(e){return e>=" "}function zi(e){return`,:[]/{}()
|
|
20
|
+
+`.includes(e)}function Qs(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"}function qs(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"||e>="0"&&e<="9"}function iu(e){return`,[]/{}
|
|
21
|
+
+`.includes(e)}function nu(e){return Oi(e)||Fk.test(e)}function Kk(e){return e===`
|
|
22
|
+
`||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function Je(e,t){let n=e.charCodeAt(t);return n===32||n===10||n===9||n===13}function Wk(e,t){let n=e.charCodeAt(t);return n===32||n===9||n===13}function Hk(e,t){let n=e.charCodeAt(t);return n===160||n===6158||n>=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function Oi(e){return ov(e)||gr(e)}function ov(e){return e==='"'||e==="“"||e==="”"}function ru(e){return e==='"'}function gr(e){return e==="'"||e==="‘"||e==="’"||e==="`"||e==="´"}function au(e){return e==="'"}function Et(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=e.lastIndexOf(t);return r!==-1?e.substring(0,r)+(n?"":e.substring(r+1)):e}function pe(e,t){let n=e.length;if(!Je(e,n-1))return e+t;while(Je(e,n-1))n--;return e.substring(0,n)+t+e.substring(n)}function Bk(e,t,n){return e.substring(0,t)+e.substring(t+n)}function Gk(e){return/[,\n][ \t\r]*$/.test(e)}function Vk(e){let t=0,n="";if(d(["```","[```","{```"]),!i())Ih();d(["```","```]","```}"]);let r=c(",");if(r)a();if(nu(e[t])&&Gk(n)){if(!r)n=pe(n,",");j()}else if(r)n=Et(n,",");while(e[t]==="}"||e[t]==="]")t++,a();if(t>=e.length)return n;Sh();function i(){a();let $=y()||I()||U()||w()||Z()||ye(!1)||tt();return a(),$}function a(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,T=t,P=o($);do if(P=s(),P)P=o($);while(P);return t>T}function o($){let T=$?Je:Wk,P="";while(!0)if(T(e,t))P+=e[t],t++;else if(Hk(e,t))P+=" ",t++;else break;if(P.length>0)return n+=P,!0;return!1}function s(){if(e[t]==="/"&&e[t+1]==="*"){while(t<e.length&&!Qk(e,t))t++;return t+=2,!0}if(e[t]==="/"&&e[t+1]==="/"){while(t<e.length&&e[t]!==`
|
|
23
|
+
`)t++;return!0}return!1}function d($){if(l($)){if(Qs(e[t]))while(t<e.length&&qs(e[t]))t++;return a(),!0}return!1}function l($){o(!0);for(let T of $){let P=t+T.length;if(e.slice(t,P)===T)return t=P,!0}return!1}function c($){if(e[t]===$)return n+=e[t],t++,!0;return!1}function f($){if(e[t]===$)return t++,!0;return!1}function v(){return f("\\")}function p(){if(a(),e[t]==="."&&e[t+1]==="."&&e[t+2]===".")return t+=3,a(),f(","),!0;return!1}function y(){if(e[t]==="{"){if(n+="{",t++,a(),f(","))a();let $=!0;while(t<e.length&&e[t]!=="}"){let T;if(!$){if(T=c(","),!T)n=pe(n,",");a()}else T=!0,$=!1;if(p(),!(U()||ye(!0))){if(e[t]==="}"||e[t]==="{"||e[t]==="]"||e[t]==="["||e[t]===void 0)n=Et(n,",");else xh();break}a();let P=c(":"),yi=t>=e.length;if(!P)if(nu(e[t])||yi)n=pe(n,":");else gs();if(!i())if(P||yi)n+="null";else gs()}if(e[t]==="}")n+="}",t++;else n=pe(n,"}");return!0}return!1}function I(){if(e[t]==="["){if(n+="[",t++,a(),f(","))a();let $=!0;while(t<e.length&&e[t]!=="]"){if(!$){if(!c(","))n=pe(n,",")}else $=!1;if(p(),!i()){n=Et(n,",");break}}if(e[t]==="]")n+="]",t++;else n=pe(n,"]");return!0}return!1}function j(){let $=!0,T=!0;while(T){if(!$){if(!c(","))n=pe(n,",")}else $=!1;T=i()}if(!T)n=Et(n,",");n=`[
|
|
24
24
|
${n}
|
|
25
|
-
]`}function U(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,P=e[t]==="\\";if(P)t++,P=!0;if(Oi(e[t])){let yi=
|
|
26
|
-
`)M+="\\n",t+=2;else M+=K,t+=2}else{let K=e.charAt(t);if(K==='"'&&e[t-1]!=="\\")M+=`\\${K}`,t++;else if(Kk(K))M+=Xk[K],t++;else{if(!
|
|
27
|
-
${
|
|
28
|
-
${r}`}function hw(e){let{ide:t="Terminal Shell",mode:n,platform:r="unknown",workspaceName:i,metadata:a,rules:o,overridePrompt:s,providerId:d}=e,l=e.workspaceRoot??e.rootPath??"",c=d==="cline";if(s?.trim()){let f=s.trim();if(c&&a?.trim()&&!f.includes(
|
|
25
|
+
]`}function U(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,P=e[t]==="\\";if(P)t++,P=!0;if(Oi(e[t])){let yi=ru(e[t])?ru:au(e[t])?au:gr(e[t])?gr:ov,bi=t,$i=n.length,M='"';t++;while(!0){if(t>=e.length){let K=gi(t-1);if(!$&&zi(e.charAt(K)))return t=bi,n=n.substring(0,$i),U(!0);return M=pe(M,'"'),n+=M,!0}if(t===T)return M=pe(M,'"'),n+=M,!0;if(yi(e[t])){let K=t,ze=M.length;if(M+='"',t++,n+=M,a(!1),$||t>=e.length||zi(e[t])||Oi(e[t])||Re(e[t]))return C(),!0;let hs=gi(K-1),ys=e.charAt(hs);if(ys===",")return t=bi,n=n.substring(0,$i),U(!1,hs);if(zi(ys))return t=bi,n=n.substring(0,$i),U(!0);n=n.substring(0,$i),t=K+1,M=`${M.substring(0,ze)}\\${M.substring(ze)}`}else if($&&iu(e[t])){if(e[t-1]===":"&&eu.test(e.substring(bi+1,t+2)))while(t<e.length&&tu.test(e[t]))M+=e[t],t++;return M=pe(M,'"'),n+=M,C(),!0}else if(e[t]==="\\"){let K=e.charAt(t+1);if(Yk[K]!==void 0)M+=e.slice(t,t+2),t+=2;else if(K==="u"){let ze=2;while(ze<6&&Mk(e[t+ze]))ze++;if(ze===6)M+=e.slice(t,t+6),t+=6;else if(t+ze>=e.length)t=e.length;else zh()}else if(K===`
|
|
26
|
+
`)M+="\\n",t+=2;else M+=K,t+=2}else{let K=e.charAt(t);if(K==='"'&&e[t-1]!=="\\")M+=`\\${K}`,t++;else if(Kk(K))M+=Xk[K],t++;else{if(!Jk(K))wh(K);M+=K,t++}}if(P)v()}}return!1}function C(){let $=!1;a();while(e[t]==="+"){$=!0,t++,a(),n=Et(n,'"',!0);let T=n.length;if(U())n=Bk(n,T,1);else n=pe(n,'"')}return $}function w(){let $=t;if(e[t]==="-"){if(t++,hi())return Qn($),!0;if(!Re(e[t]))return t=$,!1}while(Re(e[t]))t++;if(e[t]==="."){if(t++,hi())return Qn($),!0;if(!Re(e[t]))return t=$,!1;while(Re(e[t]))t++}if(e[t]==="e"||e[t]==="E"){if(t++,e[t]==="-"||e[t]==="+")t++;if(hi())return Qn($),!0;if(!Re(e[t]))return t=$,!1;while(Re(e[t]))t++}if(!hi())return t=$,!1;if(t>$){let T=e.slice($,t),P=/^0\d/.test(T);return n+=P?`"${T}"`:T,!0}return!1}function Z(){return Y("true","true")||Y("false","false")||Y("null","null")||Y("True","true")||Y("False","false")||Y("None","null")}function Y($,T){if(e.slice(t,t+$.length)===$)return n+=T,t+=$.length,!0;return!1}function ye($){let T=t;if(Qs(e[t])){while(t<e.length&&qs(e[t]))t++;let P=t;while(Je(e,P))P++;if(e[P]==="("){if(t=P+1,i(),e[t]===")"){if(t++,e[t]===";")t++}return!0}}while(t<e.length&&!iu(e[t])&&!Oi(e[t])&&(!$||e[t]!==":"))t++;if(e[t-1]===":"&&eu.test(e.substring(T,t+2)))while(t<e.length&&tu.test(e[t]))t++;if(t>T){while(Je(e,t-1)&&t>0)t--;let P=e.slice(T,t);if(n+=P==="undefined"?"null":JSON.stringify(P),e[t]==='"')t++;return!0}}function tt(){if(e[t]==="/"){let $=t;t++;while(t<e.length&&(e[t]!=="/"||e[t-1]==="\\"))t++;return t++,n+=JSON.stringify(e.substring($,t)),!0}}function gi($){let T=$;while(T>0&&Je(e,T))T--;return T}function hi(){return t>=e.length||zi(e[t])||Je(e,t)}function Qn($){n+=`${e.slice($,t)}0`}function wh($){throw new Le(`Invalid character ${JSON.stringify($)}`,t)}function Sh(){throw new Le(`Unexpected character ${JSON.stringify(e[t])}`,t)}function Ih(){throw new Le("Unexpected end of json string",e.length)}function xh(){throw new Le("Object key expected",t)}function gs(){throw new Le("Colon expected",t)}function zh(){let $=e.slice(t,t+6);throw new Le(`Invalid unicode character "${$}"`,t)}}function Qk(e,t){return e[t]==="*"&&e[t+1]==="/"}function ew(e){let t=e.match(qk);if(!t)return;let[,n,r]=t,i=r.trim();if(!i)return;let a=i[0];if(a==='"'||a==="{"||a==="["||i==="true"||i==="false"||i==="null"||Number.isFinite(Number(i)))return;return JSON.parse(`{"${n}":${JSON.stringify(i)}}`)}function iw(e){if(typeof e!=="string")return e;let t=e.trimStart();if(t[0]!=="{"&&t[0]!=="[")return e;for(let n of tw)try{let r=n(t);if(r!==void 0)return r}catch{}return e}function nw(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(r&&typeof r==="object"){if(t.has(r))return"[Circular]";t.add(r)}return r})??"null"}catch{return String(e)}}function rw(e){try{return JSON.parse(e)}catch{return}}function aw(e){let t=e.replaceAll("\\","/"),n=t.lastIndexOf("/");return(n>=0?t.slice(n+1):t).toLowerCase()}function ow(e){return e==="win32"?"powershell":"/bin/bash"}function sw(e,t){let n=aw(e);if(n==="powershell"||n==="powershell.exe"||n==="pwsh"||n==="pwsh.exe")return["-NoProfile","-NonInteractive","-Command",t];if(n==="cmd"||n==="cmd.exe")return["/d","/s","/c",t];return["-c",t]}function uw(e){return e.toLowerCase().replace(/[^\w.-]+/g,"_")}function sv(e,t){if(e.length<=t)return e;return`${e.slice(0,t-1)}…`}function lw(e,t="/",n=100){if(!e||e.length<=n)return e||"";let r=e.split(t)?.shift()?.trim()?.slice(0,n-1);return r?`${r}…`:sv(e,n)}function dw(e){if(e.length<=8)return"****";return`${e.slice(0,4)}...${e.slice(-4)}`}function cw(e){if(!e)return"(unknown-date)";let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return t.toLocaleString("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!0})}function mw(e){let t=Math.max(0,Math.floor(e/1000)),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),i=Math.floor(t%3600/60),a=t%60;if(n>0)return`${n}d ${r}h`;if(r>0)return`${r}h ${i}m`;if(i>0)return`${i}m ${a}s`;return`${a}s`}function fw(e,t){let n=e.safeParse(t);if(!n.success)throw Error(u.prettifyError(n.error));return n.data}function uv(e){return u.toJSONSchema(e)}function gw(e){return JSON.stringify({workspaces:{[e.rootPath]:{hint:e.hint,associatedRemoteUrls:e.associatedRemoteUrls,latestGitCommitHash:e.latestGitCommitHash,latestGitBranchName:e.latestGitBranchName}}},null,2)}function ou(e,t,n){if(n?.trim()?.includes(hr))return n.trim();let r=n||JSON.stringify({workspaces:{[e]:{hint:t||e.split("/").at(-1)||e}}},null,2);return`
|
|
27
|
+
${hr}
|
|
28
|
+
${r}`}function hw(e){let{ide:t="Terminal Shell",mode:n,platform:r="unknown",workspaceName:i,metadata:a,rules:o,overridePrompt:s,providerId:d}=e,l=e.workspaceRoot??e.rootPath??"",c=d==="cline";if(s?.trim()){let f=s.trim();if(c&&a?.trim()&&!f.includes(hr))return`${f}
|
|
29
29
|
|
|
30
|
-
${au(l,i,a)}`.trim();return f}return(n==="yolo"?vw:pw).replace("{{PLATFORM_NAME}}",r).replace("{{CWD}}",l).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?au(l,i,a):"").replace("{{CLINE_RULES}}",o||"").trim()}function dv(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function Uw(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((r)=>r.trim()).includes("development"))return!0}return!1}function Ow(e){if(!e?.trim())return!1;let t=zw(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function Ew(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function Tw(e){return e.some((t)=>t==="--enable-source-maps")}function jw(e){return e[uv]?.trim()||"127.0.0.1"}function Pw(e){let t=e[lv]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function Nw(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function xo(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,r=dv(t[Li]);if(r)return r;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return Uw(n)?"development":"production"}function Dw(e=process.env,t={}){if(dv(e[Li]))return e;return{...e,[Li]:xo({env:e,execArgv:t.execArgv})}}function Aw(e,t={}){if(e.length===0||!Ow(e[0]))return[...e];if(xo(t)!=="development")return[...e];let n=t.env??process.env,r=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!Ew(r)){let a=jw(n),o=Pw(n),s=o===void 0?0:o+Nw(t.debugRole);i.push(`--inspect=${a}:${s}`)}if(!Tw(r))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function ou(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function Lw(){if(typeof process>"u"||!process?.env)return{};return process.env}function cv(e={}){let t=e.env??Lw();return ou(t.CLINE_ENVIRONMENT_OVERRIDE)??ou(t.CLINE_ENVIRONMENT)??"production"}function zo(e){if(typeof e==="string")return hr[e];return hr[cv(e)]}function Fw(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function En(e,t){if(!e)return;e.capture({event:t.event??"sdk.error",properties:mv(t)})}function mv(e){return{...e.context??{},component:e.component,operation:e.operation,severity:e.severity??"error",handled:e.handled??!0,...fv(e.error,e.messageLimit)}}function fv(e,t=500){let n=Hw(e)?e:void 0,r=e instanceof Error?e:void 0,i=r?.message??su(n?.message)??(typeof e==="string"?e:String(e)),a=Bw(n?.code),o=nr(n?.status)??nr(n?.statusCode)??nr(n?.responseStatus);return{error_type:r?.name?.trim()||su(n?.name)||r?.constructor?.name||"Error",error_message:Ww(Kw(i),t),...a!==void 0?{error_code:a}:{},...o!==void 0?{error_status:o}:{}}}function Kw(e){return e.replace(/(authorization=Bearer\s+)[^&\s]+/gi,"$1[redacted]").replace(/(api[_-]?key|access[_-]?token|refresh[_-]?token|authorization|password|secret)=([^&\s]+)/gi,"$1=[redacted]").replace(/(Bearer\s+)[A-Za-z0-9._~+/-]+=*/gi,"$1[redacted]").replace(/\/Users\/[^/\s]+/g,"/Users/[redacted]").replace(/\/home\/[^/\s]+/g,"/home/[redacted]").replace(/([A-Za-z]:[\\/]+Users[\\/]+)[^\\/\s]+/g,"$1[redacted]")}function Ww(e,t){let n=Math.max(1,Math.floor(t));return e.length>n?e.substring(0,n):e}function Hw(e){return typeof e==="object"&&e!==null}function su(e){return typeof e==="string"&&e.trim().length>0?e:void 0}function Bw(e){if(typeof e==="string"&&e.trim().length>0)return e;if(typeof e==="number"&&Number.isFinite(e))return e;return}function nr(e){return typeof e==="number"&&Number.isFinite(e)?e:void 0}function Gw(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let r=n.indexOf("=");if(r<=0)return;let i=decodeURIComponent(n.substring(0,r).trim()),a=decodeURIComponent(n.substring(r+1).trim());if(!i||!a)return;t[i]=a})}catch{}return t}function Xw(){if(!process.env)return{enabled:!1};return{enabled:process.env.OTEL_TELEMETRY_ENABLED==="1"||process.env.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process.env.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process.env.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process.env.OTEL_TRACES_EXPORTER,otlpProtocol:process.env.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process.env.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process.env.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process.env.OTEL_EXPORTER_OTLP_HEADERS?Gw(process.env.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function pv(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function Yw(e={}){return{...Xw(),...e,metadata:pv(e.metadata)}}function vv(e){let t=e?.trim();return t?t:void 0}function Vw(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let r=vv(n.rootSessionId);if(!r)return;return{rootSessionId:r}}function Qw(e){return vv(e?.rootSessionId)}function eS(e){if(e<0||e>1024)throw RangeError("Wrong ID size");if(!Me||Me.length<e)Me=Buffer.allocUnsafe(e*qw),uu.getRandomValues(Me),at=0;else if(at+e>Me.length)uu.getRandomValues(Me),at=0;at+=e}function tS(e){return eS(e|=0),Me.subarray(at-e,at)}function iS(e,t,n){let r=256-256%e.length;if(r===256){let a=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let d=n(o),l=o;while(l--)if(s+=e[d[l]&a],s.length>=o)return s}}}let i=Math.ceil(409.6*t/r);return(a=t)=>{if(!a)return"";let o="";while(!0){let s=n(i),d=i;while(d--)if(s[d]<r){if(o+=e[s[d]%e.length],o.length>=a)return o}}}}function nS(e,t=21){return iS(e,t,tS)}function rS(e="",t=""){let n=nS("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function hv(e){return typeof e==="string"&&oS.has(e)}function sS(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(hv);return[...new Set(t)]}function uS(e,t){return new Set(e??gv).has(t)}function lS(){return{workspaces:{}}}function dS(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return bv.parse(n)}function R(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function VS(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let r of["oneOf","anyOf","allOf"]){let i=n[r];if(!Array.isArray(i)||i.length===0)continue;if(r==="allOf"){if(i.some((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${r}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function QS(e){let t=VS(e.inputSchema instanceof u.ZodType?sv(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function xv(e){return Iv.includes(e)}function qS(e,t){if(!xv(t))return!1;let n=e instanceof Error?e.message.toLowerCase():String(e);return zv.some((r)=>n.includes(r))}function uI(e){let t=e.toLowerCase();if(oI.has(t))return!0;for(let n of sI){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let r=t[t.length-n.length-1];if(r==="_"||r==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function Uv(e){let t=e;for(let{pattern:n,replacement:r}of lI)t=t.replace(n,r);return t}function yr(e){if(Array.isArray(e))return e.map(yr);if(!e||typeof e!=="object")return e;return Object.fromEntries(Object.entries(e).sort(([t],[n])=>dI(t,n)).map(([t,n])=>[t,yr(n)]))}function dI(e,t){if(e<t)return-1;if(e>t)return 1;return 0}function lu(e){return JSON.stringify(yr(e))}function br(e){let t=e;for(let{pattern:n,replacement:r}of cI)t=t.replace(n,r);return t}function st(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(st(t))}catch{}return Uv(e)}if(Array.isArray(e))return e.map(st);if(typeof e==="object"){let t={};for(let[n,r]of Object.entries(e))if(uI(n)&&(typeof r==="string"||typeof r==="number"))t[n]="REDACTED";else t[n]=st(r);return t}return e}function mI(e){let t=new URLSearchParams(e),n=Array.from(t.entries());if(n.length===0||n.some(([i])=>i.length===0))return;let r={};for(let[i,a]of n){let o=r[i];if(o===void 0)r[i]=a;else if(Array.isArray(o))o.push(a);else r[i]=[o,a]}return r}function fI(e){return e?.toLowerCase().split(";")[0]?.trim()==="application/x-www-form-urlencoded"}function Ov(e,t){try{return lu(st(JSON.parse(e)))}catch{if(fI(t)){let n=mI(e);if(n)return lu(st(n))}return Uv(e)}}function pI(e,t){let n={...e},r=t&&e.body!==void 0?Ov(e.body,e.requestContentType):void 0;if(delete n.body,delete n.requestContentType,r!==void 0)n.requestBody=r;if(typeof n.path==="string")n.path=br(n.path);if(n.response!==void 0)n.response=st(n.response);return n}function Ev(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,r=t.pathname+t.search;return{scope:n,path:r}}catch{return{scope:"",path:e}}}function Tv(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function jv(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function vI(e){if(!e)return;return new Headers(e).get("content-type")??void 0}function Pv(e,t){let n=vI(t?.headers);if(n)return n;if(t?.body instanceof URLSearchParams)return"application/x-www-form-urlencoded;charset=UTF-8";if(e instanceof Request)return e.headers.get("content-type")??void 0;return}async function Nv(e,t){if(t?.body){if(typeof t.body==="string")return t.body;if(t.body instanceof URLSearchParams)return t.body.toString();if(t.body instanceof ArrayBuffer)return new TextDecoder().decode(t.body);if(ArrayBuffer.isView(t.body))return new TextDecoder().decode(new Uint8Array(t.body.buffer,t.body.byteOffset,t.body.byteLength));return}if(e instanceof Request)try{return await e.clone().text()}catch{return}return}function gI(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
|
|
30
|
+
${ou(l,i,a)}`.trim();return f}return(n==="yolo"?vw:pw).replace("{{PLATFORM_NAME}}",r).replace("{{CWD}}",l).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?ou(l,i,a):"").replace("{{CLINE_RULES}}",o||"").trim()}function cv(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function Uw(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((r)=>r.trim()).includes("development"))return!0}return!1}function Ow(e){if(!e?.trim())return!1;let t=zw(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function Ew(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function Tw(e){return e.some((t)=>t==="--enable-source-maps")}function jw(e){return e[lv]?.trim()||"127.0.0.1"}function Pw(e){let t=e[dv]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function Nw(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function zo(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,r=cv(t[Li]);if(r)return r;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return Uw(n)?"development":"production"}function Dw(e=process.env,t={}){if(cv(e[Li]))return e;return{...e,[Li]:zo({env:e,execArgv:t.execArgv})}}function Aw(e,t={}){if(e.length===0||!Ow(e[0]))return[...e];if(zo(t)!=="development")return[...e];let n=t.env??process.env,r=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!Ew(r)){let a=jw(n),o=Pw(n),s=o===void 0?0:o+Nw(t.debugRole);i.push(`--inspect=${a}:${s}`)}if(!Tw(r))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function su(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function Lw(){if(typeof process>"u"||!process?.env)return{};return process.env}function mv(e={}){let t=e.env??Lw();return su(t.CLINE_ENVIRONMENT_OVERRIDE)??su(t.CLINE_ENVIRONMENT)??"production"}function Uo(e){if(typeof e==="string")return yr[e];return yr[mv(e)]}function Jw(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function En(e,t){if(!e)return;e.capture({event:t.event??"sdk.error",properties:fv(t)})}function fv(e){return{...e.context??{},component:e.component,operation:e.operation,severity:e.severity??"error",handled:e.handled??!0,...pv(e.error,e.messageLimit)}}function pv(e,t=500){let n=Hw(e)?e:void 0,r=e instanceof Error?e:void 0,i=r?.message??uu(n?.message)??(typeof e==="string"?e:String(e)),a=Bw(n?.code),o=rr(n?.status)??rr(n?.statusCode)??rr(n?.responseStatus);return{error_type:r?.name?.trim()||uu(n?.name)||r?.constructor?.name||"Error",error_message:Ww(Kw(i),t),...a!==void 0?{error_code:a}:{},...o!==void 0?{error_status:o}:{}}}function Kw(e){return e.replace(/(authorization=Bearer\s+)[^&\s]+/gi,"$1[redacted]").replace(/(api[_-]?key|access[_-]?token|refresh[_-]?token|authorization|password|secret)=([^&\s]+)/gi,"$1=[redacted]").replace(/(Bearer\s+)[A-Za-z0-9._~+/-]+=*/gi,"$1[redacted]").replace(/\/Users\/[^/\s]+/g,"/Users/[redacted]").replace(/\/home\/[^/\s]+/g,"/home/[redacted]").replace(/([A-Za-z]:[\\/]+Users[\\/]+)[^\\/\s]+/g,"$1[redacted]")}function Ww(e,t){let n=Math.max(1,Math.floor(t));return e.length>n?e.substring(0,n):e}function Hw(e){return typeof e==="object"&&e!==null}function uu(e){return typeof e==="string"&&e.trim().length>0?e:void 0}function Bw(e){if(typeof e==="string"&&e.trim().length>0)return e;if(typeof e==="number"&&Number.isFinite(e))return e;return}function rr(e){return typeof e==="number"&&Number.isFinite(e)?e:void 0}function Gw(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let r=n.indexOf("=");if(r<=0)return;let i=decodeURIComponent(n.substring(0,r).trim()),a=decodeURIComponent(n.substring(r+1).trim());if(!i||!a)return;t[i]=a})}catch{}return t}function Xw(){if(!process.env)return{enabled:!1};return{enabled:process.env.OTEL_TELEMETRY_ENABLED==="1"||process.env.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process.env.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process.env.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process.env.OTEL_TRACES_EXPORTER,otlpProtocol:process.env.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process.env.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process.env.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process.env.OTEL_EXPORTER_OTLP_HEADERS?Gw(process.env.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function vv(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function Yw(e={}){return{...Xw(),...e,metadata:vv(e.metadata)}}function gv(e){let t=e?.trim();return t?t:void 0}function Vw(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let r=gv(n.rootSessionId);if(!r)return;return{rootSessionId:r}}function Qw(e){return gv(e?.rootSessionId)}function eS(e){if(e<0||e>1024)throw RangeError("Wrong ID size");if(!Me||Me.length<e)Me=Buffer.allocUnsafe(e*qw),lu.getRandomValues(Me),at=0;else if(at+e>Me.length)lu.getRandomValues(Me),at=0;at+=e}function tS(e){return eS(e|=0),Me.subarray(at-e,at)}function iS(e,t,n){let r=256-256%e.length;if(r===256){let a=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let d=n(o),l=o;while(l--)if(s+=e[d[l]&a],s.length>=o)return s}}}let i=Math.ceil(409.6*t/r);return(a=t)=>{if(!a)return"";let o="";while(!0){let s=n(i),d=i;while(d--)if(s[d]<r){if(o+=e[s[d]%e.length],o.length>=a)return o}}}}function nS(e,t=21){return iS(e,t,tS)}function rS(e="",t=""){let n=nS("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function yv(e){return typeof e==="string"&&oS.has(e)}function sS(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(yv);return[...new Set(t)]}function uS(e,t){return new Set(e??hv).has(t)}function lS(){return{workspaces:{}}}function dS(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return $v.parse(n)}function R(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function VS(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let r of["oneOf","anyOf","allOf"]){let i=n[r];if(!Array.isArray(i)||i.length===0)continue;if(r==="allOf"){if(i.some((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${r}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function QS(e){let t=VS(e.inputSchema instanceof u.ZodType?uv(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function qS(e){let t=e instanceof Error?e.message.toLowerCase():String(e);return xv.some((n)=>t.includes(n))}function uI(e){let t=e.toLowerCase();if(oI.has(t))return!0;for(let n of sI){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let r=t[t.length-n.length-1];if(r==="_"||r==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function zv(e){let t=e;for(let{pattern:n,replacement:r}of lI)t=t.replace(n,r);return t}function br(e){if(Array.isArray(e))return e.map(br);if(!e||typeof e!=="object")return e;return Object.fromEntries(Object.entries(e).sort(([t],[n])=>dI(t,n)).map(([t,n])=>[t,br(n)]))}function dI(e,t){if(e<t)return-1;if(e>t)return 1;return 0}function du(e){return JSON.stringify(br(e))}function $r(e){let t=e;for(let{pattern:n,replacement:r}of cI)t=t.replace(n,r);return t}function st(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(st(t))}catch{}return zv(e)}if(Array.isArray(e))return e.map(st);if(typeof e==="object"){let t={};for(let[n,r]of Object.entries(e))if(uI(n)&&(typeof r==="string"||typeof r==="number"))t[n]="REDACTED";else t[n]=st(r);return t}return e}function mI(e){let t=new URLSearchParams(e),n=Array.from(t.entries());if(n.length===0||n.some(([i])=>i.length===0))return;let r={};for(let[i,a]of n){let o=r[i];if(o===void 0)r[i]=a;else if(Array.isArray(o))o.push(a);else r[i]=[o,a]}return r}function fI(e){return e?.toLowerCase().split(";")[0]?.trim()==="application/x-www-form-urlencoded"}function Uv(e,t){try{return du(st(JSON.parse(e)))}catch{if(fI(t)){let n=mI(e);if(n)return du(st(n))}return zv(e)}}function pI(e,t){let n={...e},r=t&&e.body!==void 0?Uv(e.body,e.requestContentType):void 0;if(delete n.body,delete n.requestContentType,r!==void 0)n.requestBody=r;if(typeof n.path==="string")n.path=$r(n.path);if(n.response!==void 0)n.response=st(n.response);return n}function Ov(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,r=t.pathname+t.search;return{scope:n,path:r}}catch{return{scope:"",path:e}}}function Ev(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function Tv(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function vI(e){if(!e)return;return new Headers(e).get("content-type")??void 0}function jv(e,t){let n=vI(t?.headers);if(n)return n;if(t?.body instanceof URLSearchParams)return"application/x-www-form-urlencoded;charset=UTF-8";if(e instanceof Request)return e.headers.get("content-type")??void 0;return}async function Pv(e,t){if(t?.body){if(typeof t.body==="string")return t.body;if(t.body instanceof URLSearchParams)return t.body.toString();if(t.body instanceof ArrayBuffer)return new TextDecoder().decode(t.body);if(ArrayBuffer.isView(t.body))return new TextDecoder().decode(new Uint8Array(t.body.buffer,t.body.byteOffset,t.body.byteLength));return}if(e instanceof Request)try{return await e.clone().text()}catch{return}return}function gI(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
|
|
31
31
|
`),null;if(e!=="record"&&e!=="playback")process.stderr.write(`[VCR] Invalid CLINE_VCR value: "${e}". Expected "record" or "playback".
|
|
32
|
-
`),process.exit(1);let t=aI(process.env.CLINE_VCR_CASSETTE),n=process.env.CLINE_VCR_FILTER??"",r=process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="1"||process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="true";return{mode:e,cassettePath:t,filter:n,includeRequestBody:r}}function hI(e,t,n){let r=[],i=[],a=globalThis.fetch;function o(l){if(l.finalized)return;l.finalized=!0;let c=new TextDecoder,f=l.chunks.map((p)=>c.decode(p,{stream:!0})).join("")+c.decode(),v;try{v=JSON.parse(f)}catch{v=f}r.push({scope:l.scope,method:l.method,path:l.path,body:l.body,requestContentType:l.requestContentType,status:l.status,response:v,responseIsBinary:!1,contentType:l.contentType})}globalThis.fetch=Object.assign(async(l,c)=>{let f=
|
|
33
|
-
`);let d=!1;
|
|
32
|
+
`),process.exit(1);let t=aI(process.env.CLINE_VCR_CASSETTE),n=process.env.CLINE_VCR_FILTER??"",r=process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="1"||process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="true";return{mode:e,cassettePath:t,filter:n,includeRequestBody:r}}function hI(e,t,n){let r=[],i=[],a=globalThis.fetch;function o(l){if(l.finalized)return;l.finalized=!0;let c=new TextDecoder,f=l.chunks.map((p)=>c.decode(p,{stream:!0})).join("")+c.decode(),v;try{v=JSON.parse(f)}catch{v=f}r.push({scope:l.scope,method:l.method,path:l.path,body:l.body,requestContentType:l.requestContentType,status:l.status,response:v,responseIsBinary:!1,contentType:l.contentType})}globalThis.fetch=Object.assign(async(l,c)=>{let f=Ev(l),v=Tv(l,c),{scope:p,path:y}=Ov(f),I=await Pv(l,c),j=jv(l,c),U=await a(l,c);if(t&&!y.includes(t))return U;let C=U.headers.get("content-type")??void 0;if(!U.body)return r.push({scope:p,method:v,path:y,body:I??"",requestContentType:j,status:U.status,response:"",responseIsBinary:!1,contentType:C}),U;let w={scope:p,method:v,path:y,body:I??"",requestContentType:j,status:U.status,contentType:C,chunks:[],finalized:!1};i.push(w);let Z=U.body,Y=new TransformStream({transform(tt,gi){w.chunks.push(tt),gi.enqueue(tt)},flush(){o(w)}}),ye=Z.pipeThrough(Y);return new Response(ye,{status:U.status,statusText:U.statusText,headers:U.headers})},{preconnect:(l)=>{}});let s=t?`matching path "*${t}*"`:"all paths";process.stderr.write(`[VCR] Recording HTTP requests (${s}). Cassette will be saved to: ${e}
|
|
33
|
+
`);let d=!1;Bp(()=>{if(d)return;d=!0,globalThis.fetch=a;for(let f of i)o(f);if(r.length===0){process.stderr.write(`[VCR] No HTTP requests${t?` matching "${t}"`:""} were recorded.
|
|
34
34
|
`);return}let l=rI(e);tI(l,{recursive:!0});let c=r.map((f)=>pI(f,n));nI(e,JSON.stringify(c,null,2)),process.stderr.write(`[VCR] Saved ${c.length} recorded HTTP interaction(s) to ${e}
|
|
35
35
|
`)})}function yI(e){let t=[],n=e.split(/\n\n/);for(let r of n){let i=r.trim();if(i)t.push(`${i}
|
|
36
36
|
|
|
37
|
-
`)}return t}function bI(e,t){let n=new TextEncoder,r=0;return new ReadableStream({async pull(i){if(r>=e.length){i.close();return}if(r>0&&t>0)await new Promise((o)=>setTimeout(o,t));let a=e[r];if(a===void 0){i.close();return}i.enqueue(n.encode(a)),r+=1}})}async function $I(e){if(e.recording.requestBody===void 0)return;let t=await
|
|
37
|
+
`)}return t}function bI(e,t){let n=new TextEncoder,r=0;return new ReadableStream({async pull(i){if(r>=e.length){i.close();return}if(r>0&&t>0)await new Promise((o)=>setTimeout(o,t));let a=e[r];if(a===void 0){i.close();return}i.enqueue(n.encode(a)),r+=1}})}async function $I(e){if(e.recording.requestBody===void 0)return;let t=await Pv(e.requestInput,e.requestInit),n=jv(e.requestInput,e.requestInit),r=Uv(t??"",n);if(r!==e.recording.requestBody)throw Error(`[VCR] Request body mismatch for ${e.method} ${e.path}.
|
|
38
38
|
expected: ${e.recording.requestBody}
|
|
39
39
|
actual: ${r}
|
|
40
40
|
Re-record the cassette if the request change is intentional.`)}function _I(e,t){if(!eI(e))process.stderr.write(`[VCR] Cassette file not found: ${e}
|
|
41
|
-
`),process.exit(1);let n=JSON.parse(iI(e,"utf-8")),r=Number.parseInt(process.env.CLINE_VCR_SSE_DELAY??"100",10),i=Array(n.length).fill(!1),a=globalThis.fetch;globalThis.fetch=Object.assign(async(s,d)=>{let l=
|
|
42
|
-
`)}function kI(e){let t=gI(e);if(!t)return;if(t.mode==="record")hI(t.cassettePath,t.filter,t.includeRequestBody);else _I(t.cassettePath,t.filter)}var Ph,Nh=(e)=>e,Se=(e,t)=>{for(var n in t)Ph(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Dh.bind(t,n)})},ar,Rh,Lh,bs,fu="enterprise.blobUpload",Ei,qh="remote://",ny="remote-config",u,Su,Is,Iu,xu,Oe,Rt,Pt,O,xs,kr,Ou,ky=(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}`)}},ji,Tu,Pu,Nu,Ru=(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,Ti,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},wr,ne,Mt=(e)=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Oe;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ie(d,a,W())));throw kr(s,i?.callee),s}return o.value},sr,Ft=(e)=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ie(d,a,W())));throw kr(s,i?.callee),s}return o.value},ur,Jt=(e)=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Oe;return a.issues.length?{success:!1,error:new(e??wr)(a.issues.map((o)=>ie(o,i,W())))}:{success:!0,data:a.value}},Ju,Kt=(e)=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((o)=>ie(o,i,W())))}:{success:!0,data:a.value}},Ku,xr=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Mt(e)(t,n,i)},Ay,zr=(e)=>(t,n,r)=>{return Mt(e)(t,n,r)},Zy,Ur=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Ft(e)(t,n,i)},Cy,Or=(e)=>async(t,n,r)=>{return Ft(e)(t,n,r)},Ry,Er=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Jt(e)(t,n,i)},Ly,Tr=(e)=>(t,n,r)=>{return Jt(e)(t,n,r)},My,jr=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Kt(e)(t,n,i)},Fy,Pr=(e)=>async(t,n,r)=>{return Kt(e)(t,n,r)},Jy,Ee,Wu,Hu,Bu,Gu,Xu,Yu,Vu,Ky,Qu,lt=(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})$`)},Wy,Hy,By,qu,Gy,Xy,el,Yy,Vy,Qy="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",il,nl,rl=(e)=>{let t=we(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},al,ol,sl,Nr,qy,eb,ul,ll,dl="(?:(?:\\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])))",cl,vl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},gl,hl,Dr,yl,bl,$l,_l,kl,tb,ib,nb,rb,ab,ob,sb,ub,lb,db,cb,mb,fb,pb,vb,gb,L,wl,Ar,Zr,Sl,Il,xl,zl,Ul,Ol,El,Tl,jl,Bt,Pl,Nl,Dl,Al,Zl,Cl,Rl,Ll,Ml,Fl,x,Gt,D,Jl,Kl,Wl,Hl,Bl,Gl,Xl,Yl,Vl,Ql,ql,ed,td,id,nd,rd,ad,od,sd,ud,ld,cd,md,pd,vd,Lr,gd,Mr,Fr,hd,yd,bd,$d,_d,kd,wd,Sd,Id,xd,Od,Ed,Ki,Td,jd,Pd,Jr,Nd,Dd,Ad,Zd,Cd,Rd,Ld,Kr,Md,Fd,Jd,Kd,Wd,Hd,Bd,Gd,Wr,Hr,Xd,Yd,Vd,Qd,qd,ec,tc,Br,hb=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${a}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${_(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(a.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${a.suffix}"`;if(a.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${a.includes}"`;if(a.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${a.pattern}`;return`${n[a.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},bb=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${a}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${_(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Yanlış mətn: "${a.prefix}" ilə başlamalıdır`;if(a.format==="ends_with")return`Yanlış mətn: "${a.suffix}" ilə bitməlidir`;if(a.format==="includes")return`Yanlış mətn: "${a.includes}" daxil olmalıdır`;if(a.format==="regex")return`Yanlış mətn: ${a.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[a.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},_b=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},r={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${a}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${_(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Fs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${a}${i.maximum.toString()} ${d}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Fs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${a}${i.minimum.toString()} ${d}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${a.prefix}"`;if(a.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${a.suffix}"`;if(a.format==="includes")return`Няправільны радок: павінен змяшчаць "${a.includes}"`;if(a.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${a.pattern}`;return`Няправільны ${n[a.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},wb=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${a}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${_(i.values[0])}`;return`Невалидна опция: очаквано едно от ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${a}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${a}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Невалиден низ: трябва да започва с "${a.prefix}"`;if(a.format==="ends_with")return`Невалиден низ: трябва да завършва с "${a.suffix}"`;if(a.format==="includes")return`Невалиден низ: трябва да включва "${a.includes}"`;if(a.format==="regex")return`Невалиден низ: трябва да съвпада с ${a.pattern}`;let o="Невалиден";if(a.format==="emoji")o="Невалидно";if(a.format==="datetime")o="Невалидно";if(a.format==="date")o="Невалидна";if(a.format==="time")o="Невалидно";if(a.format==="duration")o="Невалидна";return`${o} ${n[a.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},Ib=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${a}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${_(i.values[0])}`;return`Opció invàlida: s'esperava una de ${g(i.values," o ")}`;case"too_big":{let a=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${a} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${a} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Format invàlid: ha de començar amb "${a.prefix}"`;if(a.format==="ends_with")return`Format invàlid: ha d'acabar amb "${a.suffix}"`;if(a.format==="includes")return`Format invàlid: ha d'incloure "${a.includes}"`;if(a.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${a.pattern}`;return`Format invàlid per a ${n[a.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},zb=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},r={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${a}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${_(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${a}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${a}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neplatný řetězec: musí začínat na "${a.prefix}"`;if(a.format==="ends_with")return`Neplatný řetězec: musí končit na "${a.suffix}"`;if(a.format==="includes")return`Neplatný řetězec: musí obsahovat "${a.includes}"`;if(a.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${a.pattern}`;return`Neplatný formát ${n[a.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${g(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},Ob=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${a}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${_(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${a} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${a} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: skal starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: skal ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: skal indeholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: skal matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},Tb=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},r={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${a}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${_(i.values[0])}`;return`Ungültige Option: erwartet eine von ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ist`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ist`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ungültiger String: muss mit "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ungültiger String: muss mit "${a.suffix}" enden`;if(a.format==="includes")return`Ungültiger String: muss "${a.includes}" enthalten`;if(a.format==="regex")return`Ungültiger String: muss dem Muster ${a.pattern} entsprechen`;return`Ungültig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},Pb=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${a}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${_(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${a}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${a}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${a.prefix}"`;if(a.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${a.suffix}"`;if(a.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${a.includes}"`;if(a.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${a.pattern}`;return`Μη έγκυρο: ${n[a.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${g(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},Db=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;return`Invalid input: expected ${a}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Invalid option: expected one of ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${a}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${a}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Invalid string: must start with "${a.prefix}"`;if(a.format==="ends_with")return`Invalid string: must end with "${a.suffix}"`;if(a.format==="includes")return`Invalid string: must include "${a.includes}"`;if(a.format==="regex")return`Invalid string: must match pattern ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((a)=>`'${a}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},Ab=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},r={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${a}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${_(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${a}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${a.prefix}"`;if(a.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${a.suffix}"`;if(a.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${a.includes}"`;if(a.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${a.pattern}`;return`Nevalida ${n[a.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},Cb=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${a}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${_(i.values[0])}`;return`Opción inválida: se esperaba una de ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${a}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Cadena inválida: debe comenzar con "${a.prefix}"`;if(a.format==="ends_with")return`Cadena inválida: debe terminar en "${a.suffix}"`;if(a.format==="includes")return`Cadena inválida: debe incluir "${a.includes}"`;if(a.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${a.pattern}`;return`Inválido ${n[a.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${r[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${r[i.origin]??i.origin}`;default:return"Entrada inválida"}}},Lb=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},r={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: میبایست instanceof ${i.expected} میبود، ${s} دریافت شد`;return`ورودی نامعتبر: میبایست ${a} میبود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: میبایست ${_(i.values[0])} میبود`;return`گزینه نامعتبر: میبایست یکی از ${g(i.values,"|")} میبود`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} باشد`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} باشد`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`رشته نامعتبر: باید با "${a.prefix}" شروع شود`;if(a.format==="ends_with")return`رشته نامعتبر: باید با "${a.suffix}" تمام شود`;if(a.format==="includes")return`رشته نامعتبر: باید شامل "${a.includes}" باشد`;if(a.format==="regex")return`رشته نامعتبر: باید با الگوی ${a.pattern} مطابقت داشته باشد`;return`${n[a.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${g(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},Fb=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${a}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${_(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${a}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${a}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${a.prefix}"`;if(a.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${a.suffix}"`;if(a.format==="includes")return`Virheellinen syöte: täytyy sisältää "${a.includes}"`;if(a.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${a.pattern}`;return`Virheellinen ${n[a.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${g(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},Kb=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${a} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${_(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${g(i.values,"|")} attendue`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${r[i.origin]??"valeur"} doit être ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${r[i.origin]??"valeur"} doit être ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},Hb=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${a}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${_(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${a}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au motif ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},Gb=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(l)=>l?e[l]:void 0,r=(l)=>{let c=n(l);if(c)return c.label;return l??e.unknown.label},i=(l)=>`ה${r(l)}`,a=(l)=>{return(n(l)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(l)=>{if(!l)return null;return t[l]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},d={nan:"NaN"};return(l)=>{switch(l.code){case"invalid_type":{let c=l.expected,f=d[c??""]??r(c),v=k(l.input),p=d[v]??e[v]?.label??v;if(/^[A-Z]/.test(l.expected))return`קלט לא תקין: צריך להיות instanceof ${l.expected}, התקבל ${p}`;return`קלט לא תקין: צריך להיות ${f}, התקבל ${p}`}case"invalid_value":{if(l.values.length===1)return`ערך לא תקין: הערך חייב להיות ${_(l.values[0])}`;let c=l.values.map((v)=>_(v));if(l.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let f=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${f}`}case"too_big":{let c=o(l.origin),f=i(l.origin??"value");if(l.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${f} צריכה להכיל ${l.maximum.toString()} ${c?.unit??""} ${l.inclusive?"או פחות":"לכל היותר"}`.trim();if(l.origin==="number"){let y=l.inclusive?`קטן או שווה ל-${l.maximum}`:`קטן מ-${l.maximum}`;return`גדול מדי: ${f} צריך להיות ${y}`}if(l.origin==="array"||l.origin==="set"){let y=l.origin==="set"?"צריכה":"צריך",I=l.inclusive?`${l.maximum} ${c?.unit??""} או פחות`:`פחות מ-${l.maximum} ${c?.unit??""}`;return`גדול מדי: ${f} ${y} להכיל ${I}`.trim()}let v=l.inclusive?"<=":"<",p=a(l.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${f} ${p} ${v}${l.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${f} ${p} ${v}${l.maximum.toString()}`}case"too_small":{let c=o(l.origin),f=i(l.origin??"value");if(l.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${f} צריכה להכיל ${l.minimum.toString()} ${c?.unit??""} ${l.inclusive?"או יותר":"לפחות"}`.trim();if(l.origin==="number"){let y=l.inclusive?`גדול או שווה ל-${l.minimum}`:`גדול מ-${l.minimum}`;return`קטן מדי: ${f} צריך להיות ${y}`}if(l.origin==="array"||l.origin==="set"){let y=l.origin==="set"?"צריכה":"צריך";if(l.minimum===1&&l.inclusive){let j=l.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${f} ${y} להכיל ${j}`}let I=l.inclusive?`${l.minimum} ${c?.unit??""} או יותר`:`יותר מ-${l.minimum} ${c?.unit??""}`;return`קטן מדי: ${f} ${y} להכיל ${I}`.trim()}let v=l.inclusive?">=":">",p=a(l.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${f} ${p} ${v}${l.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${f} ${p} ${v}${l.minimum.toString()}`}case"invalid_format":{let c=l;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let f=s[c.format],v=f?.label??c.format,p=(f?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${p}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${l.divisor}`;case"unrecognized_keys":return`מפתח${l.keys.length>1?"ות":""} לא מזוה${l.keys.length>1?"ים":"ה"}: ${g(l.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(l.origin??"array")}`;default:return"קלט לא תקין"}}},Yb=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},r={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${a}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${_(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${a}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${a}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neispravan tekst: mora započinjati s "${a.prefix}"`;if(a.format==="ends_with")return`Neispravan tekst: mora završavati s "${a.suffix}"`;if(a.format==="includes")return`Neispravan tekst: mora sadržavati "${a.includes}"`;if(a.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${a.pattern}`;return`Neispravna ${n[a.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${r[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${r[i.origin]??i.origin}`;default:return"Neispravan unos"}}},Qb=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},r={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${a}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${_(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${a}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${a}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Érvénytelen string: "${a.prefix}" értékkel kell kezdődnie`;if(a.format==="ends_with")return`Érvénytelen string: "${a.suffix}" értékkel kell végződnie`;if(a.format==="includes")return`Érvénytelen string: "${a.includes}" értéket kell tartalmaznia`;if(a.format==="regex")return`Érvénytelen string: ${a.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[a.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},e$=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},r={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${a}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${_(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Js(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${rt(i.origin??"արժեք")} կունենա ${a}${i.maximum.toString()} ${d}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${rt(i.origin??"արժեք")} լինի ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Js(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${rt(i.origin)} կունենա ${a}${i.minimum.toString()} ${d}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${rt(i.origin)} լինի ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${a.prefix}"-ով`;if(a.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${a.suffix}"-ով`;if(a.format==="includes")return`Սխալ տող․ պետք է պարունակի "${a.includes}"`;if(a.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${a.pattern} ձևաչափին`;return`Սխալ ${n[a.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${g(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${rt(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${rt(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},i$=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${_(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak valid: harus dimulai dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak valid: harus berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak valid: harus menyertakan "${a.includes}"`;if(a.format==="regex")return`String tidak valid: harus sesuai pola ${a.pattern}`;return`${n[a.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},r$=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},r={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${a}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${_(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${a}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${a}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ógildur strengur: verður að byrja á "${a.prefix}"`;if(a.format==="ends_with")return`Ógildur strengur: verður að enda á "${a.suffix}"`;if(a.format==="includes")return`Ógildur strengur: verður að innihalda "${a.includes}"`;if(a.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${a.pattern}`;return`Rangt ${n[a.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${g(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},o$=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${a}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${_(i.values[0])}`;return`Opzione non valida: atteso uno tra ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${a}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${a}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Stringa non valida: deve iniziare con "${a.prefix}"`;if(a.format==="ends_with")return`Stringa non valida: deve terminare con "${a.suffix}"`;if(a.format==="includes")return`Stringa non valida: deve includere "${a.includes}"`;if(a.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${a.pattern}`;return`Input non valido: ${n[a.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${g(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},u$=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},r={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${a}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${_(i.values[0])}が期待されました`;return`無効な選択: ${g(i.values,"、")}のいずれかである必要があります`;case"too_big":{let a=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${a}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${a}必要があります`}case"too_small":{let a=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${a}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${a}必要があります`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無効な文字列: "${a.prefix}"で始まる必要があります`;if(a.format==="ends_with")return`無効な文字列: "${a.suffix}"で終わる必要があります`;if(a.format==="includes")return`無効な文字列: "${a.includes}"を含む必要があります`;if(a.format==="regex")return`無効な文字列: パターン${a.pattern}に一致する必要があります`;return`無効な${n[a.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${g(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},d$=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},r={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${a}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${_(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${g(i.values,"|")}-დან`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${a.prefix}"-ით`;if(a.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${a.suffix}"-ით`;if(a.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${a.includes}"-ს`;if(a.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${a.pattern}`;return`არასწორი ${n[a.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${g(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},m$=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},r={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${a} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${_(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${a.prefix}"`;if(a.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${a.suffix}"`;if(a.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${a.includes}"`;if(a.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${a.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[a.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${g(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},p$=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${a}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${_(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${g(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let a=i.inclusive?"이하":"미만",o=a==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${a}${o}`}case"too_small":{let a=i.inclusive?"이상":"초과",o=a==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${a}${o}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`잘못된 문자열: "${a.prefix}"(으)로 시작해야 합니다`;if(a.format==="ends_with")return`잘못된 문자열: "${a.suffix}"(으)로 끝나야 합니다`;if(a.format==="includes")return`잘못된 문자열: "${a.includes}"을(를) 포함해야 합니다`;if(a.format==="regex")return`잘못된 문자열: 정규식 ${a.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[a.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${g(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},Ot=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},g$=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,a,o,s){let d=e[i]??null;if(d===null)return d;return{unit:d.unit[a],verb:d.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},r={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${a}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${_(i.values[0])}`;return`Privalo būti vienas iš ${g(i.values,"|")} pasirinkimų`;case"too_big":{let a=r[i.origin]??i.origin,o=t(i.origin,Ks(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${Ot(a??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${Ot(a??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let a=r[i.origin]??i.origin,o=t(i.origin,Ks(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${Ot(a??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${Ot(a??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Eilutė privalo prasidėti "${a.prefix}"`;if(a.format==="ends_with")return`Eilutė privalo pasibaigti "${a.suffix}"`;if(a.format==="includes")return`Eilutė privalo įtraukti "${a.includes}"`;if(a.format==="regex")return`Eilutė privalo atitikti ${a.pattern}`;return`Neteisingas ${n[a.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${g(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let a=r[i.origin]??i.origin;return`${Ot(a??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},y$=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},r={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${a}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Грешана опција: се очекува една ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${a}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${a}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неважечка низа: мора да започнува со "${a.prefix}"`;if(a.format==="ends_with")return`Неважечка низа: мора да завршува со "${a.suffix}"`;if(a.format==="includes")return`Неважечка низа: мора да вклучува "${a.includes}"`;if(a.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${g(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},$$=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${_(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak sah: mesti bermula dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak sah: mesti mengandungi "${a.includes}"`;if(a.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${a.pattern}`;return`${n[a.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},k$=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},r={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${a}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${_(i.values[0])}`;return`Ongeldige optie: verwacht één van ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} is`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} is`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ongeldige tekst: moet met "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ongeldige tekst: moet op "${a.suffix}" eindigen`;if(a.format==="includes")return`Ongeldige tekst: moet "${a.includes}" bevatten`;if(a.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${a.pattern}`;return`Ongeldig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},S$=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${a}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${_(i.values[0])}`;return`Ugyldig valg: forventet en av ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: må starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: må ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: må inneholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: må matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},x$=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},r={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${_(i.values[0])}`;return`Fâsit tercih: mûteberler ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} olmalıydı.`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Fâsit metin: "${a.prefix}" ile başlamalı.`;if(a.format==="ends_with")return`Fâsit metin: "${a.suffix}" ile bitmeli.`;if(a.format==="includes")return`Fâsit metin: "${a.includes}" ihtivâ etmeli.`;if(a.format==="regex")return`Fâsit metin: ${a.pattern} nakşına uymalı.`;return`Fâsit ${n[a.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},U$=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},r={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${a} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${_(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${g(i.values,"|")} څخه وای`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} وي`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} وي`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ناسم متن: باید د "${a.prefix}" سره پیل شي`;if(a.format==="ends_with")return`ناسم متن: باید د "${a.suffix}" سره پای ته ورسيږي`;if(a.format==="includes")return`ناسم متن: باید "${a.includes}" ولري`;if(a.format==="regex")return`ناسم متن: باید د ${a.pattern} سره مطابقت ولري`;return`${n[a.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${g(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},E$=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},r={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${a}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${_(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${a.prefix}"`;if(a.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${a.suffix}"`;if(a.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${a.includes}"`;if(a.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${a.pattern}`;return`Nieprawidłow(y/a/e) ${n[a.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},j$=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${a}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${_(i.values[0])}`;return`Opção inválida: esperada uma das ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${a}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Texto inválido: deve começar com "${a.prefix}"`;if(a.format==="ends_with")return`Texto inválido: deve terminar com "${a.suffix}"`;if(a.format==="includes")return`Texto inválido: deve incluir "${a.includes}"`;if(a.format==="regex")return`Texto inválido: deve corresponder ao padrão ${a.pattern}`;return`${n[a.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},N$=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},r={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;return`Intrare invalidă: așteptat ${a}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${_(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${a.prefix}"`;if(a.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${a.suffix}"`;if(a.format==="includes")return`Șir invalid: trebuie să includă "${a.includes}"`;if(a.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${a.pattern}`;return`Format invalid: ${n[a.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${g(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},A$=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},r={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${a}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${_(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Ws(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${a}${i.maximum.toString()} ${d}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Ws(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${a}${i.minimum.toString()} ${d}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неверная строка: должна начинаться с "${a.prefix}"`;if(a.format==="ends_with")return`Неверная строка: должна заканчиваться на "${a.suffix}"`;if(a.format==="includes")return`Неверная строка: должна содержать "${a.includes}"`;if(a.format==="regex")return`Неверная строка: должна соответствовать шаблону ${a.pattern}`;return`Неверный ${n[a.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},C$=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},r={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${a}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${_(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${a}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${a}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neveljaven niz: mora se začeti z "${a.prefix}"`;if(a.format==="ends_with")return`Neveljaven niz: mora se končati z "${a.suffix}"`;if(a.format==="includes")return`Neveljaven niz: mora vsebovati "${a.includes}"`;if(a.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${a.pattern}`;return`Neveljaven ${n[a.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},L$=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},r={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${a}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${_(i.values[0])}`;return`Ogiltigt val: förväntade en av ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ogiltig sträng: måste börja med "${a.prefix}"`;if(a.format==="ends_with")return`Ogiltig sträng: måste sluta med "${a.suffix}"`;if(a.format==="includes")return`Ogiltig sträng: måste innehålla "${a.includes}"`;if(a.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${a.pattern}"`;return`Ogiltig(t) ${n[a.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},F$=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${a}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${_(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${g(i.values,"|")} இல் ஒன்று`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`தவறான சரம்: "${a.prefix}" இல் தொடங்க வேண்டும்`;if(a.format==="ends_with")return`தவறான சரம்: "${a.suffix}" இல் முடிவடைய வேண்டும்`;if(a.format==="includes")return`தவறான சரம்: "${a.includes}" ஐ உள்ளடக்க வேண்டும்`;if(a.format==="regex")return`தவறான சரம்: ${a.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[a.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},K$=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},r={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${a} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${_(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${a.prefix}"`;if(a.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${a.suffix}"`;if(a.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${a.includes}" อยู่ในข้อความ`;if(a.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${a.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[a.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${g(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},H$=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${_(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Geçersiz metin: "${a.prefix}" ile başlamalı`;if(a.format==="ends_with")return`Geçersiz metin: "${a.suffix}" ile bitmeli`;if(a.format==="includes")return`Geçersiz metin: "${a.includes}" içermeli`;if(a.format==="regex")return`Geçersiz metin: ${a.pattern} desenine uymalı`;return`Geçersiz ${n[a.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},G$=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${a}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${_(i.values[0])}`;return`Неправильна опція: очікується одне з ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неправильний рядок: повинен починатися з "${a.prefix}"`;if(a.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${a.suffix}"`;if(a.format==="includes")return`Неправильний рядок: повинен містити "${a.includes}"`;if(a.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${a.pattern}`;return`Неправильний ${n[a.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},Y$=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},r={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${a} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${_(i.values[0])} متوقع تھا`;return`غلط آپشن: ${g(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${a}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${a}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${a}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${a}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`غلط سٹرنگ: "${a.prefix}" سے شروع ہونا چاہیے`;if(a.format==="ends_with")return`غلط سٹرنگ: "${a.suffix}" پر ختم ہونا چاہیے`;if(a.format==="includes")return`غلط سٹرنگ: "${a.includes}" شامل ہونا چاہیے`;if(a.format==="regex")return`غلط سٹرنگ: پیٹرن ${a.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[a.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},Q$=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},r={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${a}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${_(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Noto‘g‘ri satr: "${a.prefix}" bilan boshlanishi kerak`;if(a.format==="ends_with")return`Noto‘g‘ri satr: "${a.suffix}" bilan tugashi kerak`;if(a.format==="includes")return`Noto‘g‘ri satr: "${a.includes}" ni o‘z ichiga olishi kerak`;if(a.format==="regex")return`Noto‘g‘ri satr: ${a.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[a.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},e_=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},r={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${a}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${_(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${a.prefix}"`;if(a.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${a.suffix}"`;if(a.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${a.includes}"`;if(a.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${a.pattern}`;return`${n[a.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${g(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},i_=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},r={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${a},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${_(i.values[0])}`;return`无效选项:期望以下之一 ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`无效字符串:必须以 "${a.prefix}" 开头`;if(a.format==="ends_with")return`无效字符串:必须以 "${a.suffix}" 结尾`;if(a.format==="includes")return`无效字符串:必须包含 "${a.includes}"`;if(a.format==="regex")return`无效字符串:必须满足正则表达式 ${a.pattern}`;return`无效${n[a.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},r_=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${a},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${_(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無效的字串:必須以 "${a.prefix}" 開頭`;if(a.format==="ends_with")return`無效的字串:必須以 "${a.suffix}" 結尾`;if(a.format==="includes")return`無效的字串:必須包含 "${a.includes}"`;if(a.format==="regex")return`無效的字串:必須符合格式 ${a.pattern}`;return`無效的 ${n[a.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${g(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},o_=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},r={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${a}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${_(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${a}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${a}${i.maximum}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${a}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${a}${i.minimum}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${a.prefix}"`;if(a.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${a.suffix}"`;if(a.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${a.includes}"`;if(a.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${a.pattern}`;return`Aṣìṣe: ${n[a.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${g(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},Hs,ac,oc,ue,dc,Bc=(e,t={})=>(n)=>{let r=ct({...n,processors:t});return N(e,r),mt(r,e),ft(r,e)},Nt=(e,t,n={})=>(r)=>{let{libraryOptions:i,target:a}=r??{},o=ct({...i??{},target:a,io:t,processors:n});return N(e,o),mt(o,e),ft(o,e)},T_,Gc=(e,t,n,r)=>{let i=n;i.type="string";let{minimum:a,maximum:o,format:s,patterns:d,contentEncoding:l}=e._zod.bag;if(typeof a==="number")i.minLength=a;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=T_[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(l)i.contentEncoding=l;if(d&&d.size>0){let c=[...d];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},Xc=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:d,exclusiveMaximum:l,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let f=typeof c==="number"&&c>=(a??Number.NEGATIVE_INFINITY),v=typeof l==="number"&&l<=(o??Number.POSITIVE_INFINITY),p=t.target==="draft-04"||t.target==="openapi-3.0";if(f)if(p)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof a==="number")i.minimum=a;if(v)if(p)i.maximum=l,i.exclusiveMaximum=!0;else i.exclusiveMaximum=l;else if(typeof o==="number")i.maximum=o;if(typeof d==="number")i.multipleOf=d},Yc=(e,t,n,r)=>{n.type="boolean"},Vc=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Qc=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},qc=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},em=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},tm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},im=(e,t,n,r)=>{n.not={}},nm=(e,t,n,r)=>{},rm=(e,t,n,r)=>{},am=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},om=(e,t,n,r)=>{let i=e._zod.def,a=_r(i.entries);if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";n.enum=a},sm=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(o));else a.push(o);if(a.length===0);else if(a.length===1){let o=a[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";if(a.every((o)=>typeof o==="boolean"))n.type="boolean";if(a.every((o)=>o===null))n.type="null";n.enum=a}},um=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},lm=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");i.type="string",i.pattern=a.source},dm=(e,t,n,r)=>{let i=n,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:d}=e._zod.bag;if(o!==void 0)a.minLength=o;if(s!==void 0)a.maxLength=s;if(d)if(d.length===1)a.contentMediaType=d[0],Object.assign(i,a);else Object.assign(i,a),i.anyOf=d.map((l)=>({contentMediaType:l}));else Object.assign(i,a)},cm=(e,t,n,r)=>{n.type="boolean"},mm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},fm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},pm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},vm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},gm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},hm=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=N(a.element,t,{...r,path:[...r.path,"items"]})},ym=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object",i.properties={};let o=a.shape;for(let l in o)i.properties[l]=N(o[l],t,{...r,path:[...r.path,"properties",l]});let s=new Set(Object.keys(o)),d=new Set([...s].filter((l)=>{let c=a.shape[l]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(d.size>0)i.required=Array.from(d);if(a.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")i.additionalProperties=!1}else if(a.catchall)i.additionalProperties=N(a.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},_a=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((s,d)=>N(s,t,{...r,path:[...r.path,a?"oneOf":"anyOf",d]}));if(a)n.oneOf=o;else n.anyOf=o},bm=(e,t,n,r)=>{let i=e._zod.def,a=N(i.left,t,{...r,path:[...r.path,"allOf",0]}),o=N(i.right,t,{...r,path:[...r.path,"allOf",1]}),s=(l)=>("allOf"in l)&&Object.keys(l).length===1,d=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=d},$m=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",d=a.items.map((v,p)=>N(v,t,{...r,path:[...r.path,o,p]})),l=a.rest?N(a.rest,t,{...r,path:[...r.path,s,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=d,l)i.items=l}else if(t.target==="openapi-3.0"){if(i.items={anyOf:d},l)i.items.anyOf.push(l);if(i.minItems=d.length,!l)i.maxItems=d.length}else if(i.items=d,l)i.additionalItems=l;let{minimum:c,maximum:f}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof f==="number")i.maxItems=f},_m=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object";let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode==="loose"&&s&&s.size>0){let l=N(a.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=l}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=N(a.keyType,t,{...r,path:[...r.path,"propertyNames"]});i.additionalProperties=N(a.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let d=o._zod.values;if(d){let l=[...d].filter((c)=>typeof c==="string"||typeof c==="number");if(l.length>0)i.required=l}},km=(e,t,n,r)=>{let i=e._zod.def,a=N(i.innerType,t,r),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[a,{type:"null"}]},wm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Sm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Im=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},xm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},zm=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?a?i.out:i.in:i.out;N(o,t,r);let s=t.seen.get(e);s.ref=o},Um=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Om=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ka=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Em=(e,t,n,r)=>{let i=e._zod.innerType;N(i,t,r);let a=t.seen.get(e);a.ref=i},dr,j_,Pm,Nm,wa,Sa,Ia,xa,za,Rm=(e,t)=>{wr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>Ir(e,n)},flatten:{value:(n)=>Sr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Ti,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Ti,2)}},isEmpty:{get(){return e.issues.length===0}}})},P_,re,Lm,Mm,Fm,Jm,Km,Wm,Hm,Bm,Gm,Xm,Ym,Vm,Bs,z,an,ei,A,on,At,$e,ti,sn,un,ln,dn,cn,mn,fn,pn,Ua,vn,gn,hn,yn,bn,$n,_n,ht,ii,Xe,ni,ri,kn,Ta,ja,Pa,Da,Aa,Za,Ca,Sn,Ra,oi,si,La,Ma,Fa,Ka,pt,Ba,Ga,vt,Xa,Ya,Va,Un,Qa,eo,to,no,On,oo,so,lo,ui,li,co,mo,po,vo,ho,yo,di,sp,up,dp=(...e)=>Hc({Codec:li,Boolean:ni,String:ei},...e),N_,cr,b,Z_,pp,_o,vp,gp,hp,yp,bp,$p,_p,kp,wp,Sp,Ip,xp,zp,H_,Up,Op,mr,Ui,Ep,Tp,B_,G_,jp,X_,Pp,Np,Dp,Ap,Zp,ko,Cp,Rp,Lp,Y_,Mp,V_,Fp,Jp,Kp,Q_,q_,ek,Wp,ik,nk,sk,Xp,Be,uk,lk,dk,ck,mk,fk,pk,vk,Yp,hk=30000,yk=5000,Qp,$k,kk="tool_executor.",wk="custom_tool.",Sk="hook.",Ik="compaction.compact",xk="checkpoint.create",zk="mistake_limit.decide",Uk="user_instructions.snapshot",fr="ERROR: EMPTY CONTENT",jt,Dk=void 0,Ck,Lk,Le,qs,eu,Jk,Xk,Yk,qk,tw,pw=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
|
|
41
|
+
`),process.exit(1);let n=JSON.parse(iI(e,"utf-8")),r=Number.parseInt(process.env.CLINE_VCR_SSE_DELAY??"100",10),i=Array(n.length).fill(!1),a=globalThis.fetch;globalThis.fetch=Object.assign(async(s,d)=>{let l=Ev(s),c=Tv(s,d),{path:f}=Ov(l),v=$r(f);if(t&&!f.includes(t))return a(s,d);let p=n.findIndex((y,I)=>{if(i[I])return!1;let j=$r(y.path);return y.method.toUpperCase()===c&&j===v});if(p>=0){let y=n[p];if(!y)return a(s,d);await $I({recording:y,requestInput:s,requestInit:d,method:c,path:v}),i[p]=!0;let I=typeof y.response==="string"?y.response:JSON.stringify(y.response),j=new Headers;if(y.contentType)j.set("content-type",y.contentType);else if(typeof y.response==="string"&&y.response.trimStart().startsWith("data:"))j.set("content-type","text/event-stream");else if(typeof y.response==="object")j.set("content-type","application/json");let U=j.get("content-type")?.includes("text/event-stream")??!1;if(U)j.set("cache-control","no-cache"),j.set("connection","keep-alive");if(U&&typeof y.response==="string"){let C=yI(y.response);if(C.length>1){let w=bI(C,r);return new Response(w,{status:y.status,headers:j})}}return new Response(I,{status:y.status,headers:j})}if(!t)throw Error(`[VCR] No matching recording for ${c} ${l} (path: ${v}). ${n.length} recording(s) loaded from ${e}.`);return a(s,d)},{preconnect:(s)=>{}});let o=t?`(only paths matching "*${t}*", all other requests go through normally)`:"(all requests intercepted)";process.stderr.write(`[VCR] Playing back ${n.length} recorded HTTP interaction(s) from ${e} ${o}
|
|
42
|
+
`)}function kI(e){let t=gI(e);if(!t)return;if(t.mode==="record")hI(t.cassettePath,t.filter,t.includeRequestBody);else _I(t.cassettePath,t.filter)}var Ph,Nh=(e)=>e,Se=(e,t)=>{for(var n in t)Ph(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Dh.bind(t,n)})},or,Rh,Lh,$s,pu="enterprise.blobUpload",Ei,qh="remote://",ny="remote-config",u,Iu,xs,xu,zu,Oe,Rt,Pt,O,zs,wr,Eu,ky=(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}`)}},ji,ju,Nu,Du,Lu=(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,Ti,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Sr,ne,Mt=(e)=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Oe;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ie(d,a,W())));throw wr(s,i?.callee),s}return o.value},ur,Jt=(e)=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ie(d,a,W())));throw wr(s,i?.callee),s}return o.value},lr,Ft=(e)=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Oe;return a.issues.length?{success:!1,error:new(e??Sr)(a.issues.map((o)=>ie(o,i,W())))}:{success:!0,data:a.value}},Ku,Kt=(e)=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((o)=>ie(o,i,W())))}:{success:!0,data:a.value}},Wu,zr=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Mt(e)(t,n,i)},Ay,Ur=(e)=>(t,n,r)=>{return Mt(e)(t,n,r)},Zy,Or=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Jt(e)(t,n,i)},Cy,Er=(e)=>async(t,n,r)=>{return Jt(e)(t,n,r)},Ry,Tr=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Ft(e)(t,n,i)},Ly,jr=(e)=>(t,n,r)=>{return Ft(e)(t,n,r)},My,Pr=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return Kt(e)(t,n,i)},Jy,Nr=(e)=>async(t,n,r)=>{return Kt(e)(t,n,r)},Fy,Ee,Hu,Bu,Gu,Xu,Yu,Vu,Qu,Ky,qu,lt=(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})$`)},Wy,Hy,By,el,Gy,Xy,tl,Yy,Vy,Qy="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",nl,rl,al=(e)=>{let t=we(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},ol,sl,ul,Dr,qy,eb,ll,dl,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])))",ml,gl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},hl,yl,Ar,bl,$l,_l,kl,wl,tb,ib,nb,rb,ab,ob,sb,ub,lb,db,cb,mb,fb,pb,vb,gb,L,Sl,Zr,Cr,Il,xl,zl,Ul,Ol,El,Tl,jl,Pl,Bt,Nl,Dl,Al,Zl,Cl,Rl,Ll,Ml,Jl,Fl,x,Gt,D,Kl,Wl,Hl,Bl,Gl,Xl,Yl,Vl,Ql,ql,ed,td,id,nd,rd,ad,od,sd,ud,ld,dd,md,fd,vd,gd,Mr,hd,Jr,Fr,yd,bd,$d,_d,kd,wd,Sd,Id,xd,zd,Ed,Td,Ki,jd,Pd,Nd,Kr,Dd,Ad,Zd,Cd,Rd,Ld,Md,Wr,Jd,Fd,Kd,Wd,Hd,Bd,Gd,Xd,Hr,Br,Yd,Vd,Qd,qd,ec,tc,ic,Gr,hb=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${a}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${_(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(a.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${a.suffix}"`;if(a.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${a.includes}"`;if(a.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${a.pattern}`;return`${n[a.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},bb=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${a}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${_(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Yanlış mətn: "${a.prefix}" ilə başlamalıdır`;if(a.format==="ends_with")return`Yanlış mətn: "${a.suffix}" ilə bitməlidir`;if(a.format==="includes")return`Yanlış mətn: "${a.includes}" daxil olmalıdır`;if(a.format==="regex")return`Yanlış mətn: ${a.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[a.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},_b=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},r={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${a}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${_(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Fs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${a}${i.maximum.toString()} ${d}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Fs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${a}${i.minimum.toString()} ${d}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${a.prefix}"`;if(a.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${a.suffix}"`;if(a.format==="includes")return`Няправільны радок: павінен змяшчаць "${a.includes}"`;if(a.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${a.pattern}`;return`Няправільны ${n[a.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},wb=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${a}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${_(i.values[0])}`;return`Невалидна опция: очаквано едно от ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${a}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${a}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Невалиден низ: трябва да започва с "${a.prefix}"`;if(a.format==="ends_with")return`Невалиден низ: трябва да завършва с "${a.suffix}"`;if(a.format==="includes")return`Невалиден низ: трябва да включва "${a.includes}"`;if(a.format==="regex")return`Невалиден низ: трябва да съвпада с ${a.pattern}`;let o="Невалиден";if(a.format==="emoji")o="Невалидно";if(a.format==="datetime")o="Невалидно";if(a.format==="date")o="Невалидна";if(a.format==="time")o="Невалидно";if(a.format==="duration")o="Невалидна";return`${o} ${n[a.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},Ib=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${a}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${_(i.values[0])}`;return`Opció invàlida: s'esperava una de ${g(i.values," o ")}`;case"too_big":{let a=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${a} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${a} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Format invàlid: ha de començar amb "${a.prefix}"`;if(a.format==="ends_with")return`Format invàlid: ha d'acabar amb "${a.suffix}"`;if(a.format==="includes")return`Format invàlid: ha d'incloure "${a.includes}"`;if(a.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${a.pattern}`;return`Format invàlid per a ${n[a.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},zb=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},r={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${a}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${_(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${a}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${a}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neplatný řetězec: musí začínat na "${a.prefix}"`;if(a.format==="ends_with")return`Neplatný řetězec: musí končit na "${a.suffix}"`;if(a.format==="includes")return`Neplatný řetězec: musí obsahovat "${a.includes}"`;if(a.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${a.pattern}`;return`Neplatný formát ${n[a.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${g(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},Ob=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${a}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${_(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${a} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${a} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: skal starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: skal ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: skal indeholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: skal matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},Tb=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},r={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${a}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${_(i.values[0])}`;return`Ungültige Option: erwartet eine von ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ist`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ist`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ungültiger String: muss mit "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ungültiger String: muss mit "${a.suffix}" enden`;if(a.format==="includes")return`Ungültiger String: muss "${a.includes}" enthalten`;if(a.format==="regex")return`Ungültiger String: muss dem Muster ${a.pattern} entsprechen`;return`Ungültig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},Pb=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${a}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${_(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${a}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${a}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${a.prefix}"`;if(a.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${a.suffix}"`;if(a.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${a.includes}"`;if(a.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${a.pattern}`;return`Μη έγκυρο: ${n[a.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${g(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},Db=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;return`Invalid input: expected ${a}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Invalid option: expected one of ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${a}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${a}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Invalid string: must start with "${a.prefix}"`;if(a.format==="ends_with")return`Invalid string: must end with "${a.suffix}"`;if(a.format==="includes")return`Invalid string: must include "${a.includes}"`;if(a.format==="regex")return`Invalid string: must match pattern ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((a)=>`'${a}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},Ab=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},r={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${a}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${_(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${a}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${a.prefix}"`;if(a.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${a.suffix}"`;if(a.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${a.includes}"`;if(a.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${a.pattern}`;return`Nevalida ${n[a.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},Cb=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${a}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${_(i.values[0])}`;return`Opción inválida: se esperaba una de ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${a}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Cadena inválida: debe comenzar con "${a.prefix}"`;if(a.format==="ends_with")return`Cadena inválida: debe terminar en "${a.suffix}"`;if(a.format==="includes")return`Cadena inválida: debe incluir "${a.includes}"`;if(a.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${a.pattern}`;return`Inválido ${n[a.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${r[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${r[i.origin]??i.origin}`;default:return"Entrada inválida"}}},Lb=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},r={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: میبایست instanceof ${i.expected} میبود، ${s} دریافت شد`;return`ورودی نامعتبر: میبایست ${a} میبود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: میبایست ${_(i.values[0])} میبود`;return`گزینه نامعتبر: میبایست یکی از ${g(i.values,"|")} میبود`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} باشد`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} باشد`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`رشته نامعتبر: باید با "${a.prefix}" شروع شود`;if(a.format==="ends_with")return`رشته نامعتبر: باید با "${a.suffix}" تمام شود`;if(a.format==="includes")return`رشته نامعتبر: باید شامل "${a.includes}" باشد`;if(a.format==="regex")return`رشته نامعتبر: باید با الگوی ${a.pattern} مطابقت داشته باشد`;return`${n[a.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${g(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},Jb=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${a}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${_(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${a}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${a}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${a.prefix}"`;if(a.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${a.suffix}"`;if(a.format==="includes")return`Virheellinen syöte: täytyy sisältää "${a.includes}"`;if(a.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${a.pattern}`;return`Virheellinen ${n[a.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${g(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},Kb=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${a} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${_(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${g(i.values,"|")} attendue`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${r[i.origin]??"valeur"} doit être ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${r[i.origin]??"valeur"} doit être ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},Hb=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${a}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${_(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${a}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au motif ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},Gb=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(l)=>l?e[l]:void 0,r=(l)=>{let c=n(l);if(c)return c.label;return l??e.unknown.label},i=(l)=>`ה${r(l)}`,a=(l)=>{return(n(l)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(l)=>{if(!l)return null;return t[l]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},d={nan:"NaN"};return(l)=>{switch(l.code){case"invalid_type":{let c=l.expected,f=d[c??""]??r(c),v=k(l.input),p=d[v]??e[v]?.label??v;if(/^[A-Z]/.test(l.expected))return`קלט לא תקין: צריך להיות instanceof ${l.expected}, התקבל ${p}`;return`קלט לא תקין: צריך להיות ${f}, התקבל ${p}`}case"invalid_value":{if(l.values.length===1)return`ערך לא תקין: הערך חייב להיות ${_(l.values[0])}`;let c=l.values.map((v)=>_(v));if(l.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let f=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${f}`}case"too_big":{let c=o(l.origin),f=i(l.origin??"value");if(l.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${f} צריכה להכיל ${l.maximum.toString()} ${c?.unit??""} ${l.inclusive?"או פחות":"לכל היותר"}`.trim();if(l.origin==="number"){let y=l.inclusive?`קטן או שווה ל-${l.maximum}`:`קטן מ-${l.maximum}`;return`גדול מדי: ${f} צריך להיות ${y}`}if(l.origin==="array"||l.origin==="set"){let y=l.origin==="set"?"צריכה":"צריך",I=l.inclusive?`${l.maximum} ${c?.unit??""} או פחות`:`פחות מ-${l.maximum} ${c?.unit??""}`;return`גדול מדי: ${f} ${y} להכיל ${I}`.trim()}let v=l.inclusive?"<=":"<",p=a(l.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${f} ${p} ${v}${l.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${f} ${p} ${v}${l.maximum.toString()}`}case"too_small":{let c=o(l.origin),f=i(l.origin??"value");if(l.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${f} צריכה להכיל ${l.minimum.toString()} ${c?.unit??""} ${l.inclusive?"או יותר":"לפחות"}`.trim();if(l.origin==="number"){let y=l.inclusive?`גדול או שווה ל-${l.minimum}`:`גדול מ-${l.minimum}`;return`קטן מדי: ${f} צריך להיות ${y}`}if(l.origin==="array"||l.origin==="set"){let y=l.origin==="set"?"צריכה":"צריך";if(l.minimum===1&&l.inclusive){let j=l.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${f} ${y} להכיל ${j}`}let I=l.inclusive?`${l.minimum} ${c?.unit??""} או יותר`:`יותר מ-${l.minimum} ${c?.unit??""}`;return`קטן מדי: ${f} ${y} להכיל ${I}`.trim()}let v=l.inclusive?">=":">",p=a(l.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${f} ${p} ${v}${l.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${f} ${p} ${v}${l.minimum.toString()}`}case"invalid_format":{let c=l;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let f=s[c.format],v=f?.label??c.format,p=(f?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${p}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${l.divisor}`;case"unrecognized_keys":return`מפתח${l.keys.length>1?"ות":""} לא מזוה${l.keys.length>1?"ים":"ה"}: ${g(l.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(l.origin??"array")}`;default:return"קלט לא תקין"}}},Yb=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},r={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${a}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${_(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${a}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${a}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neispravan tekst: mora započinjati s "${a.prefix}"`;if(a.format==="ends_with")return`Neispravan tekst: mora završavati s "${a.suffix}"`;if(a.format==="includes")return`Neispravan tekst: mora sadržavati "${a.includes}"`;if(a.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${a.pattern}`;return`Neispravna ${n[a.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${r[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${r[i.origin]??i.origin}`;default:return"Neispravan unos"}}},Qb=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},r={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${a}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${_(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${a}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${a}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Érvénytelen string: "${a.prefix}" értékkel kell kezdődnie`;if(a.format==="ends_with")return`Érvénytelen string: "${a.suffix}" értékkel kell végződnie`;if(a.format==="includes")return`Érvénytelen string: "${a.includes}" értéket kell tartalmaznia`;if(a.format==="regex")return`Érvénytelen string: ${a.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[a.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},e$=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},r={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${a}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${_(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Ks(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${rt(i.origin??"արժեք")} կունենա ${a}${i.maximum.toString()} ${d}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${rt(i.origin??"արժեք")} լինի ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Ks(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${rt(i.origin)} կունենա ${a}${i.minimum.toString()} ${d}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${rt(i.origin)} լինի ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${a.prefix}"-ով`;if(a.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${a.suffix}"-ով`;if(a.format==="includes")return`Սխալ տող․ պետք է պարունակի "${a.includes}"`;if(a.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${a.pattern} ձևաչափին`;return`Սխալ ${n[a.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${g(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${rt(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${rt(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},i$=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${_(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak valid: harus dimulai dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak valid: harus berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak valid: harus menyertakan "${a.includes}"`;if(a.format==="regex")return`String tidak valid: harus sesuai pola ${a.pattern}`;return`${n[a.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},r$=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},r={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${a}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${_(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${a}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${a}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ógildur strengur: verður að byrja á "${a.prefix}"`;if(a.format==="ends_with")return`Ógildur strengur: verður að enda á "${a.suffix}"`;if(a.format==="includes")return`Ógildur strengur: verður að innihalda "${a.includes}"`;if(a.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${a.pattern}`;return`Rangt ${n[a.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${g(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},o$=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${a}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${_(i.values[0])}`;return`Opzione non valida: atteso uno tra ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${a}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${a}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Stringa non valida: deve iniziare con "${a.prefix}"`;if(a.format==="ends_with")return`Stringa non valida: deve terminare con "${a.suffix}"`;if(a.format==="includes")return`Stringa non valida: deve includere "${a.includes}"`;if(a.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${a.pattern}`;return`Input non valido: ${n[a.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${g(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},u$=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},r={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${a}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${_(i.values[0])}が期待されました`;return`無効な選択: ${g(i.values,"、")}のいずれかである必要があります`;case"too_big":{let a=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${a}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${a}必要があります`}case"too_small":{let a=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${a}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${a}必要があります`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無効な文字列: "${a.prefix}"で始まる必要があります`;if(a.format==="ends_with")return`無効な文字列: "${a.suffix}"で終わる必要があります`;if(a.format==="includes")return`無効な文字列: "${a.includes}"を含む必要があります`;if(a.format==="regex")return`無効な文字列: パターン${a.pattern}に一致する必要があります`;return`無効な${n[a.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${g(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},d$=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},r={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${a}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${_(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${g(i.values,"|")}-დან`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${a.prefix}"-ით`;if(a.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${a.suffix}"-ით`;if(a.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${a.includes}"-ს`;if(a.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${a.pattern}`;return`არასწორი ${n[a.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${g(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},m$=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},r={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${a} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${_(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${a.prefix}"`;if(a.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${a.suffix}"`;if(a.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${a.includes}"`;if(a.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${a.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[a.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${g(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},p$=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${a}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${_(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${g(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let a=i.inclusive?"이하":"미만",o=a==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${a}${o}`}case"too_small":{let a=i.inclusive?"이상":"초과",o=a==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${a}${o}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`잘못된 문자열: "${a.prefix}"(으)로 시작해야 합니다`;if(a.format==="ends_with")return`잘못된 문자열: "${a.suffix}"(으)로 끝나야 합니다`;if(a.format==="includes")return`잘못된 문자열: "${a.includes}"을(를) 포함해야 합니다`;if(a.format==="regex")return`잘못된 문자열: 정규식 ${a.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[a.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${g(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},Ot=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},g$=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,a,o,s){let d=e[i]??null;if(d===null)return d;return{unit:d.unit[a],verb:d.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},r={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${a}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${_(i.values[0])}`;return`Privalo būti vienas iš ${g(i.values,"|")} pasirinkimų`;case"too_big":{let a=r[i.origin]??i.origin,o=t(i.origin,Ws(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${Ot(a??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${Ot(a??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let a=r[i.origin]??i.origin,o=t(i.origin,Ws(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${Ot(a??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${Ot(a??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Eilutė privalo prasidėti "${a.prefix}"`;if(a.format==="ends_with")return`Eilutė privalo pasibaigti "${a.suffix}"`;if(a.format==="includes")return`Eilutė privalo įtraukti "${a.includes}"`;if(a.format==="regex")return`Eilutė privalo atitikti ${a.pattern}`;return`Neteisingas ${n[a.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${g(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let a=r[i.origin]??i.origin;return`${Ot(a??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},y$=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},r={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${a}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Грешана опција: се очекува една ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${a}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${a}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неважечка низа: мора да започнува со "${a.prefix}"`;if(a.format==="ends_with")return`Неважечка низа: мора да завршува со "${a.suffix}"`;if(a.format==="includes")return`Неважечка низа: мора да вклучува "${a.includes}"`;if(a.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${g(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},$$=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${_(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak sah: mesti bermula dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak sah: mesti mengandungi "${a.includes}"`;if(a.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${a.pattern}`;return`${n[a.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},k$=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},r={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${a}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${_(i.values[0])}`;return`Ongeldige optie: verwacht één van ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} is`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} is`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ongeldige tekst: moet met "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ongeldige tekst: moet op "${a.suffix}" eindigen`;if(a.format==="includes")return`Ongeldige tekst: moet "${a.includes}" bevatten`;if(a.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${a.pattern}`;return`Ongeldig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},S$=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${a}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${_(i.values[0])}`;return`Ugyldig valg: forventet en av ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: må starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: må ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: må inneholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: må matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},x$=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},r={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${_(i.values[0])}`;return`Fâsit tercih: mûteberler ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} olmalıydı.`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Fâsit metin: "${a.prefix}" ile başlamalı.`;if(a.format==="ends_with")return`Fâsit metin: "${a.suffix}" ile bitmeli.`;if(a.format==="includes")return`Fâsit metin: "${a.includes}" ihtivâ etmeli.`;if(a.format==="regex")return`Fâsit metin: ${a.pattern} nakşına uymalı.`;return`Fâsit ${n[a.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},U$=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},r={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${a} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${_(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${g(i.values,"|")} څخه وای`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} وي`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} وي`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ناسم متن: باید د "${a.prefix}" سره پیل شي`;if(a.format==="ends_with")return`ناسم متن: باید د "${a.suffix}" سره پای ته ورسيږي`;if(a.format==="includes")return`ناسم متن: باید "${a.includes}" ولري`;if(a.format==="regex")return`ناسم متن: باید د ${a.pattern} سره مطابقت ولري`;return`${n[a.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${g(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},E$=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},r={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${a}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${_(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${a.prefix}"`;if(a.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${a.suffix}"`;if(a.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${a.includes}"`;if(a.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${a.pattern}`;return`Nieprawidłow(y/a/e) ${n[a.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},j$=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${a}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${_(i.values[0])}`;return`Opção inválida: esperada uma das ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${a}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Texto inválido: deve começar com "${a.prefix}"`;if(a.format==="ends_with")return`Texto inválido: deve terminar com "${a.suffix}"`;if(a.format==="includes")return`Texto inválido: deve incluir "${a.includes}"`;if(a.format==="regex")return`Texto inválido: deve corresponder ao padrão ${a.pattern}`;return`${n[a.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},N$=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},r={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;return`Intrare invalidă: așteptat ${a}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${_(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${a.prefix}"`;if(a.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${a.suffix}"`;if(a.format==="includes")return`Șir invalid: trebuie să includă "${a.includes}"`;if(a.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${a.pattern}`;return`Format invalid: ${n[a.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${g(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},A$=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},r={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${a}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${_(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Hs(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${a}${i.maximum.toString()} ${d}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Hs(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${a}${i.minimum.toString()} ${d}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неверная строка: должна начинаться с "${a.prefix}"`;if(a.format==="ends_with")return`Неверная строка: должна заканчиваться на "${a.suffix}"`;if(a.format==="includes")return`Неверная строка: должна содержать "${a.includes}"`;if(a.format==="regex")return`Неверная строка: должна соответствовать шаблону ${a.pattern}`;return`Неверный ${n[a.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},C$=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},r={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${a}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${_(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${a}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${a}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neveljaven niz: mora se začeti z "${a.prefix}"`;if(a.format==="ends_with")return`Neveljaven niz: mora se končati z "${a.suffix}"`;if(a.format==="includes")return`Neveljaven niz: mora vsebovati "${a.includes}"`;if(a.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${a.pattern}`;return`Neveljaven ${n[a.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},L$=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},r={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${a}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${_(i.values[0])}`;return`Ogiltigt val: förväntade en av ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ogiltig sträng: måste börja med "${a.prefix}"`;if(a.format==="ends_with")return`Ogiltig sträng: måste sluta med "${a.suffix}"`;if(a.format==="includes")return`Ogiltig sträng: måste innehålla "${a.includes}"`;if(a.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${a.pattern}"`;return`Ogiltig(t) ${n[a.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},J$=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${a}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${_(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${g(i.values,"|")} இல் ஒன்று`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`தவறான சரம்: "${a.prefix}" இல் தொடங்க வேண்டும்`;if(a.format==="ends_with")return`தவறான சரம்: "${a.suffix}" இல் முடிவடைய வேண்டும்`;if(a.format==="includes")return`தவறான சரம்: "${a.includes}" ஐ உள்ளடக்க வேண்டும்`;if(a.format==="regex")return`தவறான சரம்: ${a.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[a.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},K$=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},r={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${a} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${_(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${a.prefix}"`;if(a.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${a.suffix}"`;if(a.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${a.includes}" อยู่ในข้อความ`;if(a.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${a.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[a.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${g(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},H$=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${_(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Geçersiz metin: "${a.prefix}" ile başlamalı`;if(a.format==="ends_with")return`Geçersiz metin: "${a.suffix}" ile bitmeli`;if(a.format==="includes")return`Geçersiz metin: "${a.includes}" içermeli`;if(a.format==="regex")return`Geçersiz metin: ${a.pattern} desenine uymalı`;return`Geçersiz ${n[a.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},G$=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${a}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${_(i.values[0])}`;return`Неправильна опція: очікується одне з ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неправильний рядок: повинен починатися з "${a.prefix}"`;if(a.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${a.suffix}"`;if(a.format==="includes")return`Неправильний рядок: повинен містити "${a.includes}"`;if(a.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${a.pattern}`;return`Неправильний ${n[a.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},Y$=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},r={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${a} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${_(i.values[0])} متوقع تھا`;return`غلط آپشن: ${g(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${a}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${a}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${a}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${a}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`غلط سٹرنگ: "${a.prefix}" سے شروع ہونا چاہیے`;if(a.format==="ends_with")return`غلط سٹرنگ: "${a.suffix}" پر ختم ہونا چاہیے`;if(a.format==="includes")return`غلط سٹرنگ: "${a.includes}" شامل ہونا چاہیے`;if(a.format==="regex")return`غلط سٹرنگ: پیٹرن ${a.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[a.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},Q$=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},r={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${a}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${_(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Noto‘g‘ri satr: "${a.prefix}" bilan boshlanishi kerak`;if(a.format==="ends_with")return`Noto‘g‘ri satr: "${a.suffix}" bilan tugashi kerak`;if(a.format==="includes")return`Noto‘g‘ri satr: "${a.includes}" ni o‘z ichiga olishi kerak`;if(a.format==="regex")return`Noto‘g‘ri satr: ${a.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[a.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},e_=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},r={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${a}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${_(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${a.prefix}"`;if(a.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${a.suffix}"`;if(a.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${a.includes}"`;if(a.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${a.pattern}`;return`${n[a.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${g(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},i_=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},r={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${a},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${_(i.values[0])}`;return`无效选项:期望以下之一 ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`无效字符串:必须以 "${a.prefix}" 开头`;if(a.format==="ends_with")return`无效字符串:必须以 "${a.suffix}" 结尾`;if(a.format==="includes")return`无效字符串:必须包含 "${a.includes}"`;if(a.format==="regex")return`无效字符串:必须满足正则表达式 ${a.pattern}`;return`无效${n[a.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},r_=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${a},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${_(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無效的字串:必須以 "${a.prefix}" 開頭`;if(a.format==="ends_with")return`無效的字串:必須以 "${a.suffix}" 結尾`;if(a.format==="includes")return`無效的字串:必須包含 "${a.includes}"`;if(a.format==="regex")return`無效的字串:必須符合格式 ${a.pattern}`;return`無效的 ${n[a.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${g(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},o_=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},r={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=k(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${a}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${_(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${g(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${a}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${a}${i.maximum}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${a}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${a}${i.minimum}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${a.prefix}"`;if(a.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${a.suffix}"`;if(a.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${a.includes}"`;if(a.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${a.pattern}`;return`Aṣìṣe: ${n[a.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${g(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},Bs,oc,sc,ue,cc,Gc=(e,t={})=>(n)=>{let r=ct({...n,processors:t});return N(e,r),mt(r,e),ft(r,e)},Nt=(e,t,n={})=>(r)=>{let{libraryOptions:i,target:a}=r??{},o=ct({...i??{},target:a,io:t,processors:n});return N(e,o),mt(o,e),ft(o,e)},T_,Xc=(e,t,n,r)=>{let i=n;i.type="string";let{minimum:a,maximum:o,format:s,patterns:d,contentEncoding:l}=e._zod.bag;if(typeof a==="number")i.minLength=a;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=T_[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(l)i.contentEncoding=l;if(d&&d.size>0){let c=[...d];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},Yc=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:d,exclusiveMaximum:l,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let f=typeof c==="number"&&c>=(a??Number.NEGATIVE_INFINITY),v=typeof l==="number"&&l<=(o??Number.POSITIVE_INFINITY),p=t.target==="draft-04"||t.target==="openapi-3.0";if(f)if(p)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof a==="number")i.minimum=a;if(v)if(p)i.maximum=l,i.exclusiveMaximum=!0;else i.exclusiveMaximum=l;else if(typeof o==="number")i.maximum=o;if(typeof d==="number")i.multipleOf=d},Vc=(e,t,n,r)=>{n.type="boolean"},Qc=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},qc=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},em=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},tm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},im=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},nm=(e,t,n,r)=>{n.not={}},rm=(e,t,n,r)=>{},am=(e,t,n,r)=>{},om=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},sm=(e,t,n,r)=>{let i=e._zod.def,a=kr(i.entries);if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";n.enum=a},um=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(o));else a.push(o);if(a.length===0);else if(a.length===1){let o=a[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";if(a.every((o)=>typeof o==="boolean"))n.type="boolean";if(a.every((o)=>o===null))n.type="null";n.enum=a}},lm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},dm=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");i.type="string",i.pattern=a.source},cm=(e,t,n,r)=>{let i=n,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:d}=e._zod.bag;if(o!==void 0)a.minLength=o;if(s!==void 0)a.maxLength=s;if(d)if(d.length===1)a.contentMediaType=d[0],Object.assign(i,a);else Object.assign(i,a),i.anyOf=d.map((l)=>({contentMediaType:l}));else Object.assign(i,a)},mm=(e,t,n,r)=>{n.type="boolean"},fm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},pm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},vm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},gm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},hm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},ym=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=N(a.element,t,{...r,path:[...r.path,"items"]})},bm=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object",i.properties={};let o=a.shape;for(let l in o)i.properties[l]=N(o[l],t,{...r,path:[...r.path,"properties",l]});let s=new Set(Object.keys(o)),d=new Set([...s].filter((l)=>{let c=a.shape[l]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(d.size>0)i.required=Array.from(d);if(a.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")i.additionalProperties=!1}else if(a.catchall)i.additionalProperties=N(a.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},ka=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((s,d)=>N(s,t,{...r,path:[...r.path,a?"oneOf":"anyOf",d]}));if(a)n.oneOf=o;else n.anyOf=o},$m=(e,t,n,r)=>{let i=e._zod.def,a=N(i.left,t,{...r,path:[...r.path,"allOf",0]}),o=N(i.right,t,{...r,path:[...r.path,"allOf",1]}),s=(l)=>("allOf"in l)&&Object.keys(l).length===1,d=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=d},_m=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",d=a.items.map((v,p)=>N(v,t,{...r,path:[...r.path,o,p]})),l=a.rest?N(a.rest,t,{...r,path:[...r.path,s,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=d,l)i.items=l}else if(t.target==="openapi-3.0"){if(i.items={anyOf:d},l)i.items.anyOf.push(l);if(i.minItems=d.length,!l)i.maxItems=d.length}else if(i.items=d,l)i.additionalItems=l;let{minimum:c,maximum:f}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof f==="number")i.maxItems=f},km=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object";let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode==="loose"&&s&&s.size>0){let l=N(a.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=l}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=N(a.keyType,t,{...r,path:[...r.path,"propertyNames"]});i.additionalProperties=N(a.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let d=o._zod.values;if(d){let l=[...d].filter((c)=>typeof c==="string"||typeof c==="number");if(l.length>0)i.required=l}},wm=(e,t,n,r)=>{let i=e._zod.def,a=N(i.innerType,t,r),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[a,{type:"null"}]},Sm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Im=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},xm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},zm=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},Um=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?a?i.out:i.in:i.out;N(o,t,r);let s=t.seen.get(e);s.ref=o},Om=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Em=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},wa=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Tm=(e,t,n,r)=>{let i=e._zod.innerType;N(i,t,r);let a=t.seen.get(e);a.ref=i},cr,j_,Nm,Dm,Sa,Ia,xa,za,Ua,Lm=(e,t)=>{Sr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>xr(e,n)},flatten:{value:(n)=>Ir(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Ti,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Ti,2)}},isEmpty:{get(){return e.issues.length===0}}})},P_,re,Mm,Jm,Fm,Km,Wm,Hm,Bm,Gm,Xm,Ym,Vm,Qm,Gs,z,an,ei,A,on,At,$e,ti,sn,un,ln,dn,cn,mn,fn,pn,Oa,vn,gn,hn,yn,bn,$n,_n,ht,ii,Xe,ni,ri,kn,ja,Pa,Na,Aa,Za,Ca,Ra,Sn,La,oi,si,Ma,Ja,Fa,Wa,pt,Ga,Xa,vt,Ya,Va,Qa,Un,qa,to,io,ro,On,so,uo,co,ui,li,mo,fo,vo,go,yo,bo,di,up,lp,cp=(...e)=>Bc({Codec:li,Boolean:ni,String:ei},...e),N_,mr,b,Z_,vp,ko,gp,hp,yp,bp,$p,_p,kp,wp,Sp,Ip,xp,zp,Up,H_,Op,Ep,fr,Ui,Tp,jp,B_,G_,Pp,X_,Np,Dp,Ap,Zp,Cp,wo,Rp,Lp,Mp,Y_,Jp,V_,Fp,Kp,Wp,Q_,q_,ek,Hp,ik,nk,sk,Yp,Be,uk,lk,dk,ck,mk,fk,pk,vk,Vp,hk=30000,yk=5000,qp,$k,kk="tool_executor.",wk="custom_tool.",Sk="hook.",Ik="compaction.compact",xk="checkpoint.create",zk="mistake_limit.decide",Uk="user_instructions.snapshot",pr="ERROR: EMPTY CONTENT",jt,Dk=void 0,Ck,Lk,Le,eu,tu,Fk,Xk,Yk,qk,tw,pw=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
|
|
43
43
|
|
|
44
44
|
Always gather all the necessary context before starting to work on a task. For example, if you are generating a unit test or new code, make sure you understand the requirement, the naming conventions, frameworks and libraries used and aligned in the current codebase, and the environment and commands used to run and test the code etc. Always validate the new unit test at the end including running the code if possible for live feedback.
|
|
45
45
|
Review each question carefully and answer it with detailed, accurate information.
|
|
@@ -100,7 +100,7 @@ IMPORTANT:
|
|
|
100
100
|
- Always includes tool calls in your response until the task is completed. You should only end the task when all the requirements are met by calling the 'submit_and_exit' tool.
|
|
101
101
|
- Response without the submit_and_exit tool call will considered not completed and the task will continue.
|
|
102
102
|
{{CLINE_RULES}}
|
|
103
|
-
{{CLINE_METADATA}}`,gr="# Workspace Configuration",yw=25463,bw=25466,$w=4317,_w="127.0.0.1:4317",kw,ww,Sw,Iw="runtime.team.progress.v1",xw="runtime.team.lifecycle.v1",Li="CLINE_BUILD_ENV",uv="CLINE_DEBUG_HOST",lv="CLINE_DEBUG_PORT_BASE",Zw="CLINE_ENVIRONMENT",Cw="CLINE_ENVIRONMENT_OVERRIDE",hr,Rw="production",Mw="CLINE_RUN_AS_HUB_DAEMON",Jw="sdk.error",qw=128,Me,at,aS,Uo,gv,oS,yv,bv,$v,cS=3600000,mS=240,fS=400,ve,ot,_v,Tn,pS,vS,gS,hS,yS,bS,$S,_S,kS,wS,SS,IS,xS,zS,US,OS,ES,TS,jS,PS,NS,DS,AS,kv,ZS,CS,wv,RS,LS,MS,FS,JS,KS,WS,HS,BS,GS,XS,YS,Sv,Iv,zv,oI,sI,lI,cI;var ci=J(()=>{Ph=Object.defineProperty;ar=new TextEncoder,Rh={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},Lh=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);bs=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];Ei=new Map;u={};Se(u,{xor:()=>Jf,xid:()=>mf,void:()=>Zf,uuidv7:()=>rf,uuidv6:()=>nf,uuidv4:()=>tf,uuid:()=>ef,util:()=>O,url:()=>af,uppercase:()=>Gi,unknown:()=>He,union:()=>In,undefined:()=>Df,ulid:()=>cf,uint64:()=>Pf,uint32:()=>Ef,tuple:()=>Wa,trim:()=>en,treeifyError:()=>Lu,transform:()=>zn,toUpperCase:()=>nn,toLowerCase:()=>tn,toJSONSchema:()=>Tm,templateLiteral:()=>np,symbol:()=>Nf,superRefine:()=>$o,success:()=>qf,stringbool:()=>dp,stringFormat:()=>wf,string:()=>Dt,strictObject:()=>Mf,startsWith:()=>Yi,slugify:()=>rn,size:()=>Xt,setErrorMap:()=>D_,set:()=>Gf,safeParseAsync:()=>Jm,safeParse:()=>Fm,safeEncodeAsync:()=>Ym,safeEncode:()=>Gm,safeDecodeAsync:()=>Vm,safeDecode:()=>Xm,registry:()=>Xr,regexes:()=>Ee,regex:()=>Hi,refine:()=>bo,record:()=>Ha,readonly:()=>fo,property:()=>$a,promise:()=>rp,prettifyError:()=>Fu,preprocess:()=>mp,prefault:()=>ro,positive:()=>ga,pipe:()=>Zi,partialRecord:()=>Wf,parseAsync:()=>Mm,parse:()=>Lm,overwrite:()=>xe,optional:()=>Zt,object:()=>Lf,number:()=>Oa,nullish:()=>Qf,nullable:()=>Ct,null:()=>Na,normalize:()=>qi,nonpositive:()=>ya,nonoptional:()=>ao,nonnegative:()=>ba,never:()=>wn,negative:()=>ha,nativeEnum:()=>Xf,nanoid:()=>uf,nan:()=>ep,multipleOf:()=>dt,minSize:()=>Pe,minLength:()=>We,mime:()=>Qi,meta:()=>up,maxSize:()=>gt,maxLength:()=>Yt,map:()=>Bf,mac:()=>vf,lte:()=>le,lt:()=>Te,lowercase:()=>Bi,looseRecord:()=>Hf,looseObject:()=>Ff,locales:()=>Br,literal:()=>Yf,length:()=>Vt,lazy:()=>go,ksuid:()=>ff,keyof:()=>Rf,jwt:()=>kf,json:()=>cp,iso:()=>wa,ipv6:()=>gf,ipv4:()=>pf,invertCodec:()=>ip,intersection:()=>Ja,int64:()=>jf,int32:()=>Of,int:()=>Ai,instanceof:()=>lp,includes:()=>Xi,httpUrl:()=>of,hostname:()=>Sf,hex:()=>If,hash:()=>xf,guid:()=>qm,gte:()=>V,gt:()=>je,globalRegistry:()=>ue,getErrorMap:()=>A_,function:()=>Ci,fromJSONSchema:()=>L_,formatError:()=>Ir,float64:()=>Uf,float32:()=>zf,flattenError:()=>Sr,file:()=>Vf,exactOptional:()=>qa,enum:()=>xn,endsWith:()=>Vi,encodeAsync:()=>Hm,encode:()=>Km,emoji:()=>sf,email:()=>Qm,e164:()=>_f,discriminatedUnion:()=>Kf,describe:()=>sp,decodeAsync:()=>Bm,decode:()=>Wm,date:()=>Cf,custom:()=>op,cuid2:()=>df,cuid:()=>lf,core:()=>Su,config:()=>W,coerce:()=>pp,codec:()=>tp,clone:()=>de,cidrv6:()=>yf,cidrv4:()=>hf,check:()=>ap,catch:()=>uo,boolean:()=>Ea,bigint:()=>Tf,base64url:()=>$f,base64:()=>bf,array:()=>ai,any:()=>Af,_function:()=>Ci,_default:()=>io,_ZodString:()=>an,ZodXor:()=>La,ZodXID:()=>mn,ZodVoid:()=>Ca,ZodUnknown:()=>Aa,ZodUnion:()=>si,ZodUndefined:()=>ja,ZodUUID:()=>$e,ZodURL:()=>ti,ZodULID:()=>cn,ZodType:()=>z,ZodTuple:()=>Ka,ZodTransform:()=>Va,ZodTemplateLiteral:()=>po,ZodSymbol:()=>Ta,ZodSuccess:()=>oo,ZodStringFormat:()=>A,ZodString:()=>ei,ZodSet:()=>Ga,ZodRecord:()=>pt,ZodRealError:()=>re,ZodReadonly:()=>mo,ZodPromise:()=>ho,ZodPreprocess:()=>co,ZodPrefault:()=>no,ZodPipe:()=>ui,ZodOptional:()=>Un,ZodObject:()=>oi,ZodNumberFormat:()=>Xe,ZodNumber:()=>ii,ZodNullable:()=>eo,ZodNull:()=>Pa,ZodNonOptional:()=>On,ZodNever:()=>Za,ZodNanoID:()=>un,ZodNaN:()=>lo,ZodMap:()=>Ba,ZodMAC:()=>Ua,ZodLiteral:()=>Xa,ZodLazy:()=>vo,ZodKSUID:()=>fn,ZodJWT:()=>_n,ZodIssueCode:()=>N_,ZodIntersection:()=>Fa,ZodISOTime:()=>xa,ZodISODuration:()=>za,ZodISODateTime:()=>Sa,ZodISODate:()=>Ia,ZodIPv6:()=>vn,ZodIPv4:()=>pn,ZodGUID:()=>At,ZodFunction:()=>yo,ZodFirstPartyTypeKind:()=>cr,ZodFile:()=>Ya,ZodExactOptional:()=>Qa,ZodError:()=>P_,ZodEnum:()=>vt,ZodEmoji:()=>sn,ZodEmail:()=>on,ZodE164:()=>$n,ZodDiscriminatedUnion:()=>Ma,ZodDefault:()=>to,ZodDate:()=>Sn,ZodCustomStringFormat:()=>ht,ZodCustom:()=>di,ZodCodec:()=>li,ZodCatch:()=>so,ZodCUID2:()=>dn,ZodCUID:()=>ln,ZodCIDRv6:()=>hn,ZodCIDRv4:()=>gn,ZodBoolean:()=>ni,ZodBigIntFormat:()=>kn,ZodBigInt:()=>ri,ZodBase64URL:()=>bn,ZodBase64:()=>yn,ZodArray:()=>Ra,ZodAny:()=>Da,TimePrecision:()=>dc,NEVER:()=>Iu,$output:()=>ac,$input:()=>oc,$brand:()=>xu});Su={};Se(Su,{version:()=>Fl,util:()=>O,treeifyError:()=>Lu,toJSONSchema:()=>Tm,toDotPath:()=>Mu,safeParseAsync:()=>Ku,safeParse:()=>Ju,safeEncodeAsync:()=>Fy,safeEncode:()=>Ly,safeDecodeAsync:()=>Jy,safeDecode:()=>My,registry:()=>Xr,regexes:()=>Ee,process:()=>N,prettifyError:()=>Fu,parseAsync:()=>ur,parse:()=>sr,meta:()=>Wc,locales:()=>Br,isValidJWT:()=>fd,isValidBase64URL:()=>dd,isValidBase64:()=>Rr,initializeContext:()=>ct,globalRegistry:()=>ue,globalConfig:()=>Pt,formatError:()=>Ir,flattenError:()=>Sr,finalize:()=>ft,extractDefs:()=>mt,encodeAsync:()=>Cy,encode:()=>Ay,describe:()=>Kc,decodeAsync:()=>Ry,decode:()=>Zy,createToJSONSchemaMethod:()=>Bc,createStandardJSONSchemaMethod:()=>Nt,config:()=>W,clone:()=>de,_xor:()=>l_,_xid:()=>oa,_void:()=>Nc,_uuidv7:()=>ea,_uuidv6:()=>qr,_uuidv4:()=>Qr,_uuid:()=>Vr,_url:()=>Wi,_uppercase:()=>Gi,_unknown:()=>jc,_union:()=>u_,_undefined:()=>Oc,_ulid:()=>aa,_uint64:()=>zc,_uint32:()=>_c,_tuple:()=>m_,_trim:()=>en,_transform:()=>b_,_toUpperCase:()=>nn,_toLowerCase:()=>tn,_templateLiteral:()=>U_,_symbol:()=>Uc,_superRefine:()=>Fc,_success:()=>S_,_stringbool:()=>Hc,_stringFormat:()=>Qt,_string:()=>sc,_startsWith:()=>Yi,_slugify:()=>rn,_size:()=>Xt,_set:()=>v_,_safeParseAsync:()=>Kt,_safeParse:()=>Jt,_safeEncodeAsync:()=>jr,_safeEncode:()=>Er,_safeDecodeAsync:()=>Pr,_safeDecode:()=>Tr,_regex:()=>Hi,_refine:()=>Mc,_record:()=>f_,_readonly:()=>z_,_property:()=>$a,_promise:()=>E_,_positive:()=>ga,_pipe:()=>x_,_parseAsync:()=>Ft,_parse:()=>Mt,_overwrite:()=>xe,_optional:()=>$_,_number:()=>vc,_nullable:()=>__,_null:()=>Ec,_normalize:()=>qi,_nonpositive:()=>ya,_nonoptional:()=>w_,_nonnegative:()=>ba,_never:()=>Pc,_negative:()=>ha,_nativeEnum:()=>h_,_nanoid:()=>ia,_nan:()=>Zc,_multipleOf:()=>dt,_minSize:()=>Pe,_minLength:()=>We,_min:()=>V,_mime:()=>Qi,_maxSize:()=>gt,_maxLength:()=>Yt,_max:()=>le,_map:()=>p_,_mac:()=>lc,_lte:()=>le,_lt:()=>Te,_lowercase:()=>Bi,_literal:()=>y_,_length:()=>Vt,_lazy:()=>O_,_ksuid:()=>sa,_jwt:()=>va,_isoTime:()=>fc,_isoDuration:()=>pc,_isoDateTime:()=>cc,_isoDate:()=>mc,_ipv6:()=>la,_ipv4:()=>ua,_intersection:()=>c_,_int64:()=>xc,_int32:()=>$c,_int:()=>hc,_includes:()=>Xi,_guid:()=>Di,_gte:()=>V,_gt:()=>je,_float64:()=>bc,_float32:()=>yc,_file:()=>Rc,_enum:()=>g_,_endsWith:()=>Vi,_encodeAsync:()=>Ur,_encode:()=>xr,_emoji:()=>ta,_email:()=>Yr,_e164:()=>pa,_discriminatedUnion:()=>d_,_default:()=>k_,_decodeAsync:()=>Or,_decode:()=>zr,_date:()=>Dc,_custom:()=>Lc,_cuid2:()=>ra,_cuid:()=>na,_coercedString:()=>uc,_coercedNumber:()=>gc,_coercedDate:()=>Ac,_coercedBoolean:()=>wc,_coercedBigint:()=>Ic,_cidrv6:()=>ca,_cidrv4:()=>da,_check:()=>Jc,_catch:()=>I_,_boolean:()=>kc,_bigint:()=>Sc,_base64url:()=>fa,_base64:()=>ma,_array:()=>Cc,_any:()=>Tc,TimePrecision:()=>dc,NEVER:()=>Iu,JSONSchemaGenerator:()=>jm,JSONSchema:()=>j_,Doc:()=>Cr,$output:()=>ac,$input:()=>oc,$constructor:()=>m,$brand:()=>xu,$ZodXor:()=>Td,$ZodXID:()=>Ql,$ZodVoid:()=>Sd,$ZodUnknown:()=>kd,$ZodUnion:()=>Ki,$ZodUndefined:()=>bd,$ZodUUID:()=>Kl,$ZodURL:()=>Hl,$ZodULID:()=>Vl,$ZodType:()=>x,$ZodTuple:()=>Jr,$ZodTransform:()=>Ld,$ZodTemplateLiteral:()=>Vd,$ZodSymbol:()=>yd,$ZodSuccess:()=>Hd,$ZodStringFormat:()=>D,$ZodString:()=>Gt,$ZodSet:()=>Ad,$ZodRegistry:()=>Gr,$ZodRecord:()=>Nd,$ZodRealError:()=>ne,$ZodReadonly:()=>Yd,$ZodPromise:()=>qd,$ZodPreprocess:()=>Xd,$ZodPrefault:()=>Kd,$ZodPipe:()=>Wr,$ZodOptional:()=>Kr,$ZodObjectJIT:()=>Ed,$ZodObject:()=>Od,$ZodNumberFormat:()=>gd,$ZodNumber:()=>Lr,$ZodNullable:()=>Fd,$ZodNull:()=>$d,$ZodNonOptional:()=>Wd,$ZodNever:()=>wd,$ZodNanoID:()=>Gl,$ZodNaN:()=>Gd,$ZodMap:()=>Dd,$ZodMAC:()=>od,$ZodLiteral:()=>Cd,$ZodLazy:()=>ec,$ZodKSUID:()=>ql,$ZodJWT:()=>pd,$ZodIntersection:()=>Pd,$ZodISOTime:()=>id,$ZodISODuration:()=>nd,$ZodISODateTime:()=>ed,$ZodISODate:()=>td,$ZodIPv6:()=>ad,$ZodIPv4:()=>rd,$ZodGUID:()=>Jl,$ZodFunction:()=>Qd,$ZodFile:()=>Rd,$ZodExactOptional:()=>Md,$ZodError:()=>wr,$ZodEnum:()=>Zd,$ZodEncodeError:()=>Rt,$ZodEmoji:()=>Bl,$ZodEmail:()=>Wl,$ZodE164:()=>md,$ZodDiscriminatedUnion:()=>jd,$ZodDefault:()=>Jd,$ZodDate:()=>Id,$ZodCustomStringFormat:()=>vd,$ZodCustom:()=>tc,$ZodCodec:()=>Hr,$ZodCheckUpperCase:()=>Dl,$ZodCheckStringFormat:()=>Bt,$ZodCheckStartsWith:()=>Zl,$ZodCheckSizeEquals:()=>Ol,$ZodCheckRegex:()=>Pl,$ZodCheckProperty:()=>Rl,$ZodCheckOverwrite:()=>Ml,$ZodCheckNumberFormat:()=>Il,$ZodCheckMultipleOf:()=>Sl,$ZodCheckMinSize:()=>Ul,$ZodCheckMinLength:()=>Tl,$ZodCheckMimeType:()=>Ll,$ZodCheckMaxSize:()=>zl,$ZodCheckMaxLength:()=>El,$ZodCheckLowerCase:()=>Nl,$ZodCheckLessThan:()=>Ar,$ZodCheckLengthEquals:()=>jl,$ZodCheckIncludes:()=>Al,$ZodCheckGreaterThan:()=>Zr,$ZodCheckEndsWith:()=>Cl,$ZodCheckBigIntFormat:()=>xl,$ZodCheck:()=>L,$ZodCatch:()=>Bd,$ZodCUID2:()=>Yl,$ZodCUID:()=>Xl,$ZodCIDRv6:()=>ud,$ZodCIDRv4:()=>sd,$ZodBoolean:()=>Mr,$ZodBigIntFormat:()=>hd,$ZodBigInt:()=>Fr,$ZodBase64URL:()=>cd,$ZodBase64:()=>ld,$ZodAsyncError:()=>Oe,$ZodArray:()=>xd,$ZodAny:()=>_d});Iu=Object.freeze({status:"aborted"});xu=Symbol("zod_brand");Oe=class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};Rt=class Rt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(Is=globalThis).__zod_globalConfig??(Is.__zod_globalConfig={});Pt=globalThis.__zod_globalConfig;O={};Se(O,{unwrapMessage:()=>Tt,uint8ArrayToHex:()=>Dy,uint8ArrayToBase64url:()=>Py,uint8ArrayToBase64:()=>Zu,stringifyPrimitive:()=>_,slugify:()=>Uu,shallowClone:()=>Eu,safeExtend:()=>zy,required:()=>Ey,randomString:()=>$y,propertyKeyTypes:()=>ji,promiseAllObject:()=>by,primitiveTypes:()=>Tu,prefixIssues:()=>se,pick:()=>Sy,partial:()=>Oy,parsedType:()=>k,optionalKeys:()=>ju,omit:()=>Iy,objectClone:()=>gy,numKeys:()=>_y,nullish:()=>Ge,normalizeParams:()=>h,mergeDefs:()=>Ie,merge:()=>Uy,jsonStringifyReplacer:()=>Ti,joinValues:()=>g,issue:()=>Pi,isPlainObject:()=>Ke,isObject:()=>ut,hexToUint8Array:()=>Ny,getSizableOrigin:()=>Fi,getParsedType:()=>ky,getLengthableOrigin:()=>Ji,getEnumValues:()=>_r,getElementAtPath:()=>yy,floatSafeRemainder:()=>zu,finalizeIssue:()=>ie,extend:()=>xy,explicitlyAborted:()=>Du,escapeRegex:()=>we,esc:()=>or,defineLazy:()=>E,createTransparentProxy:()=>wy,cloneDef:()=>hy,clone:()=>de,cleanRegex:()=>Mi,cleanEnum:()=>Ty,captureStackTrace:()=>kr,cached:()=>Lt,base64urlToUint8Array:()=>jy,base64ToUint8Array:()=>Au,assignProp:()=>Ne,assertNotEqual:()=>my,assertNever:()=>py,assertIs:()=>fy,assertEqual:()=>cy,assert:()=>vy,allowsEval:()=>Ou,aborted:()=>Je,NUMBER_FORMAT_RANGES:()=>Pu,Class:()=>Cu,BIGINT_FORMAT_RANGES:()=>Nu});xs=Symbol("evaluating");kr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};Ou=Lt(()=>{if(Pt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});ji=new Set(["string","number","symbol"]),Tu=new Set(["string","number","bigint","boolean","symbol","undefined"]);Pu={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]},Nu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};wr=m("$ZodError",Ru),ne=m("$ZodError",Ru,{Parent:Error});sr=Mt(ne),ur=Ft(ne),Ju=Jt(ne),Ku=Kt(ne),Ay=xr(ne),Zy=zr(ne),Cy=Ur(ne),Ry=Or(ne),Ly=Er(ne),My=Tr(ne),Fy=jr(ne),Jy=Pr(ne),Ee={};Se(Ee,{xid:()=>Gu,uuid7:()=>By,uuid6:()=>Hy,uuid4:()=>Wy,uuid:()=>lt,uppercase:()=>kl,unicodeEmail:()=>el,undefined:()=>$l,ulid:()=>Bu,time:()=>fl,string:()=>vl,sha512_hex:()=>pb,sha512_base64url:()=>gb,sha512_base64:()=>vb,sha384_hex:()=>cb,sha384_base64url:()=>fb,sha384_base64:()=>mb,sha256_hex:()=>ub,sha256_base64url:()=>db,sha256_base64:()=>lb,sha1_hex:()=>ab,sha1_base64url:()=>sb,sha1_base64:()=>ob,rfc5322Email:()=>Xy,number:()=>Dr,null:()=>bl,nanoid:()=>Yu,md5_hex:()=>ib,md5_base64url:()=>rb,md5_base64:()=>nb,mac:()=>rl,lowercase:()=>_l,ksuid:()=>Xu,ipv6:()=>nl,ipv4:()=>il,integer:()=>hl,idnEmail:()=>Yy,httpProtocol:()=>ul,html5Email:()=>Gy,hostname:()=>qy,hex:()=>tb,guid:()=>Qu,extendedDuration:()=>Ky,emoji:()=>tl,email:()=>qu,e164:()=>ll,duration:()=>Vu,domain:()=>eb,datetime:()=>pl,date:()=>cl,cuid2:()=>Hu,cuid:()=>Wu,cidrv6:()=>ol,cidrv4:()=>al,browserEmail:()=>Vy,boolean:()=>yl,bigint:()=>gl,base64url:()=>Nr,base64:()=>sl});Wu=/^[cC][0-9a-z]{6,}$/,Hu=/^[0-9a-z]+$/,Bu=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gu=/^[0-9a-vA-V]{20}$/,Xu=/^[A-Za-z0-9]{27}$/,Yu=/^[a-zA-Z0-9_-]{21}$/,Vu=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ky=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Qu=/^([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})$/,Wy=lt(4),Hy=lt(6),By=lt(7),qu=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Gy=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Xy=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,el=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Yy=el,Vy=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;il=/^(?:(?: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])$/,nl=/^(([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}|:))$/,al=/^((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])$/,ol=/^(([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}=))?$/,Nr=/^[A-Za-z0-9_-]*$/,qy=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,eb=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,ul=/^https?$/,ll=/^\+[1-9]\d{6,14}$/,cl=new RegExp(`^${dl}$`);gl=/^-?\d+n?$/,hl=/^-?\d+$/,Dr=/^-?\d+(?:\.\d+)?$/,yl=/^(?:true|false)$/i,bl=/^null$/i,$l=/^undefined$/i,_l=/^[^A-Z]*$/,kl=/^[^a-z]*$/,tb=/^[0-9a-fA-F]*$/;ib=/^[0-9a-fA-F]{32}$/,nb=Wt(22,"=="),rb=Ht(22),ab=/^[0-9a-fA-F]{40}$/,ob=Wt(27,"="),sb=Ht(27),ub=/^[0-9a-fA-F]{64}$/,lb=Wt(43,"="),db=Ht(43),cb=/^[0-9a-fA-F]{96}$/,mb=Wt(64,""),fb=Ht(64),pb=/^[0-9a-fA-F]{128}$/,vb=Wt(86,"=="),gb=Ht(86),L=m("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),wl={number:"number",bigint:"bigint",object:"date"},Ar=m("$ZodCheckLessThan",(e,t)=>{L.init(e,t);let n=wl[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Zr=m("$ZodCheckGreaterThan",(e,t)=>{L.init(e,t);let n=wl[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Sl=m("$ZodCheckMultipleOf",(e,t)=>{L.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):zu(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Il=m("$ZodCheckNumberFormat",(e,t)=>{L.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,a]=Pu[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=a,n)s.pattern=hl}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>a)o.issues.push({origin:"number",input:s,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),xl=m("$ZodCheckBigIntFormat",(e,t)=>{L.init(e,t);let[n,r]=Nu[t.format];e._zod.onattach.push((i)=>{let a=i._zod.bag;a.format=t.format,a.minimum=n,a.maximum=r}),e._zod.check=(i)=>{let a=i.value;if(a<n)i.issues.push({origin:"bigint",input:a,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(a>r)i.issues.push({origin:"bigint",input:a,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),zl=m("$ZodCheckMaxSize",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.size<=t.maximum)return;r.issues.push({origin:Fi(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Ul=m("$ZodCheckMinSize",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.size>=t.minimum)return;r.issues.push({origin:Fi(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Ol=m("$ZodCheckSizeEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(r)=>{let i=r.value,a=i.size;if(a===t.size)return;let o=a>t.size;r.issues.push({origin:Fi(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),El=m("$ZodCheckMaxLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.length<=t.maximum)return;let a=Ji(i);r.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Tl=m("$ZodCheckMinLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.length>=t.minimum)return;let a=Ji(i);r.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),jl=m("$ZodCheckLengthEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(r)=>{let i=r.value,a=i.length;if(a===t.length)return;let o=Ji(i),s=a>t.length;r.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),Bt=m("$ZodCheckStringFormat",(e,t)=>{var n,r;if(L.init(e,t),e._zod.onattach.push((i)=>{let a=i._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),Pl=m("$ZodCheckRegex",(e,t)=>{Bt.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Nl=m("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=_l),Bt.init(e,t)}),Dl=m("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=kl),Bt.init(e,t)}),Al=m("$ZodCheckIncludes",(e,t)=>{L.init(e,t);let n=we(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((i)=>{let a=i._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Zl=m("$ZodCheckStartsWith",(e,t)=>{L.init(e,t);let n=new RegExp(`^${we(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Cl=m("$ZodCheckEndsWith",(e,t)=>{L.init(e,t);let n=new RegExp(`.*${we(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});Rl=m("$ZodCheckProperty",(e,t)=>{L.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((i)=>zs(i,n,t.property));zs(r,n,t.property);return}}),Ll=m("$ZodCheckMimeType",(e,t)=>{L.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Ml=m("$ZodCheckOverwrite",(e,t)=>{L.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});Fl={major:4,minor:4,patch:3},x=m("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Fl;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let i of r)for(let a of i._zod.onattach)a(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,d)=>{let l=Je(o),c;for(let f of s){if(f._zod.def.when){if(Du(o))continue;if(!f._zod.def.when(o))continue}else if(l)continue;let v=o.issues.length,p=f._zod.check(o);if(p instanceof Promise&&d?.async===!1)throw new Oe;if(c||p instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await p,o.issues.length===v)return;if(!l)l=Je(o,v)});else{if(o.issues.length===v)continue;if(!l)l=Je(o,v)}}if(c)return c.then(()=>{return o});return o},a=(o,s,d)=>{if(Je(o))return o.aborted=!0,o;let l=i(s,r,d);if(l instanceof Promise){if(d.async===!1)throw new Oe;return l.then((c)=>e._zod.parse(c,d))}return e._zod.parse(l,d)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let l=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(l instanceof Promise)return l.then((c)=>{return a(c,o,s)});return a(l,o,s)}let d=e._zod.parse(o,s);if(d instanceof Promise){if(s.async===!1)throw new Oe;return d.then((l)=>i(l,r,s))}return i(d,r,s)}}E(e,"~standard",()=>({validate:(i)=>{try{let a=Ju(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Ku(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Gt=m("$ZodString",(e,t)=>{x.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??vl(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),D=m("$ZodStringFormat",(e,t)=>{Bt.init(e,t),Gt.init(e,t)}),Jl=m("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Qu),D.init(e,t)}),Kl=m("$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=lt(n))}else t.pattern??(t.pattern=lt());D.init(e,t)}),Wl=m("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=qu),D.init(e,t)}),Hl=m("$ZodURL",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===ul.source){if(!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Bl=m("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=tl()),D.init(e,t)}),Gl=m("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Yu),D.init(e,t)}),Xl=m("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Wu),D.init(e,t)}),Yl=m("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Hu),D.init(e,t)}),Vl=m("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Bu),D.init(e,t)}),Ql=m("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Gu),D.init(e,t)}),ql=m("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Xu),D.init(e,t)}),ed=m("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=pl(t)),D.init(e,t)}),td=m("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=cl),D.init(e,t)}),id=m("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=fl(t)),D.init(e,t)}),nd=m("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Vu),D.init(e,t)}),rd=m("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=il),D.init(e,t),e._zod.bag.format="ipv4"}),ad=m("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=nl),D.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),od=m("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=rl(t.delimiter)),D.init(e,t),e._zod.bag.format="mac"}),sd=m("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=al),D.init(e,t)}),ud=m("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=ol),D.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[i,a]=r;if(!a)throw Error();let o=Number(a);if(`${o}`!==a)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});ld=m("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=sl),D.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(Rr(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});cd=m("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Nr),D.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(dd(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),md=m("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ll),D.init(e,t)});pd=m("$ZodJWT",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{if(fd(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),vd=m("$ZodCustomStringFormat",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Lr=m("$ZodNumber",(e,t)=>{x.init(e,t),e._zod.pattern=e._zod.bag.pattern??Dr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...a?{received:a}:{}}),n}}),gd=m("$ZodNumberFormat",(e,t)=>{Il.init(e,t),Lr.init(e,t)}),Mr=m("$ZodBoolean",(e,t)=>{x.init(e,t),e._zod.pattern=yl,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(a){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),Fr=m("$ZodBigInt",(e,t)=>{x.init(e,t),e._zod.pattern=gl,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),hd=m("$ZodBigIntFormat",(e,t)=>{xl.init(e,t),Fr.init(e,t)}),yd=m("$ZodSymbol",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),bd=m("$ZodUndefined",(e,t)=>{x.init(e,t),e._zod.pattern=$l,e._zod.values=new Set([void 0]),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),$d=m("$ZodNull",(e,t)=>{x.init(e,t),e._zod.pattern=bl,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),_d=m("$ZodAny",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),kd=m("$ZodUnknown",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),wd=m("$ZodNever",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),Sd=m("$ZodVoid",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),Id=m("$ZodDate",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,a=i instanceof Date;if(a&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...a?{received:"Invalid Date"}:{},inst:e}),n}});xd=m("$ZodArray",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let o=0;o<i.length;o++){let s=i[o],d=t.element._zod.run({value:s,issues:[]},r);if(d instanceof Promise)a.push(d.then((l)=>Us(l,n,o)));else Us(d,n,o)}if(a.length)return Promise.all(a).then(()=>n);return n}});Od=m("$ZodObject",(e,t)=>{if(x.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=Lt(()=>zd(t));E(e._zod,"propValues",()=>{let o=t.shape,s={};for(let d in o){let l=o[d]._zod;if(l.values){s[d]??(s[d]=new Set);for(let c of l.values)s[d].add(c)}}return s});let r=ut,i=t.catchall,a;e._zod.parse=(o,s)=>{a??(a=n.value);let d=o.value;if(!r(d))return o.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),o;o.value={};let l=[],c=a.shape;for(let f of a.keys){let v=c[f],p=v._zod.optin==="optional",y=v._zod.optout==="optional",I=v._zod.run({value:d[f],issues:[]},s);if(I instanceof Promise)l.push(I.then((j)=>Ni(j,o,f,d,p,y)));else Ni(I,o,f,d,p,y)}if(!i)return l.length?Promise.all(l).then(()=>o):o;return Ud(l,d,o,s,n.value,e)}}),Ed=m("$ZodObjectJIT",(e,t)=>{Od.init(e,t);let n=e._zod.parse,r=Lt(()=>zd(t)),i=(f)=>{let v=new Cr(["shape","payload","ctx"]),p=r.value,y=(C)=>{let w=or(C);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};v.write("const input = payload.value;");let I=Object.create(null),j=0;for(let C of p.keys)I[C]=`key_${j++}`;v.write("const newResult = {};");for(let C of p.keys){let w=I[C],Z=or(C),Y=f[C],ye=Y?._zod?.optin==="optional",tt=Y?._zod?.optout==="optional";if(v.write(`const ${w} = ${y(C)};`),ye&&tt)v.write(`
|
|
103
|
+
{{CLINE_METADATA}}`,hr="# Workspace Configuration",yw=25463,bw=25466,$w=4317,_w="127.0.0.1:4317",kw,ww,Sw,Iw="runtime.team.progress.v1",xw="runtime.team.lifecycle.v1",Li="CLINE_BUILD_ENV",lv="CLINE_DEBUG_HOST",dv="CLINE_DEBUG_PORT_BASE",Zw="CLINE_ENVIRONMENT",Cw="CLINE_ENVIRONMENT_OVERRIDE",yr,Rw="production",Mw="CLINE_RUN_AS_HUB_DAEMON",Fw="sdk.error",qw=128,Me,at,aS,Oo,hv,oS,bv,$v,_v,cS=3600000,mS=240,fS=400,ve,ot,kv,Tn,pS,vS,gS,hS,yS,bS,$S,_S,kS,wS,SS,IS,xS,zS,US,OS,ES,TS,jS,PS,NS,DS,AS,wv,ZS,CS,Sv,RS,LS,MS,JS,FS,KS,WS,HS,BS,GS,XS,YS,Iv,xv,oI,sI,lI,cI;var ci=F(()=>{Ph=Object.defineProperty;or=new TextEncoder,Rh={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},Lh=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);$s=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];Ei=new Map;u={};Se(u,{xor:()=>Kf,xid:()=>ff,void:()=>Cf,uuidv7:()=>af,uuidv6:()=>rf,uuidv4:()=>nf,uuid:()=>tf,util:()=>O,url:()=>of,uppercase:()=>Gi,unknown:()=>He,union:()=>In,undefined:()=>Af,ulid:()=>mf,uint64:()=>Nf,uint32:()=>Tf,tuple:()=>Ha,trim:()=>en,treeifyError:()=>Mu,transform:()=>zn,toUpperCase:()=>nn,toLowerCase:()=>tn,toJSONSchema:()=>jm,templateLiteral:()=>rp,symbol:()=>Df,superRefine:()=>_o,success:()=>ep,stringbool:()=>cp,stringFormat:()=>Sf,string:()=>Dt,strictObject:()=>Jf,startsWith:()=>Yi,slugify:()=>rn,size:()=>Xt,setErrorMap:()=>D_,set:()=>Xf,safeParseAsync:()=>Km,safeParse:()=>Fm,safeEncodeAsync:()=>Vm,safeEncode:()=>Xm,safeDecodeAsync:()=>Qm,safeDecode:()=>Ym,registry:()=>Yr,regexes:()=>Ee,regex:()=>Hi,refine:()=>$o,record:()=>Ba,readonly:()=>po,property:()=>_a,promise:()=>ap,prettifyError:()=>Fu,preprocess:()=>fp,prefault:()=>ao,positive:()=>ha,pipe:()=>Zi,partialRecord:()=>Hf,parseAsync:()=>Jm,parse:()=>Mm,overwrite:()=>xe,optional:()=>Zt,object:()=>Mf,number:()=>Ea,nullish:()=>qf,nullable:()=>Ct,null:()=>Da,normalize:()=>qi,nonpositive:()=>ba,nonoptional:()=>oo,nonnegative:()=>$a,never:()=>wn,negative:()=>ya,nativeEnum:()=>Yf,nanoid:()=>lf,nan:()=>tp,multipleOf:()=>dt,minSize:()=>Pe,minLength:()=>We,mime:()=>Qi,meta:()=>lp,maxSize:()=>gt,maxLength:()=>Yt,map:()=>Gf,mac:()=>gf,lte:()=>le,lt:()=>Te,lowercase:()=>Bi,looseRecord:()=>Bf,looseObject:()=>Ff,locales:()=>Gr,literal:()=>Vf,length:()=>Vt,lazy:()=>ho,ksuid:()=>pf,keyof:()=>Lf,jwt:()=>wf,json:()=>mp,iso:()=>Sa,ipv6:()=>hf,ipv4:()=>vf,invertCodec:()=>np,intersection:()=>Ka,int64:()=>Pf,int32:()=>Ef,int:()=>Ai,instanceof:()=>dp,includes:()=>Xi,httpUrl:()=>sf,hostname:()=>If,hex:()=>xf,hash:()=>zf,guid:()=>ef,gte:()=>V,gt:()=>je,globalRegistry:()=>ue,getErrorMap:()=>A_,function:()=>Ci,fromJSONSchema:()=>L_,formatError:()=>xr,float64:()=>Of,float32:()=>Uf,flattenError:()=>Ir,file:()=>Qf,exactOptional:()=>eo,enum:()=>xn,endsWith:()=>Vi,encodeAsync:()=>Bm,encode:()=>Wm,emoji:()=>uf,email:()=>qm,e164:()=>kf,discriminatedUnion:()=>Wf,describe:()=>up,decodeAsync:()=>Gm,decode:()=>Hm,date:()=>Rf,custom:()=>sp,cuid2:()=>cf,cuid:()=>df,core:()=>Iu,config:()=>W,coerce:()=>vp,codec:()=>ip,clone:()=>de,cidrv6:()=>bf,cidrv4:()=>yf,check:()=>op,catch:()=>lo,boolean:()=>Ta,bigint:()=>jf,base64url:()=>_f,base64:()=>$f,array:()=>ai,any:()=>Zf,_function:()=>Ci,_default:()=>no,_ZodString:()=>an,ZodXor:()=>Ma,ZodXID:()=>mn,ZodVoid:()=>Ra,ZodUnknown:()=>Za,ZodUnion:()=>si,ZodUndefined:()=>Pa,ZodUUID:()=>$e,ZodURL:()=>ti,ZodULID:()=>cn,ZodType:()=>z,ZodTuple:()=>Wa,ZodTransform:()=>Qa,ZodTemplateLiteral:()=>vo,ZodSymbol:()=>ja,ZodSuccess:()=>so,ZodStringFormat:()=>A,ZodString:()=>ei,ZodSet:()=>Xa,ZodRecord:()=>pt,ZodRealError:()=>re,ZodReadonly:()=>fo,ZodPromise:()=>yo,ZodPreprocess:()=>mo,ZodPrefault:()=>ro,ZodPipe:()=>ui,ZodOptional:()=>Un,ZodObject:()=>oi,ZodNumberFormat:()=>Xe,ZodNumber:()=>ii,ZodNullable:()=>to,ZodNull:()=>Na,ZodNonOptional:()=>On,ZodNever:()=>Ca,ZodNanoID:()=>un,ZodNaN:()=>co,ZodMap:()=>Ga,ZodMAC:()=>Oa,ZodLiteral:()=>Ya,ZodLazy:()=>go,ZodKSUID:()=>fn,ZodJWT:()=>_n,ZodIssueCode:()=>N_,ZodIntersection:()=>Fa,ZodISOTime:()=>za,ZodISODuration:()=>Ua,ZodISODateTime:()=>Ia,ZodISODate:()=>xa,ZodIPv6:()=>vn,ZodIPv4:()=>pn,ZodGUID:()=>At,ZodFunction:()=>bo,ZodFirstPartyTypeKind:()=>mr,ZodFile:()=>Va,ZodExactOptional:()=>qa,ZodError:()=>P_,ZodEnum:()=>vt,ZodEmoji:()=>sn,ZodEmail:()=>on,ZodE164:()=>$n,ZodDiscriminatedUnion:()=>Ja,ZodDefault:()=>io,ZodDate:()=>Sn,ZodCustomStringFormat:()=>ht,ZodCustom:()=>di,ZodCodec:()=>li,ZodCatch:()=>uo,ZodCUID2:()=>dn,ZodCUID:()=>ln,ZodCIDRv6:()=>hn,ZodCIDRv4:()=>gn,ZodBoolean:()=>ni,ZodBigIntFormat:()=>kn,ZodBigInt:()=>ri,ZodBase64URL:()=>bn,ZodBase64:()=>yn,ZodArray:()=>La,ZodAny:()=>Aa,TimePrecision:()=>cc,NEVER:()=>xu,$output:()=>oc,$input:()=>sc,$brand:()=>zu});Iu={};Se(Iu,{version:()=>Fl,util:()=>O,treeifyError:()=>Mu,toJSONSchema:()=>jm,toDotPath:()=>Ju,safeParseAsync:()=>Wu,safeParse:()=>Ku,safeEncodeAsync:()=>Jy,safeEncode:()=>Ly,safeDecodeAsync:()=>Fy,safeDecode:()=>My,registry:()=>Yr,regexes:()=>Ee,process:()=>N,prettifyError:()=>Fu,parseAsync:()=>lr,parse:()=>ur,meta:()=>Hc,locales:()=>Gr,isValidJWT:()=>pd,isValidBase64URL:()=>cd,isValidBase64:()=>Lr,initializeContext:()=>ct,globalRegistry:()=>ue,globalConfig:()=>Pt,formatError:()=>xr,flattenError:()=>Ir,finalize:()=>ft,extractDefs:()=>mt,encodeAsync:()=>Cy,encode:()=>Ay,describe:()=>Wc,decodeAsync:()=>Ry,decode:()=>Zy,createToJSONSchemaMethod:()=>Gc,createStandardJSONSchemaMethod:()=>Nt,config:()=>W,clone:()=>de,_xor:()=>l_,_xid:()=>sa,_void:()=>Dc,_uuidv7:()=>ta,_uuidv6:()=>ea,_uuidv4:()=>qr,_uuid:()=>Qr,_url:()=>Wi,_uppercase:()=>Gi,_unknown:()=>Pc,_union:()=>u_,_undefined:()=>Ec,_ulid:()=>oa,_uint64:()=>Uc,_uint32:()=>kc,_tuple:()=>m_,_trim:()=>en,_transform:()=>b_,_toUpperCase:()=>nn,_toLowerCase:()=>tn,_templateLiteral:()=>U_,_symbol:()=>Oc,_superRefine:()=>Fc,_success:()=>S_,_stringbool:()=>Bc,_stringFormat:()=>Qt,_string:()=>uc,_startsWith:()=>Yi,_slugify:()=>rn,_size:()=>Xt,_set:()=>v_,_safeParseAsync:()=>Kt,_safeParse:()=>Ft,_safeEncodeAsync:()=>Pr,_safeEncode:()=>Tr,_safeDecodeAsync:()=>Nr,_safeDecode:()=>jr,_regex:()=>Hi,_refine:()=>Jc,_record:()=>f_,_readonly:()=>z_,_property:()=>_a,_promise:()=>E_,_positive:()=>ha,_pipe:()=>x_,_parseAsync:()=>Jt,_parse:()=>Mt,_overwrite:()=>xe,_optional:()=>$_,_number:()=>gc,_nullable:()=>__,_null:()=>Tc,_normalize:()=>qi,_nonpositive:()=>ba,_nonoptional:()=>w_,_nonnegative:()=>$a,_never:()=>Nc,_negative:()=>ya,_nativeEnum:()=>h_,_nanoid:()=>na,_nan:()=>Cc,_multipleOf:()=>dt,_minSize:()=>Pe,_minLength:()=>We,_min:()=>V,_mime:()=>Qi,_maxSize:()=>gt,_maxLength:()=>Yt,_max:()=>le,_map:()=>p_,_mac:()=>dc,_lte:()=>le,_lt:()=>Te,_lowercase:()=>Bi,_literal:()=>y_,_length:()=>Vt,_lazy:()=>O_,_ksuid:()=>ua,_jwt:()=>ga,_isoTime:()=>pc,_isoDuration:()=>vc,_isoDateTime:()=>mc,_isoDate:()=>fc,_ipv6:()=>da,_ipv4:()=>la,_intersection:()=>c_,_int64:()=>zc,_int32:()=>_c,_int:()=>yc,_includes:()=>Xi,_guid:()=>Di,_gte:()=>V,_gt:()=>je,_float64:()=>$c,_float32:()=>bc,_file:()=>Lc,_enum:()=>g_,_endsWith:()=>Vi,_encodeAsync:()=>Or,_encode:()=>zr,_emoji:()=>ia,_email:()=>Vr,_e164:()=>va,_discriminatedUnion:()=>d_,_default:()=>k_,_decodeAsync:()=>Er,_decode:()=>Ur,_date:()=>Ac,_custom:()=>Mc,_cuid2:()=>aa,_cuid:()=>ra,_coercedString:()=>lc,_coercedNumber:()=>hc,_coercedDate:()=>Zc,_coercedBoolean:()=>Sc,_coercedBigint:()=>xc,_cidrv6:()=>ma,_cidrv4:()=>ca,_check:()=>Kc,_catch:()=>I_,_boolean:()=>wc,_bigint:()=>Ic,_base64url:()=>pa,_base64:()=>fa,_array:()=>Rc,_any:()=>jc,TimePrecision:()=>cc,NEVER:()=>xu,JSONSchemaGenerator:()=>Pm,JSONSchema:()=>j_,Doc:()=>Rr,$output:()=>oc,$input:()=>sc,$constructor:()=>m,$brand:()=>zu,$ZodXor:()=>jd,$ZodXID:()=>ql,$ZodVoid:()=>Id,$ZodUnknown:()=>wd,$ZodUnion:()=>Ki,$ZodUndefined:()=>$d,$ZodUUID:()=>Wl,$ZodURL:()=>Bl,$ZodULID:()=>Ql,$ZodType:()=>x,$ZodTuple:()=>Kr,$ZodTransform:()=>Md,$ZodTemplateLiteral:()=>Qd,$ZodSymbol:()=>bd,$ZodSuccess:()=>Bd,$ZodStringFormat:()=>D,$ZodString:()=>Gt,$ZodSet:()=>Zd,$ZodRegistry:()=>Xr,$ZodRecord:()=>Dd,$ZodRealError:()=>ne,$ZodReadonly:()=>Vd,$ZodPromise:()=>ec,$ZodPreprocess:()=>Yd,$ZodPrefault:()=>Wd,$ZodPipe:()=>Hr,$ZodOptional:()=>Wr,$ZodObjectJIT:()=>Td,$ZodObject:()=>Ed,$ZodNumberFormat:()=>hd,$ZodNumber:()=>Mr,$ZodNullable:()=>Fd,$ZodNull:()=>_d,$ZodNonOptional:()=>Hd,$ZodNever:()=>Sd,$ZodNanoID:()=>Xl,$ZodNaN:()=>Xd,$ZodMap:()=>Ad,$ZodMAC:()=>sd,$ZodLiteral:()=>Rd,$ZodLazy:()=>tc,$ZodKSUID:()=>ed,$ZodJWT:()=>vd,$ZodIntersection:()=>Nd,$ZodISOTime:()=>nd,$ZodISODuration:()=>rd,$ZodISODateTime:()=>td,$ZodISODate:()=>id,$ZodIPv6:()=>od,$ZodIPv4:()=>ad,$ZodGUID:()=>Kl,$ZodFunction:()=>qd,$ZodFile:()=>Ld,$ZodExactOptional:()=>Jd,$ZodError:()=>Sr,$ZodEnum:()=>Cd,$ZodEncodeError:()=>Rt,$ZodEmoji:()=>Gl,$ZodEmail:()=>Hl,$ZodE164:()=>fd,$ZodDiscriminatedUnion:()=>Pd,$ZodDefault:()=>Kd,$ZodDate:()=>xd,$ZodCustomStringFormat:()=>gd,$ZodCustom:()=>ic,$ZodCodec:()=>Br,$ZodCheckUpperCase:()=>Al,$ZodCheckStringFormat:()=>Bt,$ZodCheckStartsWith:()=>Cl,$ZodCheckSizeEquals:()=>El,$ZodCheckRegex:()=>Nl,$ZodCheckProperty:()=>Ll,$ZodCheckOverwrite:()=>Jl,$ZodCheckNumberFormat:()=>xl,$ZodCheckMultipleOf:()=>Il,$ZodCheckMinSize:()=>Ol,$ZodCheckMinLength:()=>jl,$ZodCheckMimeType:()=>Ml,$ZodCheckMaxSize:()=>Ul,$ZodCheckMaxLength:()=>Tl,$ZodCheckLowerCase:()=>Dl,$ZodCheckLessThan:()=>Zr,$ZodCheckLengthEquals:()=>Pl,$ZodCheckIncludes:()=>Zl,$ZodCheckGreaterThan:()=>Cr,$ZodCheckEndsWith:()=>Rl,$ZodCheckBigIntFormat:()=>zl,$ZodCheck:()=>L,$ZodCatch:()=>Gd,$ZodCUID2:()=>Vl,$ZodCUID:()=>Yl,$ZodCIDRv6:()=>ld,$ZodCIDRv4:()=>ud,$ZodBoolean:()=>Jr,$ZodBigIntFormat:()=>yd,$ZodBigInt:()=>Fr,$ZodBase64URL:()=>md,$ZodBase64:()=>dd,$ZodAsyncError:()=>Oe,$ZodArray:()=>zd,$ZodAny:()=>kd});xu=Object.freeze({status:"aborted"});zu=Symbol("zod_brand");Oe=class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};Rt=class Rt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(xs=globalThis).__zod_globalConfig??(xs.__zod_globalConfig={});Pt=globalThis.__zod_globalConfig;O={};Se(O,{unwrapMessage:()=>Tt,uint8ArrayToHex:()=>Dy,uint8ArrayToBase64url:()=>Py,uint8ArrayToBase64:()=>Cu,stringifyPrimitive:()=>_,slugify:()=>Ou,shallowClone:()=>Tu,safeExtend:()=>zy,required:()=>Ey,randomString:()=>$y,propertyKeyTypes:()=>ji,promiseAllObject:()=>by,primitiveTypes:()=>ju,prefixIssues:()=>se,pick:()=>Sy,partial:()=>Oy,parsedType:()=>k,optionalKeys:()=>Pu,omit:()=>Iy,objectClone:()=>gy,numKeys:()=>_y,nullish:()=>Ge,normalizeParams:()=>h,mergeDefs:()=>Ie,merge:()=>Uy,jsonStringifyReplacer:()=>Ti,joinValues:()=>g,issue:()=>Pi,isPlainObject:()=>Ke,isObject:()=>ut,hexToUint8Array:()=>Ny,getSizableOrigin:()=>Ji,getParsedType:()=>ky,getLengthableOrigin:()=>Fi,getEnumValues:()=>kr,getElementAtPath:()=>yy,floatSafeRemainder:()=>Uu,finalizeIssue:()=>ie,extend:()=>xy,explicitlyAborted:()=>Au,escapeRegex:()=>we,esc:()=>sr,defineLazy:()=>E,createTransparentProxy:()=>wy,cloneDef:()=>hy,clone:()=>de,cleanRegex:()=>Mi,cleanEnum:()=>Ty,captureStackTrace:()=>wr,cached:()=>Lt,base64urlToUint8Array:()=>jy,base64ToUint8Array:()=>Zu,assignProp:()=>Ne,assertNotEqual:()=>my,assertNever:()=>py,assertIs:()=>fy,assertEqual:()=>cy,assert:()=>vy,allowsEval:()=>Eu,aborted:()=>Fe,NUMBER_FORMAT_RANGES:()=>Nu,Class:()=>Ru,BIGINT_FORMAT_RANGES:()=>Du});zs=Symbol("evaluating");wr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};Eu=Lt(()=>{if(Pt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});ji=new Set(["string","number","symbol"]),ju=new Set(["string","number","bigint","boolean","symbol","undefined"]);Nu={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]},Du={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Sr=m("$ZodError",Lu),ne=m("$ZodError",Lu,{Parent:Error});ur=Mt(ne),lr=Jt(ne),Ku=Ft(ne),Wu=Kt(ne),Ay=zr(ne),Zy=Ur(ne),Cy=Or(ne),Ry=Er(ne),Ly=Tr(ne),My=jr(ne),Jy=Pr(ne),Fy=Nr(ne),Ee={};Se(Ee,{xid:()=>Xu,uuid7:()=>By,uuid6:()=>Hy,uuid4:()=>Wy,uuid:()=>lt,uppercase:()=>wl,unicodeEmail:()=>tl,undefined:()=>_l,ulid:()=>Gu,time:()=>pl,string:()=>gl,sha512_hex:()=>pb,sha512_base64url:()=>gb,sha512_base64:()=>vb,sha384_hex:()=>cb,sha384_base64url:()=>fb,sha384_base64:()=>mb,sha256_hex:()=>ub,sha256_base64url:()=>db,sha256_base64:()=>lb,sha1_hex:()=>ab,sha1_base64url:()=>sb,sha1_base64:()=>ob,rfc5322Email:()=>Xy,number:()=>Ar,null:()=>$l,nanoid:()=>Vu,md5_hex:()=>ib,md5_base64url:()=>rb,md5_base64:()=>nb,mac:()=>al,lowercase:()=>kl,ksuid:()=>Yu,ipv6:()=>rl,ipv4:()=>nl,integer:()=>yl,idnEmail:()=>Yy,httpProtocol:()=>ll,html5Email:()=>Gy,hostname:()=>qy,hex:()=>tb,guid:()=>qu,extendedDuration:()=>Ky,emoji:()=>il,email:()=>el,e164:()=>dl,duration:()=>Qu,domain:()=>eb,datetime:()=>vl,date:()=>ml,cuid2:()=>Bu,cuid:()=>Hu,cidrv6:()=>sl,cidrv4:()=>ol,browserEmail:()=>Vy,boolean:()=>bl,bigint:()=>hl,base64url:()=>Dr,base64:()=>ul});Hu=/^[cC][0-9a-z]{6,}$/,Bu=/^[0-9a-z]+$/,Gu=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xu=/^[0-9a-vA-V]{20}$/,Yu=/^[A-Za-z0-9]{27}$/,Vu=/^[a-zA-Z0-9_-]{21}$/,Qu=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ky=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,qu=/^([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})$/,Wy=lt(4),Hy=lt(6),By=lt(7),el=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Gy=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Xy=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,tl=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Yy=tl,Vy=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;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])$/,rl=/^(([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}|:))$/,ol=/^((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])$/,sl=/^(([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])$/,ul=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Dr=/^[A-Za-z0-9_-]*$/,qy=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,eb=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,ll=/^https?$/,dl=/^\+[1-9]\d{6,14}$/,ml=new RegExp(`^${cl}$`);hl=/^-?\d+n?$/,yl=/^-?\d+$/,Ar=/^-?\d+(?:\.\d+)?$/,bl=/^(?:true|false)$/i,$l=/^null$/i,_l=/^undefined$/i,kl=/^[^A-Z]*$/,wl=/^[^a-z]*$/,tb=/^[0-9a-fA-F]*$/;ib=/^[0-9a-fA-F]{32}$/,nb=Wt(22,"=="),rb=Ht(22),ab=/^[0-9a-fA-F]{40}$/,ob=Wt(27,"="),sb=Ht(27),ub=/^[0-9a-fA-F]{64}$/,lb=Wt(43,"="),db=Ht(43),cb=/^[0-9a-fA-F]{96}$/,mb=Wt(64,""),fb=Ht(64),pb=/^[0-9a-fA-F]{128}$/,vb=Wt(86,"=="),gb=Ht(86),L=m("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Sl={number:"number",bigint:"bigint",object:"date"},Zr=m("$ZodCheckLessThan",(e,t)=>{L.init(e,t);let n=Sl[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Cr=m("$ZodCheckGreaterThan",(e,t)=>{L.init(e,t);let n=Sl[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Il=m("$ZodCheckMultipleOf",(e,t)=>{L.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):Uu(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),xl=m("$ZodCheckNumberFormat",(e,t)=>{L.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,a]=Nu[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=a,n)s.pattern=yl}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>a)o.issues.push({origin:"number",input:s,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),zl=m("$ZodCheckBigIntFormat",(e,t)=>{L.init(e,t);let[n,r]=Du[t.format];e._zod.onattach.push((i)=>{let a=i._zod.bag;a.format=t.format,a.minimum=n,a.maximum=r}),e._zod.check=(i)=>{let a=i.value;if(a<n)i.issues.push({origin:"bigint",input:a,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(a>r)i.issues.push({origin:"bigint",input:a,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),Ul=m("$ZodCheckMaxSize",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.size<=t.maximum)return;r.issues.push({origin:Ji(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Ol=m("$ZodCheckMinSize",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.size>=t.minimum)return;r.issues.push({origin:Ji(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),El=m("$ZodCheckSizeEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(r)=>{let i=r.value,a=i.size;if(a===t.size)return;let o=a>t.size;r.issues.push({origin:Ji(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),Tl=m("$ZodCheckMaxLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.length<=t.maximum)return;let a=Fi(i);r.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),jl=m("$ZodCheckMinLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.length>=t.minimum)return;let a=Fi(i);r.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Pl=m("$ZodCheckLengthEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!Ge(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(r)=>{let i=r.value,a=i.length;if(a===t.length)return;let o=Fi(i),s=a>t.length;r.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),Bt=m("$ZodCheckStringFormat",(e,t)=>{var n,r;if(L.init(e,t),e._zod.onattach.push((i)=>{let a=i._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),Nl=m("$ZodCheckRegex",(e,t)=>{Bt.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Dl=m("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=kl),Bt.init(e,t)}),Al=m("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=wl),Bt.init(e,t)}),Zl=m("$ZodCheckIncludes",(e,t)=>{L.init(e,t);let n=we(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((i)=>{let a=i._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Cl=m("$ZodCheckStartsWith",(e,t)=>{L.init(e,t);let n=new RegExp(`^${we(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Rl=m("$ZodCheckEndsWith",(e,t)=>{L.init(e,t);let n=new RegExp(`.*${we(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});Ll=m("$ZodCheckProperty",(e,t)=>{L.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((i)=>Us(i,n,t.property));Us(r,n,t.property);return}}),Ml=m("$ZodCheckMimeType",(e,t)=>{L.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Jl=m("$ZodCheckOverwrite",(e,t)=>{L.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});Fl={major:4,minor:4,patch:3},x=m("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Fl;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let i of r)for(let a of i._zod.onattach)a(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,d)=>{let l=Fe(o),c;for(let f of s){if(f._zod.def.when){if(Au(o))continue;if(!f._zod.def.when(o))continue}else if(l)continue;let v=o.issues.length,p=f._zod.check(o);if(p instanceof Promise&&d?.async===!1)throw new Oe;if(c||p instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await p,o.issues.length===v)return;if(!l)l=Fe(o,v)});else{if(o.issues.length===v)continue;if(!l)l=Fe(o,v)}}if(c)return c.then(()=>{return o});return o},a=(o,s,d)=>{if(Fe(o))return o.aborted=!0,o;let l=i(s,r,d);if(l instanceof Promise){if(d.async===!1)throw new Oe;return l.then((c)=>e._zod.parse(c,d))}return e._zod.parse(l,d)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let l=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(l instanceof Promise)return l.then((c)=>{return a(c,o,s)});return a(l,o,s)}let d=e._zod.parse(o,s);if(d instanceof Promise){if(s.async===!1)throw new Oe;return d.then((l)=>i(l,r,s))}return i(d,r,s)}}E(e,"~standard",()=>({validate:(i)=>{try{let a=Ku(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Wu(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Gt=m("$ZodString",(e,t)=>{x.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??gl(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),D=m("$ZodStringFormat",(e,t)=>{Bt.init(e,t),Gt.init(e,t)}),Kl=m("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=qu),D.init(e,t)}),Wl=m("$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=lt(n))}else t.pattern??(t.pattern=lt());D.init(e,t)}),Hl=m("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=el),D.init(e,t)}),Bl=m("$ZodURL",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===ll.source){if(!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Gl=m("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=il()),D.init(e,t)}),Xl=m("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Vu),D.init(e,t)}),Yl=m("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Hu),D.init(e,t)}),Vl=m("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Bu),D.init(e,t)}),Ql=m("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Gu),D.init(e,t)}),ql=m("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Xu),D.init(e,t)}),ed=m("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Yu),D.init(e,t)}),td=m("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=vl(t)),D.init(e,t)}),id=m("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=ml),D.init(e,t)}),nd=m("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=pl(t)),D.init(e,t)}),rd=m("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Qu),D.init(e,t)}),ad=m("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=nl),D.init(e,t),e._zod.bag.format="ipv4"}),od=m("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=rl),D.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),sd=m("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=al(t.delimiter)),D.init(e,t),e._zod.bag.format="mac"}),ud=m("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=ol),D.init(e,t)}),ld=m("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=sl),D.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[i,a]=r;if(!a)throw Error();let o=Number(a);if(`${o}`!==a)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});dd=m("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ul),D.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(Lr(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});md=m("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Dr),D.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(cd(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),fd=m("$ZodE164",(e,t)=>{t.pattern??(t.pattern=dl),D.init(e,t)});vd=m("$ZodJWT",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{if(pd(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),gd=m("$ZodCustomStringFormat",(e,t)=>{D.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Mr=m("$ZodNumber",(e,t)=>{x.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ar,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...a?{received:a}:{}}),n}}),hd=m("$ZodNumberFormat",(e,t)=>{xl.init(e,t),Mr.init(e,t)}),Jr=m("$ZodBoolean",(e,t)=>{x.init(e,t),e._zod.pattern=bl,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(a){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),Fr=m("$ZodBigInt",(e,t)=>{x.init(e,t),e._zod.pattern=hl,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),yd=m("$ZodBigIntFormat",(e,t)=>{zl.init(e,t),Fr.init(e,t)}),bd=m("$ZodSymbol",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),$d=m("$ZodUndefined",(e,t)=>{x.init(e,t),e._zod.pattern=_l,e._zod.values=new Set([void 0]),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),_d=m("$ZodNull",(e,t)=>{x.init(e,t),e._zod.pattern=$l,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),kd=m("$ZodAny",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),wd=m("$ZodUnknown",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),Sd=m("$ZodNever",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),Id=m("$ZodVoid",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),xd=m("$ZodDate",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,a=i instanceof Date;if(a&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...a?{received:"Invalid Date"}:{},inst:e}),n}});zd=m("$ZodArray",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let o=0;o<i.length;o++){let s=i[o],d=t.element._zod.run({value:s,issues:[]},r);if(d instanceof Promise)a.push(d.then((l)=>Os(l,n,o)));else Os(d,n,o)}if(a.length)return Promise.all(a).then(()=>n);return n}});Ed=m("$ZodObject",(e,t)=>{if(x.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=Lt(()=>Ud(t));E(e._zod,"propValues",()=>{let o=t.shape,s={};for(let d in o){let l=o[d]._zod;if(l.values){s[d]??(s[d]=new Set);for(let c of l.values)s[d].add(c)}}return s});let r=ut,i=t.catchall,a;e._zod.parse=(o,s)=>{a??(a=n.value);let d=o.value;if(!r(d))return o.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),o;o.value={};let l=[],c=a.shape;for(let f of a.keys){let v=c[f],p=v._zod.optin==="optional",y=v._zod.optout==="optional",I=v._zod.run({value:d[f],issues:[]},s);if(I instanceof Promise)l.push(I.then((j)=>Ni(j,o,f,d,p,y)));else Ni(I,o,f,d,p,y)}if(!i)return l.length?Promise.all(l).then(()=>o):o;return Od(l,d,o,s,n.value,e)}}),Td=m("$ZodObjectJIT",(e,t)=>{Ed.init(e,t);let n=e._zod.parse,r=Lt(()=>Ud(t)),i=(f)=>{let v=new Rr(["shape","payload","ctx"]),p=r.value,y=(C)=>{let w=sr(C);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};v.write("const input = payload.value;");let I=Object.create(null),j=0;for(let C of p.keys)I[C]=`key_${j++}`;v.write("const newResult = {};");for(let C of p.keys){let w=I[C],Z=sr(C),Y=f[C],ye=Y?._zod?.optin==="optional",tt=Y?._zod?.optout==="optional";if(v.write(`const ${w} = ${y(C)};`),ye&&tt)v.write(`
|
|
104
104
|
if (${w}.issues.length) {
|
|
105
105
|
if (${Z} in input) {
|
|
106
106
|
payload.issues = payload.issues.concat(${w}.issues.map(iss => ({
|
|
@@ -159,6 +159,6 @@ IMPORTANT:
|
|
|
159
159
|
newResult[${Z}] = ${w}.value;
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
`)}v.write("payload.value = newResult;"),v.write("return payload;");let U=v.compile();return(C,w)=>U(f,C,w)},a,o=ut,s=!Pt.jitless,d=s&&Ou.value,l=t.catchall,c;e._zod.parse=(f,v)=>{c??(c=r.value);let p=f.value;if(!o(p))return f.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),f;if(s&&d&&v?.async===!1&&v.jitless!==!0){if(!a)a=i(t.shape);if(f=a(f,v),!l)return f;return Ud([],p,f,v,c,e)}return n(f,v)}});Ki=m("$ZodUnion",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.options.some((r)=>r._zod.optin==="optional")?"optional":void 0),E(e._zod,"optout",()=>t.options.some((r)=>r._zod.optout==="optional")?"optional":void 0),E(e._zod,"values",()=>{if(t.options.every((r)=>r._zod.values))return new Set(t.options.flatMap((r)=>Array.from(r._zod.values)));return}),E(e._zod,"pattern",()=>{if(t.options.every((r)=>r._zod.pattern)){let r=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${r.map((i)=>Mi(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else{if(d.issues.length===0)return d;o.push(d)}}if(!a)return Os(o,r,e,i);return Promise.all(o).then((s)=>{return Os(s,r,e,i)})}});Td=m("$ZodXor",(e,t)=>{Ki.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else o.push(d)}if(!a)return Es(o,r,e,i);return Promise.all(o).then((s)=>{return Es(s,r,e,i)})}}),jd=m("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Ki.init(e,t);let n=e._zod.parse;E(e._zod,"propValues",()=>{let i={};for(let a of t.options){let o=a._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[s,d]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let l of d)i[s].add(l)}}return i});let r=Lt(()=>{let i=t.options,a=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let d of s){if(a.has(d))throw Error(`Duplicate discriminator value "${String(d)}"`);a.set(d,o)}}return a});e._zod.parse=(i,a)=>{let o=i.value;if(!ut(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,a);if(t.unionFallback||a.direction==="backward")return n(i,a);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),Pd=m("$ZodIntersection",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value,a=t.left._zod.run({value:i,issues:[]},r),o=t.right._zod.run({value:i,issues:[]},r);if(a instanceof Promise||o instanceof Promise)return Promise.all([a,o]).then(([s,d])=>{return Ts(n,s,d)});return Ts(n,a,o)}});Jr=m("$ZodTuple",(e,t)=>{x.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let o=[],s=js(n,"optin"),d=js(n,"optout");if(!t.rest){if(a.length<s)return r.issues.push({code:"too_small",minimum:s,inclusive:!0,input:a,inst:e,origin:"array"}),r;if(a.length>n.length)r.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:a,inst:e,origin:"array"})}let l=Array(n.length);for(let c=0;c<n.length;c++){let f=n[c]._zod.run({value:a[c],issues:[]},i);if(f instanceof Promise)o.push(f.then((v)=>{l[c]=v}));else l[c]=f}if(t.rest){let c=n.length-1,f=a.slice(n.length);for(let v of f){c++;let p=t.rest._zod.run({value:v,issues:[]},i);if(p instanceof Promise)o.push(p.then((y)=>Ps(y,r,c)));else Ps(p,r,c)}}if(o.length)return Promise.all(o).then(()=>Ns(l,r,n,a,d));return Ns(l,r,n,a,d)}});Nd=m("$ZodRecord",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Ke(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let l of o)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){s.add(typeof l==="number"?l.toString():l);let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>ie(p,r,W())),input:l,path:[l],inst:e});continue}let f=c.value,v=t.valueType._zod.run({value:i[l],issues:[]},r);if(v instanceof Promise)a.push(v.then((p)=>{if(p.issues.length)n.issues.push(...se(l,p.issues));n.value[f]=p.value}));else{if(v.issues.length)n.issues.push(...se(l,v.issues));n.value[f]=v.value}}let d;for(let l in i)if(!s.has(l))d=d??[],d.push(l);if(d&&d.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:d})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let d=t.keyType._zod.run({value:s,issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&Dr.test(s)&&d.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)d=c}if(d.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((c)=>ie(c,r,W())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:i[s],issues:[]},r);if(l instanceof Promise)a.push(l.then((c)=>{if(c.issues.length)n.issues.push(...se(s,c.issues));n.value[d.value]=c.value}));else{if(l.issues.length)n.issues.push(...se(s,l.issues));n.value[d.value]=l.value}}}if(a.length)return Promise.all(a).then(()=>n);return n}}),Dd=m("$ZodMap",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let d=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);if(d instanceof Promise||l instanceof Promise)a.push(Promise.all([d,l]).then(([c,f])=>{Ds(c,f,n,o,i,e,r)}));else Ds(d,l,n,o,i,e,r)}if(a.length)return Promise.all(a).then(()=>n);return n}});Ad=m("$ZodSet",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let a=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)a.push(s.then((d)=>As(d,n)));else As(s,n)}if(a.length)return Promise.all(a).then(()=>n);return n}});Zd=m("$ZodEnum",(e,t)=>{x.init(e,t);let n=_r(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((i)=>ji.has(typeof i)).map((i)=>typeof i==="string"?we(i):i.toString()).join("|")})$`),e._zod.parse=(i,a)=>{let o=i.value;if(r.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),Cd=m("$ZodLiteral",(e,t)=>{if(x.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?we(r):r?we(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,i)=>{let a=r.value;if(n.has(a))return r;return r.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),r}}),Rd=m("$ZodFile",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),Ld=m("$ZodTransform",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then((a)=>{return n.value=a,n.fallback=!0,n});if(i instanceof Promise)throw new Oe;return n.value=i,n.fallback=!0,n}});Kr=m("$ZodOptional",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.optout="optional",E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Mi(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,a=t.innerType._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Zs(o,i));return Zs(a,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),Md=m("$ZodExactOptional",(e,t)=>{Kr.init(e,t),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>{return t.innerType._zod.run(n,r)}}),Fd=m("$ZodNullable",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.innerType._zod.optin),E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Mi(n.source)}|null)$`):void 0}),E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),Jd=m("$ZodDefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Cs(a,t));return Cs(i,t)}});Kd=m("$ZodPrefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),Wd=m("$ZodNonOptional",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Rs(a,e));return Rs(i,e)}});Hd=m("$ZodSuccess",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt("ZodSuccess");let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{return n.value=a.issues.length===0,n});return n.value=i.issues.length===0,n}}),Bd=m("$ZodCatch",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{if(n.value=a.value,a.issues.length)n.value=t.catchValue({...n,error:{issues:a.issues.map((o)=>ie(o,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((a)=>ie(a,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),Gd=m("$ZodNaN",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),Wr=m("$ZodPipe",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let a=t.out._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Si(o,t.in,r));return Si(a,t.in,r)}let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Si(a,t.out,r));return Si(i,t.out,r)}});Hr=m("$ZodCodec",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ii(a,t,r));return Ii(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ii(a,t,r));return Ii(i,t,r)}}});Xd=m("$ZodPreprocess",(e,t)=>{Wr.init(e,t)}),Yd=m("$ZodReadonly",(e,t)=>{x.init(e,t),E(e._zod,"propValues",()=>t.innerType._zod.propValues),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"optin",()=>t.innerType?._zod?.optin),E(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then(Ls);return Ls(i)}});Vd=m("$ZodTemplateLiteral",(e,t)=>{x.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let i=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${r._zod.traits}`);let a=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(a,o))}else if(r===null||Tu.has(typeof r))n.push(we(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,i)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),Qd=m("$ZodFunction",(e,t)=>{return x.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let i=e._def.input?sr(e._def.input,r):r,a=Reflect.apply(n,this,i);if(e._def.output)return sr(e._def.output,a);return a}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let i=e._def.input?await ur(e._def.input,r):r,a=await Reflect.apply(n,this,i);if(e._def.output)return await ur(e._def.output,a);return a}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new Jr({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),qd=m("$ZodPromise",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},r))}}),ec=m("$ZodLazy",(e,t)=>{x.init(e,t),E(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),E(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),E(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),E(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),E(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>{return e._zod.innerType._zod.run(n,r)}}),tc=m("$ZodCustom",(e,t)=>{L.init(e,t),x.init(e,t),e._zod.parse=(n,r)=>{return n},e._zod.check=(n)=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then((a)=>Ms(a,n,r,e));Ms(i,n,r,e);return}});Br={};Se(Br,{zhTW:()=>a_,zhCN:()=>n_,yo:()=>s_,vi:()=>t_,uz:()=>q$,ur:()=>V$,uk:()=>rc,ua:()=>X$,tr:()=>B$,th:()=>W$,ta:()=>J$,sv:()=>M$,sl:()=>R$,ru:()=>Z$,ro:()=>D$,pt:()=>P$,ps:()=>O$,pl:()=>T$,ota:()=>z$,no:()=>I$,nl:()=>w$,ms:()=>_$,mk:()=>b$,lt:()=>h$,ko:()=>v$,km:()=>nc,kh:()=>f$,ka:()=>c$,ja:()=>l$,it:()=>s$,is:()=>a$,id:()=>n$,hy:()=>t$,hu:()=>qb,hr:()=>Vb,he:()=>Xb,frCA:()=>Bb,fr:()=>Wb,fi:()=>Jb,fa:()=>Mb,es:()=>Rb,eo:()=>Zb,en:()=>ic,el:()=>Nb,de:()=>jb,da:()=>Eb,cs:()=>Ub,ca:()=>xb,bg:()=>Sb,be:()=>kb,az:()=>$b,ar:()=>yb});ac=Symbol("ZodOutput"),oc=Symbol("ZodInput");(Hs=globalThis).__zod_globalRegistry??(Hs.__zod_globalRegistry=Xr());ue=globalThis.__zod_globalRegistry;dc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};T_={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},dr={string:Gc,number:Xc,boolean:Yc,bigint:Vc,symbol:Qc,null:qc,undefined:em,void:tm,never:im,any:nm,unknown:rm,date:am,enum:om,literal:sm,nan:um,template_literal:lm,file:dm,success:cm,custom:mm,function:fm,transform:pm,map:vm,set:gm,array:hm,object:ym,union:_a,intersection:bm,tuple:$m,record:_m,nullable:km,nonoptional:wm,default:Sm,prefault:Im,catch:xm,pipe:zm,readonly:Um,promise:Om,optional:ka,lazy:Em};j_={},Pm={};Se(Pm,{xor:()=>Jf,xid:()=>mf,void:()=>Zf,uuidv7:()=>rf,uuidv6:()=>nf,uuidv4:()=>tf,uuid:()=>ef,url:()=>af,unknown:()=>He,union:()=>In,undefined:()=>Df,ulid:()=>cf,uint64:()=>Pf,uint32:()=>Ef,tuple:()=>Wa,transform:()=>zn,templateLiteral:()=>np,symbol:()=>Nf,superRefine:()=>$o,success:()=>qf,stringbool:()=>dp,stringFormat:()=>wf,string:()=>Dt,strictObject:()=>Mf,set:()=>Gf,refine:()=>bo,record:()=>Ha,readonly:()=>fo,promise:()=>rp,preprocess:()=>mp,prefault:()=>ro,pipe:()=>Zi,partialRecord:()=>Wf,optional:()=>Zt,object:()=>Lf,number:()=>Oa,nullish:()=>Qf,nullable:()=>Ct,null:()=>Na,nonoptional:()=>ao,never:()=>wn,nativeEnum:()=>Xf,nanoid:()=>uf,nan:()=>ep,meta:()=>up,map:()=>Bf,mac:()=>vf,looseRecord:()=>Hf,looseObject:()=>Ff,literal:()=>Yf,lazy:()=>go,ksuid:()=>ff,keyof:()=>Rf,jwt:()=>kf,json:()=>cp,ipv6:()=>gf,ipv4:()=>pf,invertCodec:()=>ip,intersection:()=>Ja,int64:()=>jf,int32:()=>Of,int:()=>Ai,instanceof:()=>lp,httpUrl:()=>of,hostname:()=>Sf,hex:()=>If,hash:()=>xf,guid:()=>qm,function:()=>Ci,float64:()=>Uf,float32:()=>zf,file:()=>Vf,exactOptional:()=>qa,enum:()=>xn,emoji:()=>sf,email:()=>Qm,e164:()=>_f,discriminatedUnion:()=>Kf,describe:()=>sp,date:()=>Cf,custom:()=>op,cuid2:()=>df,cuid:()=>lf,codec:()=>tp,cidrv6:()=>yf,cidrv4:()=>hf,check:()=>ap,catch:()=>uo,boolean:()=>Ea,bigint:()=>Tf,base64url:()=>$f,base64:()=>bf,array:()=>ai,any:()=>Af,_function:()=>Ci,_default:()=>io,_ZodString:()=>an,ZodXor:()=>La,ZodXID:()=>mn,ZodVoid:()=>Ca,ZodUnknown:()=>Aa,ZodUnion:()=>si,ZodUndefined:()=>ja,ZodUUID:()=>$e,ZodURL:()=>ti,ZodULID:()=>cn,ZodType:()=>z,ZodTuple:()=>Ka,ZodTransform:()=>Va,ZodTemplateLiteral:()=>po,ZodSymbol:()=>Ta,ZodSuccess:()=>oo,ZodStringFormat:()=>A,ZodString:()=>ei,ZodSet:()=>Ga,ZodRecord:()=>pt,ZodReadonly:()=>mo,ZodPromise:()=>ho,ZodPreprocess:()=>co,ZodPrefault:()=>no,ZodPipe:()=>ui,ZodOptional:()=>Un,ZodObject:()=>oi,ZodNumberFormat:()=>Xe,ZodNumber:()=>ii,ZodNullable:()=>eo,ZodNull:()=>Pa,ZodNonOptional:()=>On,ZodNever:()=>Za,ZodNanoID:()=>un,ZodNaN:()=>lo,ZodMap:()=>Ba,ZodMAC:()=>Ua,ZodLiteral:()=>Xa,ZodLazy:()=>vo,ZodKSUID:()=>fn,ZodJWT:()=>_n,ZodIntersection:()=>Fa,ZodIPv6:()=>vn,ZodIPv4:()=>pn,ZodGUID:()=>At,ZodFunction:()=>yo,ZodFile:()=>Ya,ZodExactOptional:()=>Qa,ZodEnum:()=>vt,ZodEmoji:()=>sn,ZodEmail:()=>on,ZodE164:()=>$n,ZodDiscriminatedUnion:()=>Ma,ZodDefault:()=>to,ZodDate:()=>Sn,ZodCustomStringFormat:()=>ht,ZodCustom:()=>di,ZodCodec:()=>li,ZodCatch:()=>so,ZodCUID2:()=>dn,ZodCUID:()=>ln,ZodCIDRv6:()=>hn,ZodCIDRv4:()=>gn,ZodBoolean:()=>ni,ZodBigIntFormat:()=>kn,ZodBigInt:()=>ri,ZodBase64URL:()=>bn,ZodBase64:()=>yn,ZodArray:()=>Ra,ZodAny:()=>Da});Nm={};Se(Nm,{uppercase:()=>Gi,trim:()=>en,toUpperCase:()=>nn,toLowerCase:()=>tn,startsWith:()=>Yi,slugify:()=>rn,size:()=>Xt,regex:()=>Hi,property:()=>$a,positive:()=>ga,overwrite:()=>xe,normalize:()=>qi,nonpositive:()=>ya,nonnegative:()=>ba,negative:()=>ha,multipleOf:()=>dt,minSize:()=>Pe,minLength:()=>We,mime:()=>Qi,maxSize:()=>gt,maxLength:()=>Yt,lte:()=>le,lt:()=>Te,lowercase:()=>Bi,length:()=>Vt,includes:()=>Xi,gte:()=>V,gt:()=>je,endsWith:()=>Vi});wa={};Se(wa,{time:()=>Zm,duration:()=>Cm,datetime:()=>Dm,date:()=>Am,ZodISOTime:()=>xa,ZodISODuration:()=>za,ZodISODateTime:()=>Sa,ZodISODate:()=>Ia});Sa=m("ZodISODateTime",(e,t)=>{ed.init(e,t),A.init(e,t)});Ia=m("ZodISODate",(e,t)=>{td.init(e,t),A.init(e,t)});xa=m("ZodISOTime",(e,t)=>{id.init(e,t),A.init(e,t)});za=m("ZodISODuration",(e,t)=>{nd.init(e,t),A.init(e,t)});P_=m("ZodError",Rm),re=m("ZodError",Rm,{Parent:Error}),Lm=Mt(re),Mm=Ft(re),Fm=Jt(re),Jm=Kt(re),Km=xr(re),Wm=zr(re),Hm=Ur(re),Bm=Or(re),Gm=Er(re),Xm=Tr(re),Ym=jr(re),Vm=Pr(re),Bs=new WeakMap;z=m("ZodType",(e,t)=>{return x.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Nt(e,"input"),output:Nt(e,"output")}}),e.toJSONSchema=Bc(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Lm(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Fm(e,n,r),e.parseAsync=async(n,r)=>Mm(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Jm(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Km(e,n,r),e.decode=(n,r)=>Wm(e,n,r),e.encodeAsync=async(n,r)=>Hm(e,n,r),e.decodeAsync=async(n,r)=>Bm(e,n,r),e.safeEncode=(n,r)=>Gm(e,n,r),e.safeDecode=(n,r)=>Xm(e,n,r),e.safeEncodeAsync=async(n,r)=>Ym(e,n,r),e.safeDecodeAsync=async(n,r)=>Vm(e,n,r),qt(e,"ZodType",{check(...n){let r=this.def;return this.clone(O.mergeDefs(r,{checks:[...r.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return de(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check(bo(n,r))},superRefine(n,r){return this.check($o(n,r))},overwrite(n){return this.check(xe(n))},optional(){return Zt(this)},exactOptional(){return qa(this)},nullable(){return Ct(this)},nullish(){return Zt(Ct(this))},nonoptional(n){return ao(this,n)},array(){return ai(this)},or(n){return In([this,n])},and(n){return Ja(this,n)},transform(n){return Zi(this,zn(n))},default(n){return io(this,n)},prefault(n){return ro(this,n)},catch(n){return uo(this,n)},pipe(n){return Zi(this,n)},readonly(){return fo(this)},describe(n){let r=this.clone();return ue.add(r,{description:n}),r},meta(...n){if(n.length===0)return ue.get(this);let r=this.clone();return ue.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ue.get(e)?.description},configurable:!0}),e}),an=m("_ZodString",(e,t)=>{Gt.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Gc(e,r,i,a);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,qt(e,"_ZodString",{regex(...r){return this.check(Hi(...r))},includes(...r){return this.check(Xi(...r))},startsWith(...r){return this.check(Yi(...r))},endsWith(...r){return this.check(Vi(...r))},min(...r){return this.check(We(...r))},max(...r){return this.check(Yt(...r))},length(...r){return this.check(Vt(...r))},nonempty(...r){return this.check(We(1,...r))},lowercase(r){return this.check(Bi(r))},uppercase(r){return this.check(Gi(r))},trim(){return this.check(en())},normalize(...r){return this.check(qi(...r))},toLowerCase(){return this.check(tn())},toUpperCase(){return this.check(nn())},slugify(){return this.check(rn())}})}),ei=m("ZodString",(e,t)=>{Gt.init(e,t),an.init(e,t),e.email=(n)=>e.check(Yr(on,n)),e.url=(n)=>e.check(Wi(ti,n)),e.jwt=(n)=>e.check(va(_n,n)),e.emoji=(n)=>e.check(ta(sn,n)),e.guid=(n)=>e.check(Di(At,n)),e.uuid=(n)=>e.check(Vr($e,n)),e.uuidv4=(n)=>e.check(Qr($e,n)),e.uuidv6=(n)=>e.check(qr($e,n)),e.uuidv7=(n)=>e.check(ea($e,n)),e.nanoid=(n)=>e.check(ia(un,n)),e.guid=(n)=>e.check(Di(At,n)),e.cuid=(n)=>e.check(na(ln,n)),e.cuid2=(n)=>e.check(ra(dn,n)),e.ulid=(n)=>e.check(aa(cn,n)),e.base64=(n)=>e.check(ma(yn,n)),e.base64url=(n)=>e.check(fa(bn,n)),e.xid=(n)=>e.check(oa(mn,n)),e.ksuid=(n)=>e.check(sa(fn,n)),e.ipv4=(n)=>e.check(ua(pn,n)),e.ipv6=(n)=>e.check(la(vn,n)),e.cidrv4=(n)=>e.check(da(gn,n)),e.cidrv6=(n)=>e.check(ca(hn,n)),e.e164=(n)=>e.check(pa($n,n)),e.datetime=(n)=>e.check(Dm(n)),e.date=(n)=>e.check(Am(n)),e.time=(n)=>e.check(Zm(n)),e.duration=(n)=>e.check(Cm(n))});A=m("ZodStringFormat",(e,t)=>{D.init(e,t),an.init(e,t)}),on=m("ZodEmail",(e,t)=>{Wl.init(e,t),A.init(e,t)});At=m("ZodGUID",(e,t)=>{Jl.init(e,t),A.init(e,t)});$e=m("ZodUUID",(e,t)=>{Kl.init(e,t),A.init(e,t)});ti=m("ZodURL",(e,t)=>{Hl.init(e,t),A.init(e,t)});sn=m("ZodEmoji",(e,t)=>{Bl.init(e,t),A.init(e,t)});un=m("ZodNanoID",(e,t)=>{Gl.init(e,t),A.init(e,t)});ln=m("ZodCUID",(e,t)=>{Xl.init(e,t),A.init(e,t)});dn=m("ZodCUID2",(e,t)=>{Yl.init(e,t),A.init(e,t)});cn=m("ZodULID",(e,t)=>{Vl.init(e,t),A.init(e,t)});mn=m("ZodXID",(e,t)=>{Ql.init(e,t),A.init(e,t)});fn=m("ZodKSUID",(e,t)=>{ql.init(e,t),A.init(e,t)});pn=m("ZodIPv4",(e,t)=>{rd.init(e,t),A.init(e,t)});Ua=m("ZodMAC",(e,t)=>{od.init(e,t),A.init(e,t)});vn=m("ZodIPv6",(e,t)=>{ad.init(e,t),A.init(e,t)});gn=m("ZodCIDRv4",(e,t)=>{sd.init(e,t),A.init(e,t)});hn=m("ZodCIDRv6",(e,t)=>{ud.init(e,t),A.init(e,t)});yn=m("ZodBase64",(e,t)=>{ld.init(e,t),A.init(e,t)});bn=m("ZodBase64URL",(e,t)=>{cd.init(e,t),A.init(e,t)});$n=m("ZodE164",(e,t)=>{md.init(e,t),A.init(e,t)});_n=m("ZodJWT",(e,t)=>{pd.init(e,t),A.init(e,t)});ht=m("ZodCustomStringFormat",(e,t)=>{vd.init(e,t),A.init(e,t)});ii=m("ZodNumber",(e,t)=>{Lr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Xc(e,r,i,a),qt(e,"ZodNumber",{gt(r,i){return this.check(je(r,i))},gte(r,i){return this.check(V(r,i))},min(r,i){return this.check(V(r,i))},lt(r,i){return this.check(Te(r,i))},lte(r,i){return this.check(le(r,i))},max(r,i){return this.check(le(r,i))},int(r){return this.check(Ai(r))},safe(r){return this.check(Ai(r))},positive(r){return this.check(je(0,r))},nonnegative(r){return this.check(V(0,r))},negative(r){return this.check(Te(0,r))},nonpositive(r){return this.check(le(0,r))},multipleOf(r,i){return this.check(dt(r,i))},step(r,i){return this.check(dt(r,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});Xe=m("ZodNumberFormat",(e,t)=>{gd.init(e,t),ii.init(e,t)});ni=m("ZodBoolean",(e,t)=>{Mr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Yc(e,n,r,i)});ri=m("ZodBigInt",(e,t)=>{Fr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Vc(e,r,i,a),e.gte=(r,i)=>e.check(V(r,i)),e.min=(r,i)=>e.check(V(r,i)),e.gt=(r,i)=>e.check(je(r,i)),e.gte=(r,i)=>e.check(V(r,i)),e.min=(r,i)=>e.check(V(r,i)),e.lt=(r,i)=>e.check(Te(r,i)),e.lte=(r,i)=>e.check(le(r,i)),e.max=(r,i)=>e.check(le(r,i)),e.positive=(r)=>e.check(je(BigInt(0),r)),e.negative=(r)=>e.check(Te(BigInt(0),r)),e.nonpositive=(r)=>e.check(le(BigInt(0),r)),e.nonnegative=(r)=>e.check(V(BigInt(0),r)),e.multipleOf=(r,i)=>e.check(dt(r,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});kn=m("ZodBigIntFormat",(e,t)=>{hd.init(e,t),ri.init(e,t)});Ta=m("ZodSymbol",(e,t)=>{yd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qc(e,n,r,i)});ja=m("ZodUndefined",(e,t)=>{bd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>em(e,n,r,i)});Pa=m("ZodNull",(e,t)=>{$d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>qc(e,n,r,i)});Da=m("ZodAny",(e,t)=>{_d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>nm(e,n,r,i)});Aa=m("ZodUnknown",(e,t)=>{kd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>rm(e,n,r,i)});Za=m("ZodNever",(e,t)=>{wd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>im(e,n,r,i)});Ca=m("ZodVoid",(e,t)=>{Sd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>tm(e,n,r,i)});Sn=m("ZodDate",(e,t)=>{Id.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>am(e,r,i,a),e.min=(r,i)=>e.check(V(r,i)),e.max=(r,i)=>e.check(le(r,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});Ra=m("ZodArray",(e,t)=>{xd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>hm(e,n,r,i),e.element=t.element,qt(e,"ZodArray",{min(n,r){return this.check(We(n,r))},nonempty(n){return this.check(We(1,n))},max(n,r){return this.check(Yt(n,r))},length(n,r){return this.check(Vt(n,r))},unwrap(){return this.element}})});oi=m("ZodObject",(e,t)=>{Ed.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ym(e,n,r,i),O.defineLazy(e,"shape",()=>{return t.shape}),qt(e,"ZodObject",{keyof(){return xn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:He()})},loose(){return this.clone({...this._zod.def,catchall:He()})},strict(){return this.clone({...this._zod.def,catchall:wn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return O.extend(this,n)},safeExtend(n){return O.safeExtend(this,n)},merge(n){return O.merge(this,n)},pick(n){return O.pick(this,n)},omit(n){return O.omit(this,n)},partial(...n){return O.partial(Un,this,n[0])},required(...n){return O.required(On,this,n[0])}})});si=m("ZodUnion",(e,t)=>{Ki.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>_a(e,n,r,i),e.options=t.options});La=m("ZodXor",(e,t)=>{si.init(e,t),Td.init(e,t),e._zod.processJSONSchema=(n,r,i)=>_a(e,n,r,i),e.options=t.options});Ma=m("ZodDiscriminatedUnion",(e,t)=>{si.init(e,t),jd.init(e,t)});Fa=m("ZodIntersection",(e,t)=>{Pd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>bm(e,n,r,i)});Ka=m("ZodTuple",(e,t)=>{Jr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>$m(e,n,r,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});pt=m("ZodRecord",(e,t)=>{Nd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>_m(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType});Ba=m("ZodMap",(e,t)=>{Dd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>vm(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Pe(...n)),e.nonempty=(n)=>e.check(Pe(1,n)),e.max=(...n)=>e.check(gt(...n)),e.size=(...n)=>e.check(Xt(...n))});Ga=m("ZodSet",(e,t)=>{Ad.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>gm(e,n,r,i),e.min=(...n)=>e.check(Pe(...n)),e.nonempty=(n)=>e.check(Pe(1,n)),e.max=(...n)=>e.check(gt(...n)),e.size=(...n)=>e.check(Xt(...n))});vt=m("ZodEnum",(e,t)=>{Zd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>om(e,r,i,a),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,i)=>{let a={};for(let o of r)if(n.has(o))a[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new vt({...t,checks:[],...O.normalizeParams(i),entries:a})},e.exclude=(r,i)=>{let a={...t.entries};for(let o of r)if(n.has(o))delete a[o];else throw Error(`Key ${o} not found in enum`);return new vt({...t,checks:[],...O.normalizeParams(i),entries:a})}});Xa=m("ZodLiteral",(e,t)=>{Cd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>sm(e,n,r,i),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]}})});Ya=m("ZodFile",(e,t)=>{Rd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>dm(e,n,r,i),e.min=(n,r)=>e.check(Pe(n,r)),e.max=(n,r)=>e.check(gt(n,r)),e.mime=(n,r)=>e.check(Qi(Array.isArray(n)?n:[n],r))});Va=m("ZodTransform",(e,t)=>{Ld.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>pm(e,n,r,i),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt(e.constructor.name);n.addIssue=(a)=>{if(typeof a==="string")n.issues.push(O.issue(a,n.value,t));else{let o=a;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(O.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((a)=>{return n.value=a,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});Un=m("ZodOptional",(e,t)=>{Kr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ka(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Qa=m("ZodExactOptional",(e,t)=>{Md.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ka(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});eo=m("ZodNullable",(e,t)=>{Fd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>km(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});to=m("ZodDefault",(e,t)=>{Jd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Sm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});no=m("ZodPrefault",(e,t)=>{Kd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Im(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});On=m("ZodNonOptional",(e,t)=>{Wd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>wm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});oo=m("ZodSuccess",(e,t)=>{Hd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>cm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});so=m("ZodCatch",(e,t)=>{Bd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>xm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});lo=m("ZodNaN",(e,t)=>{Gd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>um(e,n,r,i)});ui=m("ZodPipe",(e,t)=>{Wr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>zm(e,n,r,i),e.in=t.in,e.out=t.out});li=m("ZodCodec",(e,t)=>{ui.init(e,t),Hr.init(e,t)});co=m("ZodPreprocess",(e,t)=>{ui.init(e,t),Xd.init(e,t)}),mo=m("ZodReadonly",(e,t)=>{Yd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Um(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});po=m("ZodTemplateLiteral",(e,t)=>{Vd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>lm(e,n,r,i)});vo=m("ZodLazy",(e,t)=>{ec.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Em(e,n,r,i),e.unwrap=()=>e._zod.def.getter()});ho=m("ZodPromise",(e,t)=>{qd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Om(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});yo=m("ZodFunction",(e,t)=>{Qd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>fm(e,n,r,i)});di=m("ZodCustom",(e,t)=>{tc.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>mm(e,n,r,i)});sp=Kc,up=Wc;N_={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(cr||(cr={}));b={...Pm,...Nm,iso:wa},Z_=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);pp={};Se(pp,{string:()=>M_,number:()=>F_,date:()=>W_,boolean:()=>J_,bigint:()=>K_});W(ic());_o=u,vp=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),gp=u.object({models:u.array(vp).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),hp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),yp=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),bp=u.object({models:u.array(hp).optional(),customModels:u.array(yp).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),$p=u.object({id:u.string()}),_p=u.object({models:u.array($p).optional()}),kp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),wp=u.object({models:u.array(kp).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),Sp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),Ip=u.object({models:u.array(Sp).optional(),baseUrl:u.string().optional()}),xp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),zp=u.object({models:u.array(xp).optional(),baseUrl:u.string().optional()}),H_=u.object({OpenAiCompatible:gp.optional(),AwsBedrock:bp.optional(),Cline:_p.optional(),Vertex:wp.optional(),LiteLLM:Ip.optional(),Anthropic:zp.optional()}),Up=u.object({id:u.string()}),Op=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),mr=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),Ui=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),Ep=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:Ui.optional(),r2AccessSettings:Ui.optional(),azureAccessSettings:Ui.optional()}),Tp=u.object({promptUploading:Ep.optional()}),B_=u.object({version:u.string(),providerSettings:H_.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(Up).optional(),remoteMCPServers:u.array(Op).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:Tp.optional(),globalRules:u.array(mr).optional(),globalWorkflows:u.array(mr).optional()}),G_=u.record(u.string(),u.string()),jp=u.enum(["default","openai-responses","r1"]),X_={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},Pp=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),Np=u.enum(["active","preview","deprecated","legacy"]),Dp=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),Ap=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),Zp=u.object({reasoningDefaultOn:u.boolean().optional()}).catchall(u.unknown()),ko=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),maxInputTokens:u.number().optional(),capabilities:u.array(Pp).optional(),apiFormat:jp.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:Dp.optional(),thinkingConfig:Ap.optional(),status:Np.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional(),metadata:Zp.optional()}),Cp=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),Rp=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),Lp=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),Y_=u.object({text:u.string(),usage:Lp,messages:u.array(u.custom()),toolCalls:u.array(Cp),iterations:u.number(),finishReason:Rp,model:u.object({id:u.string(),provider:u.string(),info:ko.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),Mp=u.enum(["low","medium","high","xhigh"]),V_=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),ko).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:Mp.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),Fp=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),Jp=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Kp=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Q_=u.object({actor:Jp,context:Kp,payload:u.record(u.string(),u.unknown()).optional()}),q_=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),ek=u.object({adapter:u.string(),botUserName:u.string().optional(),event:Fp,payload:u.record(u.string(),u.unknown()),ts:u.string()}),Wp=[];ik=["hooks","tools","commands","rules","skills","messageBuilders","providers","automationEvents"],nk=new Set(ik);sk=[".js",".ts"],Xp=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),Be=u.record(u.string(),u.string()),uk=u.object({toolName:u.string(),parameters:Be}),lk=u.object({toolName:u.string(),parameters:Be,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),dk=u.object({prompt:u.string(),attachments:u.array(u.string())}),ck=u.object({taskMetadata:Be}),mk=u.object({taskMetadata:Be,previousState:Be}),fk=u.object({taskMetadata:Be}),pk=u.object({taskMetadata:Be}),vk=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),Yp=u.object({clineVersion:u.string(),hookName:Xp,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:uk.optional(),postToolUse:lk.optional(),userPromptSubmit:dk.optional(),taskStart:ck.optional(),taskResume:mk.optional(),taskCancel:fk.optional(),taskComplete:pk.optional(),preCompact:vk.optional()}).passthrough();Qp=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],$k=new Set(Qp);jt={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};Ck={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};Lk={debug:()=>{},log:()=>{},error:()=>{}};Le=class Le extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};qs=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,eu=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;Jk=/^[[{\w-]$/;Xk={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},Yk={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
163
|
-
`,r:"\r",t:"\t"};qk=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;tw=[(e)=>JSON.parse(e),(e)=>JSON.parse(Vk(e)),ew];kw=_o.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth","popular"]),ww=_o.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),Sw=_o.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);hr={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};aS=["idle","running","pending","completed","failed","cancelled"],Uo=["rules","skills","workflows","plugins"],gv=Uo,oS=new Set(Uo);yv=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),bv=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),yv)});$v=["current_state","boundary_analysis","interface_proposal"],ve=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),ot=u.enum(["pending","in_progress","blocked","completed"]),_v=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),Tn=u.enum(["draft","in_review","finalized"]),pS=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),vS=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});gS=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),hS=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:R(u.string().min(1)).describe("Optional shutdown reason")}),yS=u.object({}),bS={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},$S={create:["status","taskId","summary","reason"]},_S=u.object({action:u.enum(["create","list","claim","complete","block"]),title:R(u.string().min(1)).describe("Task title"),description:R(u.string().min(1)).describe("Task details"),dependsOn:R(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:R(u.string().min(1)).describe("Optional assignee"),status:R(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:R(u.string()).describe("Task ID"),summary:R(u.string().min(1)).describe("Completion summary"),reason:R(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of bS[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),kS=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:R(u.string()).describe("Optional shared task list ID"),runMode:R(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:R(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),wS=u.object({status:R(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:R(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:R(u.boolean()).describe("Include completed/failed runs (default true)")}),SS=u.object({runId:u.string().min(1).describe("Run ID"),reason:R(u.string().min(1)).describe("Optional cancellation reason")}),IS=u.object({runId:R(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),xS=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:R(u.string().min(1)).describe("Optional task ID context")}),zS=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:R(u.string().min(1)).describe("Optional task ID context")}),US=u.object({unreadOnly:R(u.boolean()).describe("Only unread messages for read action (default true)")}),OS=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:R(u.string().min(1)).describe("Optional task ID context"),evidence:R(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:R(u.string().min(1)).describe("Planned next step")}),ES=u.object({}),TS=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default($v).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),jS=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:R(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),PS=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),NS=u.object({outcomeId:u.string().describe("Outcome ID")}),DS=u.object({}),AS=u.object({teamId:u.string(),teamName:u.string(),members:u.array(pS),taskCounts:u.record(ot,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(Tn,u.number())}),kv=u.object({id:u.string(),title:u.string(),description:u.string(),status:ot,createdAt:ve,updatedAt:ve,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),ZS=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:ot,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(kv)}),u.object({action:u.literal("claim"),taskId:u.string(),status:ot,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:ot}),u.object({action:u.literal("block"),taskId:u.string(),status:ot})]),CS=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),wv=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),RS=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:_v,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:ve.optional(),continueConversation:u.boolean().optional(),startedAt:ve,endedAt:ve.optional(),leaseOwner:u.string().optional(),heartbeatAt:ve.optional(),lastProgressAt:ve.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:wv.optional()}),LS=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:ve,readAt:ve.optional()}),MS=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:Tn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:ve,finalizedAt:ve.optional()}),FS=u.object({outcomeId:u.string(),status:Tn,requiredSections:u.array(u.string())}),JS=u.object({agentId:u.string(),status:u.string()}),KS=u.object({runId:u.string(),status:_v}),WS=u.object({id:u.string(),toAgentId:u.string()}),HS=u.object({delivered:u.number()}),BS=u.object({id:u.string()}),GS=u.object({status:u.string()}),XS=u.object({fragmentId:u.string(),status:u.string()}),YS=u.object({outcomeId:u.string(),status:Tn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(Sv||={});Iv=["cline","oca","openai-codex"];zv=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];oI=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accesstoken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userinfo"]),sI=["id","balance","cost","secret"];lI=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];cI=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function Ye(e){let t=(r)=>{if(!r)return;if(typeof r==="string")try{return t(JSON.parse(r))}catch{return r.trim()||void 0}if(typeof r!=="object")return;let i=r;if(typeof i.error==="string"&&i.error.trim())return i.error;if(i.error&&typeof i.error==="object"&&typeof i.error.message==="string"&&i.error.message.trim())return i.error.message;if(typeof i.detail==="string"&&i.detail.trim())return i.detail;if(Array.isArray(i.errors))for(let a of i.errors){let o=t(a);if(o)return o}if("responseBody"in i&&i.responseBody!==r){let a=t(i.responseBody);if(a)return a}if("cause"in i&&i.cause!==r){let a=t(i.cause);if(a)return a}if(typeof i.message==="string"&&i.message.trim())return i.message;return},n=t(e);if(n)return n;return String(e)}function F(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function ge(e){let t=e?.trim().toLowerCase();return t?t:void 0}function Eo(e){return ge(F(e))??""}function jn(e){return ge(e.modelId)??""}function Pn(e){return[e.request.modelId,e.context.model.id,e.context.model.name,e.context.model.metadata?.family].filter(Boolean).join(" ").toLowerCase()}function Av(e){let t=ge(e);return t?t.includes("anthropic")||t.includes("claude"):!1}function wI(e){return ge(e)?.includes("claude")??!1}function Oo(e){let t=ge(e);return t?/(^|[/:._-])qwen(?:$|[/:._-]|\d)/.test(t):!1}function q(e){let t=ge(e.family);if(t)return Av(t);return SI(e.modelId)}function SI(e){if(!e)return!1;return Av(e)}function Zv(e){if(!e)return!1;return wI(e)}function yt(e){let t=ge(e.family);if(Oo(t))return!0;return Oo(e.modelId)}function To(e){return/(^|[/\s])gemini-3([.-]|$)/.test(Pn(e))}function Cv(e){return/(^|[/\s])gemini-2\.5-pro([-\s]|$)/.test(Pn(e))}function Rv(e){let t=Pn(e);return/(^|[/\s])gemini-(?:\d(?:\.\d)?-)?flash(?:-lite|-image)?([-\s]|$)/.test(t)||t.includes("gemini-flash")}function Lv(e){let t=Pn(e);return To(e)||/(^|[/\s])gemini-2\.5([-\s]|$)/.test(t)||t.includes("gemini-flash-latest")}function II(e,t){let n=ge(e),r=ge(t);if(!n||!r)return!1;if(n===r)return!0;return r==="qwen"?Oo(n):!1}function Nn(e,t){if("requiredCapability"in e&&e.requiredCapability&&!t.capabilities?.includes(e.requiredCapability))return!1;switch(e.matcher){case"anthropic-compatible":return q(t);case"model-family":return II(t.family,e.family);case"model-id":return ge(t.modelId)===ge(e.modelId)}}function jo(e,t,n){let r=n.provider.metadata?.routing?.reasoning;if(r?.format!==e)return!1;return r.routes.some((i)=>Nn(i,{modelId:t.modelId,family:F(n),capabilities:n.model.capabilities}))}function Dn(e,t){return Eo(t).includes("glm")||jn(e).includes("glm")}function Mv(e,t){let n=jn(e);return n==="minimax-m3"||n==="minimax/minimax-m3"}function Fv(e){return Eo(e)==="kimi-k2.6"}function Jv(e){return jn(e).includes("moonshotai/kimi-")}function Kv(e){return Eo(e).includes("deepseek")}function xI(e){let t=e.model.metadata?.reasoningDefaultOn;return typeof t==="boolean"?t:void 0}function zI(e){return e.providerId==="ollama"&&jn(e).includes("qwen3")}function Wv(e){return xI(e.context)??zI(e.request)}function An(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function De(){return{cache_control:{type:"ephemeral"}}}function Ae(e){let{providerId:t,providerOptionsKey:n,bucketOptions:r}=e,i=n!==t&&n!=="anthropic";return{[t]:r,...i?{[n]:r}:{}}}function Zn(e){let t={thinking:{type:e.thinkingType}};return{...Ae({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function No(e){let t=e?.promptCacheRoutes??[Po],n=e?.reasoningRoutes??[Po];return{routing:{...t.length>0?{promptCache:{format:"anthropic-cache-control",routes:t.map((r)=>({...r}))}}:{},...n.length>0?{reasoning:{format:"anthropic-thinking",routes:n.map((r)=>({...r}))}}:{}}}}function Hv(e,t){let n={openaiCompatible:De(),[e]:De()},r=An(e);if(r!==e)n[r]=De();if(t)n.anthropic=De();return n}function Gv(e,t,n){if(!e)return;let r=e.content;if(typeof r==="string"){let a=[{type:"text",text:r,providerOptions:Hv(t,n)}];if(!n)a.push({type:"text",text:" "});e.content=a;return}if(!Array.isArray(r))return;let i=r.filter((a)=>a&&typeof a==="object"&&a.type==="text").length;for(let a=r.length-1;a>=0;a--){let o=r[a];if(o&&typeof o==="object"&&o.type==="text"){let s=i===1&&!n;if(r[a]={...o,providerOptions:Hv(t,n)},s)r.push({type:"text",text:" "});return}}}function $t(e,t){return Yv(e,t)!==void 0}function EI(e,t){return Yv(e,t)?.matcher==="anthropic-compatible"}function Xv(e){return e.metadata?.promptCacheStrategy==="anthropic-automatic"?"anthropic-automatic":void 0}function TI(e,t){if(Xv(t.provider)!=="anthropic-automatic")return;let n=F(t);if(q({modelId:e.modelId,family:n}))return{matcher:"anthropic-compatible"};if(yt({modelId:e.modelId,family:n}))return n?{matcher:"model-family",family:n}:{matcher:"model-id",modelId:e.modelId};return}function jI(e,t){if(Xv(t.provider)!=="anthropic-automatic")return;let n=F(t);return q({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function PI(e,t){if(t.provider.metadata?.routing)return;let n=F(t);return q({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function Yv(e,t){let n=t.provider.metadata?.routing?.promptCache;if(n){if(n.format!=="anthropic-cache-control")return;return n.routes.find((r)=>Nn(r,{modelId:e.modelId,family:F(t),capabilities:t.model.capabilities}))}return TI(e,t)}function mi(e,t){let n=t.provider.metadata?.routing?.reasoning;if(!n)return jI(e,t)??PI(e,t);if(n.format!=="anthropic-thinking")return;return n.routes.find((r)=>Nn(r,{modelId:e.modelId,family:F(t),capabilities:t.model.capabilities}))}function NI(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function DI(e,t){let n=t?.toLowerCase()??"",r=e?.toLowerCase()??"";if(n.includes("opus")||r.includes("opus"))return"opus";if(n.includes("sonnet")||r.includes("sonnet"))return"sonnet";if(n.includes("haiku")||r.includes("haiku"))return"haiku";return}function AI(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],a=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!a||!o)return;let s=Number.parseInt(a,10),d=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(d))return;return{major:s,minor:d}}function ZI(e){let t=DI(e.modelId,e.family),n=AI(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function Ze(e,t){let n=F(t);if(!mi(e,t)||!NI(t))return{kind:"none"};return ZI({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function Vv(e,t){let n=Ze(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:Ao({modelId:e.modelId,family:F(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...EI(e,t)?De():{}}}function Ao(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!q({modelId:e.modelId,family:e.family}))return;if(!e.effort)return bt;if(typeof e.maxTokens!=="number")return bt;if(e.maxTokens<=bt)return bt;let t=OI[e.effort];if(!t)return bt;let n=Math.min(e.maxTokens-1,UI);return Math.max(bt,Math.floor(n*t))}function Qv(e,t){let n=Ze(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let r=Ao({modelId:e.modelId,family:F(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof r==="number"&&r>=0)i.max_tokens=r;return Object.keys(i).length>0?i:void 0}function qv(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=Ze(e,t),r=mi(e,t),i=F(t),a=n.kind==="none"&&r!==void 0,o=n.kind==="none"&&r===void 0&&($t(e,t)||yt({modelId:e.modelId,family:i})||q({modelId:e.modelId,family:i}));if(a||o)return;let s=n.kind==="anthropic-manual"?Ao({modelId:e.modelId,family:i,effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,d={...e.reasoning?.enabled===!0?{enabled:!0}:e.reasoning?.enabled===!1?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof s==="number"&&s>=0)d.max_tokens=s;return Object.keys(d).length>0?d:void 0}var bt=1024,UI=128000,OI,Po,Bv,Ve,Do,Cn;var _t=J(()=>{OI={low:0.2,medium:0.5,high:0.8},Po={matcher:"anthropic-compatible"},Bv={matcher:"model-family",family:"qwen",requiredCapability:"prompt-cache"};Ve=No(),Do=No({promptCacheRoutes:[Bv],reasoningRoutes:[]}),Cn=No({promptCacheRoutes:[Po,Bv]})});function Zo(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function CI(e){let{request:t,context:n,suppressions:r}=e;if(r.genericThinking)return{};if(t.reasoning?.enabled!==!0)return{};let i=F(n),a=Ze(t,n),o=mi(t,n)!==void 0,s=$t(t,n),d=q({modelId:t.modelId,family:i}),l=yt({modelId:t.modelId,family:i});if(!o&&(s||l||d))return{};if(o&&a.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function RI(e){let t=e.reasoning?.effort;if(e.suppressions.genericEffort||!t||e.reasoning?.enabled===!1||e.suppressEffortOptions)return{};if(!(!e.usesAnthropicReasoningRoute||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.usesAnthropicReasoningRoute?{}:{reasoningSummary:"auto"}}}function eg(e){let{request:t,context:n,target:r,suppressions:i}=e,a=F(n),o=Ze(t,n),s=mi(t,n)!==void 0,d=$t(t,n),l=q({modelId:t.modelId,family:a}),c=yt({modelId:t.modelId,family:a}),f=!s&&(d||c||l),v=Qv(t,n),p=d?De():{};return{...r==="openai-compatible"?{strictJsonSchema:!1}:{},...CI({request:t,context:n,suppressions:i}),...RI({reasoning:t.reasoning,usesAnthropicReasoningRoute:s,suppressEffortOptions:f,suppressions:i,anthropicReasoningPolicyKind:o.kind}),...v?{reasoning:v}:{},...p,...Zo(t)}}var Co=J(()=>{_t()});function LI(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function MI(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function tg(e,t){let n=LI(e);return n?{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}:void 0}function ig(e,t,n,r){if(!Dn(e,t))return;let i=MI(e);if(!i)return;return{openaiCompatible:i,...r?.includeProviderBuckets===!1?{}:{[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}}}var Ro;var Lo=J(()=>{Ro={routing:{reasoning:{format:"glm-thinking",routes:[{matcher:"model-family",family:"glm"},{matcher:"model-family",family:"glm-air"},{matcher:"model-family",family:"glm-flash"}]}}}});function FI(e){if(e.reasoning?.enabled===!0)return{thinking:{type:"adaptive"}};if(e.reasoning?.enabled===!1)return{thinking:{type:"disabled"}};return}function JI(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function rg(e,t){let n=FI(e);if(!n)return;return{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}}function ag(e,t){let n=JI(e);return n?Ae({providerId:e.providerId,providerOptionsKey:t,bucketOptions:n}):void 0}var ng;var Mo=J(()=>{ng={routing:{promptCache:{format:"anthropic-cache-control",routes:[{matcher:"anthropic-compatible"}]},reasoning:{format:"minimax-thinking",routes:[{matcher:"model-id",modelId:"MiniMax-M3",requiredCapability:"reasoning"}]}}}});function KI(e){return e?.enabled!==void 0||!!e?.effort||typeof e?.budgetTokens==="number"}function og(e){let t=e.reasoning;if(!KI(t))return;if(t?.enabled===!1)return{exclude:!0};if(typeof t?.budgetTokens==="number")return{max_tokens:t.budgetTokens};if(t?.effort)return{effort:t.effort};if(t?.enabled===!0)return{enabled:!0};return}function sg(e){return Fv(e.context)}function WI(e){return Jv(e.request)}function HI(e){return Kv(e.context)||e.request.providerId==="deepseek"}function ug(e){return Mv(e.request,e.context)}function lg(e){return e.request.providerId==="ollama"&&e.request.reasoning?.enabled===!1&&Wv({request:e.request,context:e.context})}function Fo(e){return jo("glm-thinking",e.request,e.context)}function BI(e){return e.context.provider.metadata?.routing?.reasoning?.format==="glm-thinking"}function GI(e){return jo("minimax-thinking",e.request,e.context)}function dg(e,t){let n=e.request.reasoning?.enabled;if(n===!0)return"enabled";if(n===!1)return"disabled";return t}function cg(e,t){if(!t)return;return Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:{reasoning:t}})}function YI(e){let t=e.request.reasoning;if(!t)return;if(To(e)){if(t.enabled===!1)return{thinkingLevel:Rv(e)?"minimal":"low",includeThoughts:!1};if(!t.effort)return;return{thinkingLevel:t.effort,includeThoughts:!0}}if(t.enabled===!1)return{thinkingBudget:Cv(e)?128:0,includeThoughts:!1};if(typeof t.budgetTokens==="number")return{thinkingBudget:t.budgetTokens,includeThoughts:!0};if(!t.effort)return;return{thinkingBudget:XI[t.effort],includeThoughts:!0}}function fg(e,t){let n=[];for(let r of e)if(r.applies(t))n.push({rule:r});return n}function pg(e){return e.reduce((t,{rule:n})=>{if(!n.suppresses)return t;return{genericThinking:t.genericThinking||n.suppresses.genericThinking||void 0,genericEffort:t.genericEffort||n.suppresses.genericEffort||void 0,genericFanout:t.genericFanout||n.suppresses.genericFanout||void 0}},{})}function vg(e,t){return e.map(({rule:n})=>n.build(t))}var XI,VI,QI,qI,ex,tx,ix,nx,rx,ax,ox,sx,ux,lx,dx,cx,mx,fx,px,mg;var gg=J(()=>{_t();Co();Lo();Mo();XI={low:1024,medium:8192,high:24576};VI={id:"provider.anthropic.direct",phase:"provider",description:"Direct Anthropic owns the anthropic bucket built by the base patch.",applies:(e)=>e.request.providerId==="anthropic",suppresses:{genericFanout:!0},build:()=>{return}},QI={id:"provider.google.direct",phase:"provider",description:"Direct Google owns the google bucket through Gemini thinkingConfig.",applies:(e)=>e.request.providerId==="google",suppresses:{genericFanout:!0},build:()=>{return}},qI={id:"adapter.openai",phase:"adapter",description:"OpenAI adapter targets the AI SDK openai bucket, not provider-id buckets.",applies:(e)=>e.target==="openai",build:(e)=>({openai:{strictJsonSchema:!1,...Zo(e.request)}})},ex={id:"provider.openai-codex",phase:"provider",description:"Codex CLI uses OpenAI Responses options plus provider-id aliases.",applies:(e)=>e.request.providerId==="openai-codex",suppresses:{genericFanout:!0},build:(e)=>{let t={...e.compatibleOptions,instructions:e.request.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:t,...Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t})}}},tx={id:"provider.generic-fanout",phase:"provider-fanout",description:"Default OpenAI-compatible providers receive provider-id and camelCase alias buckets.",applies:(e)=>e.target!=="openai",build:(e)=>e.suppressions.genericFanout?void 0:Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:e.compatibleOptions})},ix={id:"provider.cline.reasoning",phase:"provider-reasoning",description:"Cline gateway accepts the shared gateway reasoning shape.",applies:(e)=>e.request.providerId==="cline",build:(e)=>cg(e,qv(e.request,e.context))},nx={id:"provider.openrouter.reasoning",phase:"provider-reasoning",description:"OpenRouter expects reasoning controls under its first-class reasoning object.",applies:(e)=>e.request.providerId==="openrouter",suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>cg(e,og(e.request))},rx={id:"provider.cline.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Cline-routed MiniMax M3 keeps the gateway reasoning shape instead of leaking generic thinking.",applies:(e)=>e.request.providerId==="cline"&&ug(e),suppresses:{genericThinking:!0,genericEffort:!0},build:()=>{return}},ax={id:"provider.vercel-ai-gateway.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Vercel-routed MiniMax M3 uses the gateway reasoning include/exclude shape.",applies:(e)=>e.request.providerId==="vercel-ai-gateway"&&ug(e),suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>ag(e.request,e.providerOptionsKey)},ox={id:"provider.google-gemini.thinking-config",phase:"provider",description:"Google/Gemini/Vertex maps reasoning to thinkingConfig.",suppresses:{genericThinking:!0,genericEffort:!0},applies:(e)=>(e.request.providerId==="google"||e.request.providerId==="gemini"||e.request.providerId==="vertex")&&Lv(e)&&(!!e.request.reasoning?.effort||typeof e.request.reasoning?.budgetTokens==="number"||e.request.reasoning?.enabled===!1),build:(e)=>{let t=e.request.providerId==="vertex"?"vertex":"google",n=YI(e);if(!n)return;return{[t]:{thinkingConfig:n}}}},sx={id:"provider.cline.disable-thinking",phase:"provider",description:"Cline-routed non-Kimi-K2.6 Moonshot Kimi models use thinking.type=disabled when reasoning is disabled.",applies:(e)=>e.request.providerId==="cline"&&WI(e)&&e.request.reasoning?.enabled===!1&&!sg(e),build:(e)=>Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:"disabled"})},ux={id:"family.kimi-k2.6.thinking",phase:"model-family",description:"Kimi K2.6 uses thinking.type and defaults to enabled when reasoning is unset.",applies:(e)=>sg(e)&&e.request.providerId!=="openrouter",suppresses:{genericThinking:!0},build:(e)=>{let t=dg(e,"enabled");return t?Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},lx={id:"family.deepseek.thinking",phase:"model-family",description:"DeepSeek models use thinking.type only for explicit reasoning enabled/disabled.",applies:(e)=>e.request.providerId!=="openrouter"&&HI(e)&&!lg(e),suppresses:{genericThinking:!0},build:(e)=>{let t=dg(e,void 0);return t?Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},dx={id:"provider.ollama.reasoning-default-on.disable-none",phase:"provider-reasoning",description:"Ollama models whose reasoning defaults on need reasoningEffort=none when request reasoning is disabled.",applies:lg,build:(e)=>{let t={reasoningEffort:"none",reasoning:{effort:"none"}};return{...Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}},cx={id:"provider.routing.glm-thinking.non-glm.suppress-generic-thinking",phase:"provider",description:"Providers with GLM thinking routing should not apply generic adaptive thinking to non-GLM models.",applies:(e)=>BI(e)&&e.request.reasoning?.enabled!==void 0&&!Fo(e),suppresses:{genericThinking:!0},build:()=>{return}},mx={id:"provider.routing.glm-thinking",phase:"model-overlay",description:"Providers routed to the GLM thinking format use thinking.type.",applies:Fo,suppresses:{genericThinking:!0},build:(e)=>tg(e.request,e.providerOptionsKey)},fx={id:"provider.routing.minimax-thinking",phase:"model-overlay",description:"Direct MiniMax M3 uses thinking.type adaptive/disabled.",applies:GI,suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>rg(e.request,e.providerOptionsKey)},px={id:"family.glm.routed-reasoning",phase:"model-overlay",description:"Routed GLM models use the generic reasoning include/exclude shape, not thinking.type.",applies:(e)=>!Fo(e)&&Dn(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>ig(e.request,e.context,e.providerOptionsKey,{includeProviderBuckets:e.request.providerId!=="openrouter"})},mg=[VI,QI,qI,ex,tx,ix,nx,rx,ax,ox,sx,ux,lx,dx,cx,mx,fx,px]});function hg(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";case"sapaicore":return"sapaicore";default:return"openai-compatible"}}function vx(e){let t={};for(let n of e){if(!n)continue;for(let[r,i]of Object.entries(n))t[r]={...t[r]??{},...i}}return t}function gx(e,t){return{anthropic:t,openaiCompatible:e}}function yg(e,t,n=hg(e.providerId)){let r=An(e.providerId),i=F(t),a=q({modelId:e.modelId,family:i}),o=a?Ze(e,t):void 0,s={request:e,context:t,providerOptionsKey:r,target:n,isAnthropicCompatibleModelId:a,anthropicReasoningPolicyKind:o?.kind},d=fg(mg,s),l=pg(d),c=eg({request:e,context:t,target:n,suppressions:l}),f=Vv(e,t),v={...s,compatibleOptions:c,anthropicOptions:f,suppressions:l};return vx([gx(c,f),...vg(d,v)])}var bg=J(()=>{_t();Co();gg()});var Sg={};fe(Sg,{resetLangfuseTelemetryForTests:()=>_x,hasLangfuseTelemetryConfig:()=>kg,ensureLangfuseTelemetry:()=>hx,disposeLangfuseTelemetry:()=>wg,debugLangfuse:()=>he});function _g(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),r=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!r)return;return{baseUrl:t,publicKey:n,secretKey:r}}function kg(){return _g()!==void 0}async function hx(e){if(!kg())return!1;if(Qe!==void 0)return he(`cached readiness=${String(Qe)}`),Qe;if(!Rn)Rn=yx();return Qe=await Rn,he(`initialized readiness=${String(Qe)}`),Qe}async function yx(){let{registerDisposable:e}=await Promise.resolve().then(() => (ci(),Dv));e(wg);let t=_g();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:r},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),a=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});he(`creating span processor baseUrl=${t.baseUrl}`);let o=r.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(a);let c=$g(r);return he(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[a]}).register();let l=$g(r);return he(`registered NodeTracerProvider delegateReady=${String(l)}`),l}catch(n){return he(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function $g(e){let r=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(r&&r!=="NoopTracerProvider")}async function bx(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),he("forceFlush completed")}catch(e){he(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function wg(){try{await bx();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),he("shutdown completed")}catch(e){he(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function he(e){if(!$x())return;console.warn(`[langfuse-debug] ${e}`)}function $x(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function _x(){Qe=void 0,Rn=void 0}var Qe,Rn;function Ig(e){let t=e??globalThis.fetch;if(!t)throw Error("No fetch implementation is available. Pass one in the gateway or provider config.");return t}async function ee(e){let t=e.apiKey?.trim();if(t)return t;let r=(await e.apiKeyResolver?.())?.trim();if(r)return r;for(let i of e.apiKeyEnv??[]){let a=kx(i);if(a)return a}return}function kx(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let r=n.trim();return r.length>0?r:void 0}var xg={};fe(xg,{createOpenAIProviderModule:()=>Sx});import{createOpenAI as wx}from"@ai-sdk/openai";async function Sx(e,t){let n=await ee(e),r=wx({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r.responses(i)}}var zg=()=>{};function Ix(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function xx(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function zx(e){if(e.type!=="content")return null;let t=[],n=[];for(let r of e.value){if(!Ix(r)){n.push(r);continue}let i=xx(r);if(!i){n.push(r);continue}t.push(i);let a={type:"text",text:"(see following user message for image)"};n.push(a)}if(t.length===0)return null;return{stripped:{type:"content",value:n},media:t}}function Ux(e){let t=[],n=!1;for(let r of e){if(r.role!=="tool"){t.push(r);continue}let i=[],a=r.content.map((o)=>{if(o.type!=="tool-result")return o;let s=zx(o.output);if(!s)return o;return i.push(...s.media),{...o,output:s.stripped}});if(t.push({...r,content:a}),i.length>0)t.push({role:"user",content:i}),n=!0}return{prompt:t,mutated:n}}var Ln;var Jo=J(()=>{Ln={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=Ux(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var Ug={};fe(Ug,{createOpenAICompatibleProviderModule:()=>Tx});import{createOpenAICompatible as Ox}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as Ex}from"ai";async function Tx(e,t){let n=await ee(e),r=Ox({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...e.fetch?{fetch:e.fetch}:{},includeUsage:!0});return{model:(i)=>Ex({model:r(i),middleware:Ln})}}var Og=J(()=>{Jo()});function jx(e){let t=e&&typeof e==="object"?e:{},n=t.minimax&&typeof t.minimax==="object"?t.minimax:void 0,r=n?.thinking&&typeof n.thinking==="object"?n.thinking:void 0;return typeof r?.type==="string"?r.type:void 0}async function Px(e){if(typeof e==="string")return JSON.parse(e);if(e instanceof Uint8Array)return JSON.parse(new TextDecoder().decode(e));if(e instanceof ArrayBuffer)return JSON.parse(new TextDecoder().decode(e));return}function Nx(e){return JSON.stringify(e)}function Tg(e=fetch){let t=async(r,i)=>{let a=new Headers(i?.headers);if(a.get("x-cline-minimax-thinking-disabled")!=="1")return e(r,i);a.delete("x-cline-minimax-thinking-disabled");let s=await Px(i?.body),d=s&&typeof s==="object"&&!Array.isArray(s)?s:void 0,l=d&&d.thinking===void 0?Nx({...d,thinking:{type:"disabled"}}):i?.body;return e(r,{...i,headers:a,body:l})},n=e;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e):()=>{},t}var Eg;var jg=J(()=>{Eg={specificationVersion:"v3",transformParams:async({params:e})=>{if(jx(e.providerOptions)!=="disabled")return e;return{...e,headers:{...e.headers,["x-cline-minimax-thinking-disabled"]:"1"}}}}});var Pg={};fe(Pg,{createAnthropicProviderModule:()=>Zx});import{createAnthropic as Dx}from"@ai-sdk/anthropic";import{wrapLanguageModel as Ax}from"ai";async function Zx(e,t){let n=await ee(e),r=t.provider.id==="minimax",i=Dx({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:r?Tg(e.fetch):e.fetch,name:t.provider.id});return{model:(a)=>{let o=i(a);return r?Ax({model:o,middleware:Eg}):o}}}var Ng=J(()=>{jg()});var Dg={};fe(Dg,{createGoogleProviderModule:()=>Rx});import{createGoogleGenerativeAI as Cx}from"@ai-sdk/google";async function Rx(e,t){let n=await ee(e),r=Cx({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r(i)}}var Ag=()=>{};var Zg={};fe(Zg,{createVertexProviderModule:()=>Fx});import{createVertex as Lx}from"@ai-sdk/google-vertex";import{createVertexAnthropic as Mx}from"@ai-sdk/google-vertex/anthropic";async function Fx(e,t){let n=String(e.options?.project??e.options?.projectId??""),r=String(e.options?.location??e.options?.region??"us-central1"),i=typeof e.options?.project==="string"?e.options.project:typeof e.options?.projectId==="string"?e.options.projectId:void 0,a=Ig(e.fetch);if(Zv(t.model.id)){let s=Mx({project:n,location:r,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(d)=>s(d)}}let o=Lx({project:n,location:r,apiKey:i?void 0:await ee(e),googleAuthOptions:i?{projectId:i}:void 0,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(s)=>o(s)}}var Cg=()=>{};var Rg={};fe(Rg,{createBedrockProviderModule:()=>Wx});import{createAmazonBedrock as Jx}from"@ai-sdk/amazon-bedrock";import{fromNodeProviderChain as Ko}from"@aws-sdk/credential-providers";async function Wx(e){let t=Gx(e.options?.authentication),n=t==="api-key"||t==="apikey",r=H(e.options?.accessKeyId)!==void 0&&H(e.options?.secretAccessKey)!==void 0,i=H(e.options?.profile)!==void 0,o=!n&&(t==="iam"||t==="profile"||i)?void 0:await Bx(e,{includeEnvironment:n||!r}),s=Hx(e,{authentication:t,apiKey:o,hasDirectCredentials:r,hasProfile:i}),d=t==="iam"||t==="profile"||r||s!==void 0,l=Jx({region:H(e.options?.region),apiKey:n?o??"":o??(d?"":void 0),accessKeyId:s?void 0:H(e.options?.accessKeyId),secretAccessKey:s?void 0:H(e.options?.secretAccessKey),sessionToken:s?void 0:H(e.options?.sessionToken),baseURL:e.baseUrl??H(e.options?.endpoint),headers:e.headers,fetch:e.fetch,credentialProvider:s});return{model:(c)=>l(c)}}function Hx(e,t){let n=H(e.options?.region);if(typeof e.options?.credentialProvider==="function")return e.options.credentialProvider;if(t.authentication==="api-key"||t.authentication==="apikey"||t.apiKey)return;if(t.authentication==="profile"||t.hasProfile){let r=H(e.options?.profile);return Ko({ignoreCache:!0,...r?{profile:r}:{},...n?{clientConfig:{region:n}}:{}})}if(t.hasDirectCredentials)return;return n?Ko({clientConfig:{region:n}}):Ko()}async function Bx(e,t){let n=H(e.apiKey)??H(e.options?.apiKey)??H(e.options?.bedrockApiKey)??H(e.options?.awsBedrockApiKey);if(n)return n;let r=H(await e.apiKeyResolver?.());if(r)return r;if(!t.includeEnvironment)return;for(let i of e.apiKeyEnv??[]){if(Kx.has(i))continue;let a=H(process.env[i]);if(a)return a}return H(process.env.AWS_BEARER_TOKEN_BEDROCK)}function Gx(e){return e==="iam"||e==="api-key"||e==="apikey"||e==="profile"?e:void 0}function H(e){if(typeof e!=="string")return;let t=e.trim();return t.length>0?t:void 0}var Kx;var Lg=J(()=>{Kx=new Set(["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE"])});var Mg={};fe(Mg,{createMistralProviderModule:()=>Vx});import{createMistral as Xx}from"@ai-sdk/mistral";import{wrapLanguageModel as Yx}from"ai";async function Vx(e){let t=Xx({apiKey:await ee(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>Yx({model:t(n),middleware:Ln})}}var Fg=J(()=>{Jo()});var kt={};fe(kt,{createSapAiCoreProviderModule:()=>m0,createOpenCodeProviderModule:()=>a0,createOpenAICodexProviderModule:()=>n0,createDifyProviderModule:()=>o0,createClaudeCodeProviderModule:()=>i0});import{createClaudeCode as Qx}from"ai-sdk-provider-claude-code";import{createCodexExec as qx}from"ai-sdk-provider-codex-cli";import{createDifyProvider as e0}from"dify-ai-provider";function fi(e){return e.options??{}}async function i0(e){let t=Qx(fi(e));return{model:(n)=>t(n)}}async function n0(e){let t=qx(fi(e));return{model:(n)=>t(n)}}async function r0(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),r=await e();for(let i of t)for(let a of process.listeners(i))if(!n.get(i)?.has(a))process.removeListener(i,a);return r}async function a0(e){let t=await r0(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(fi(e))});return{model:(n)=>t(n)}}async function o0(e){let t=await ee(e),n=e0({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...fi(e)});return{model:(r)=>n(r,{apiKey:t})}}function Ce(e,t){let n=e[t];return typeof n==="string"&&n.trim().length>0?n.trim():void 0}function s0(e){let t=e.replace(/\/+$/,"");return/\/oauth\/token$/i.test(t)?t:`${t}/oauth/token`}function u0(e,t){return Boolean(e.apiKey?.trim()||e.baseUrl?.trim()||Ce(t,"clientId")||Ce(t,"clientSecret")||Ce(t,"tokenUrl"))}function l0(e,t){let n=Ce(t,"clientId"),r=Ce(t,"clientSecret")??e.apiKey?.trim(),i=Ce(t,"tokenUrl"),a=e.baseUrl?.trim();if(!n||!r||!i||!a){if(!u0(e,t))return;let o=[!n?"sap.clientId":void 0,!r?"sap.clientSecret":void 0,!i?"sap.tokenUrl":void 0,!a?"baseUrl":void 0].filter(Boolean);throw Error(`SAP AI Core provider is missing required configuration: ${o.join(", ")}.`)}return{authentication:"OAuth2ClientCredentials",clientId:n,clientSecret:r,name:e.providerId,tokenServiceUrl:s0(i),url:a.replace(/\/+$/,"")}}function d0(e){let t=e.api;if(t==="orchestration"||t==="foundation-models")return t;if(e.useOrchestrationMode===!1)return"foundation-models";return"orchestration"}async function c0(){return import(t0)}async function m0(e){let t=fi(e),n=l0(e,t),{createSAPAIProvider:r}=await c0(),i=Ce(t,"deploymentId"),a=r({name:e.providerId,...i?{deploymentId:i}:{resourceGroup:Ce(t,"resourceGroup")},api:d0(t),...n?{destination:n}:{},...typeof t.defaultSettings==="object"&&t.defaultSettings!==null&&!Array.isArray(t.defaultSettings)?{defaultSettings:t.defaultSettings}:{}});return{model:(o)=>a(o)}}var t0="@jerome-benoit/sap-ai-provider";var wt=()=>{};var oe={};fe(oe,{normalizeUsage:()=>Xg,createVertexProvider:()=>Wn,createSapAiCoreProvider:()=>Vo,createOpenCodeProvider:()=>Xo,createOpenAIProvider:()=>Mn,createOpenAICompatibleProvider:()=>Fn,createOpenAICodexProvider:()=>Go,createMistralProvider:()=>Ho,createGoogleProvider:()=>Kn,createDifyProvider:()=>Yo,createClaudeCodeProvider:()=>Bo,createBedrockProvider:()=>Hn,createAnthropicProvider:()=>Jn});import{jsonSchema as f0,streamText as p0}from"ai";import{nanoid as Jg}from"nanoid";import{z as v0}from"zod";function g0(e,t,n){let r=Wg(e.messages,n),i=q({modelId:e.modelId,family:F(t)});for(let a=r.length-1;a>=0;a--)if(r[a]?.role==="user"){Gv(r[a],e.providerId,i);break}return r}async function h0(e){try{return(await Promise.resolve().then(() => Sg)).ensureLangfuseTelemetry(e)}catch{return!1}}function Wg(e,t){let n=[];for(let r of e){let i=[];for(let a of r.content){if(a.type==="text"){i.push({type:"text",text:Q(a.text)});continue}if(a.type==="reasoning"){let o=a.metadata,s=o?.signature,d=o?.redactedData;i.push({type:"reasoning",text:Q(a.text),...typeof s==="string"||typeof d==="string"?{providerOptions:{anthropic:{...typeof s==="string"?{signature:s}:{},...typeof d==="string"?{redactedData:d}:{}}}}:{}});continue}if(a.type==="file"){i.push({type:"file",path:a.path,content:a.content});continue}if(a.type==="image"){i.push({type:"image",image:a.image,mediaType:a.mediaType});continue}if(a.type==="tool-call"){let o=a.metadata,s=o?.thoughtSignature??o?.signature??o?.thought_signature;i.push({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...typeof s==="string"?{providerOptions:{google:{thoughtSignature:s}}}:{}});continue}if(a.type==="tool-result")i.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:a.output,isError:a.isError??!1})}if(i.length>0)n.push({role:r.role,content:i});else if(r.role==="user"||r.role==="assistant")n.push({role:r.role,content:""})}return So(t,n,{assistantToolCallArgKey:"input"})}function y0(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:f0(b0(t.inputSchema),{validate:async(n)=>{let r=await v0.fromJSONSchema(t.inputSchema).safeParseAsync(n);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}]))}function b0(e){if(e.type==="object")return e;return{type:"object",...e}}function Hg(e){return e.provider.capabilities?.includes("provider-tools")??!1}function Bg(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function Gg(e){return Bg(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:Hg(e.context)?"provider":"runtime"}})}function $0(e){return Gg({metadata:Bg(Wo(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function _0(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function k0(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function _e(e,...t){for(let n of t){let r=e[n];if(typeof r==="number"&&Number.isFinite(r))return r;if(typeof r==="string"&&r.trim().length>0&&Number.isFinite(Number(r)))return Number(r)}return 0}function ce(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function ke(e,...t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return ce(n)??0}function w0(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let r=n;if(r.usage&&typeof r.usage==="object")return r.usage}return}function S0(e,t){if(!t||typeof t!=="object")return;let n=t,r=ce(n.input),i=ce(n.output);if(r===void 0||i===void 0)return;let a=ce(n.cacheRead)??0,o=ce(n.cacheWrite)??r*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*r+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*a+e.cacheWriteTokens/1e6*o}function Xg(e,t,n){let r=e&&typeof e==="object"?e:{},i=w0(t),a=t&&typeof t==="object"?t:{},o=a.gateway&&typeof a.gateway==="object"?a.gateway:{},s=r.raw&&typeof r.raw==="object"?r.raw:r,d=ce(s.cost_details?.upstream_inference_cost)??ce(s.upstream_inference_cost),l=ce(s.market_cost)??ce(s.marketCost)??ce(o.marketCost),c=ce(s.cost)??ce(o.cost),f=l!==void 0||c!==void 0||d!==void 0,p=(s.is_byok===!0||s.isByok===!0||o.is_byok===!0||o.isByok===!0)&&c!==void 0&&d!==void 0,y=c!==void 0&&c>0?c:d??c,I=l??(p?c+d:y),j={inputTokens:ke(r,"inputTokens","total")||_e(r,"inputTokens","input_tokens","prompt_tokens")||_e(s,"promptTokenCount","prompt_token_count"),outputTokens:ke(r,"outputTokens","total")||_e(r,"outputTokens","output_tokens","completion_tokens")||_e(s,"candidatesTokenCount","candidates_token_count"),cacheReadTokens:ke(r,"inputTokens","cacheRead")||ke(r,"inputTokenDetails","cacheReadTokens")||_e(r,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||ke(r,"prompt_tokens_details","cached_tokens")||ke(s,"prompt_tokens_details","cached_tokens")||_e(s,"cachedContentTokenCount")||_e(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:ke(r,"inputTokens","cacheWrite")||ke(r,"inputTokenDetails","cacheWriteTokens")||ke(r,"prompt_tokens_details","cache_write_tokens")||_e(r,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||ke(s,"prompt_tokens_details","cache_write_tokens")||_e(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||_e(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},U=I!==void 0?I:f?void 0:S0(j,n);return{...j,...typeof U==="number"?{totalCost:U}:{}}}function Kg(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},r=e;for(let i of Object.keys(e))try{n(r[i])}catch{}}function Wo(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,r=n?.google&&typeof n.google==="object"?n.google:void 0,i=n?.vertex&&typeof n.vertex==="object"?n.vertex:void 0;if(typeof t.thoughtSignature!=="string"&&typeof(r?.thoughtSignature??i?.thoughtSignature)==="string")t.thoughtSignature=r?.thoughtSignature??i?.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof r?.thought_signature==="string")t.thought_signature=r.thought_signature;return Object.keys(t).length>0?t:void 0}async function*I0(e,t,n,r,i){let a=!1,o=new Set,s,d,l,c;try{if(e.fullStream)for await(let p of e.fullStream){if(p.type==="text-delta"){let y=p.textDelta??p.text??p.delta;if(y)yield{type:"text-delta",text:y};continue}if(p.type==="reasoning-delta"||p.type==="reasoning"){let y=p.textDelta??p.text??p.reasoning;if(y)yield{type:"reasoning-delta",text:y,metadata:Wo(p)};continue}if(p.type==="tool-call"){a=!0;let y=p.toolCallId??p.id??`tool_${Jg()}`;o.add(y);let I=p.input??p.args??{},j=typeof I==="string"?I:JSON.stringify(I);yield{type:"tool-call-delta",toolCallId:y,toolName:p.toolName??p.name??"tool",input:typeof I==="string"?void 0:I,inputText:j,metadata:Gg({metadata:Wo(p),request:t,context:n})};continue}if(p.type==="tool-error"){a=!0;let y=p.toolCallId??p.id??`tool_${Jg()}`,I=o.has(y);o.add(y);let j=p.toolName??p.name??"tool",U=p.input??p.args??{},C=typeof U==="string"?U:JSON.stringify(U),w=p.error===void 0?"Tool input was rejected by the model adapter":Ye(p.error);yield{type:"tool-call-delta",toolCallId:y,toolName:j,input:I?void 0:typeof U==="string"?void 0:U,inputText:I?void 0:C,metadata:$0({part:p,errorMessage:w,request:t,context:n,toolName:j})};continue}if(p.type==="finish")l=p.usage??p.totalUsage,c=p.providerMetadata,s=p.finishReason??p.rawFinishReason??p.reason;if(p.type==="error"){d=i?.current??Ye(p.error);break}if(p.type==="abort")break}else if(e.textStream)for await(let p of e.textStream)yield{type:"text-delta",text:p}}catch(p){d=i?.current??Ye(p)}let f,v;if(d)f=l,v=c;else if(e.usage)try{f=await e.usage}catch(p){if(!d)d=i?.current??Ye(p);f=l,v=c}else f=l,v=c;if(f)yield{type:"usage",usage:Xg(f,v,r)};yield{type:"finish",reason:d?"error":k0(s,a),error:d}}async function x0(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:r}=await Promise.resolve().then(() => (zg(),xg));return r(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:r}=await Promise.resolve().then(() => (Og(),Ug));return r(t,n)}case"anthropic":{let{createAnthropicProviderModule:r}=await Promise.resolve().then(() => (Ng(),Pg));return r(t,n)}case"google":{let{createGoogleProviderModule:r}=await Promise.resolve().then(() => (Ag(),Dg));return r(t,n)}case"vertex":{let{createVertexProviderModule:r}=await Promise.resolve().then(() => (Cg(),Zg));return r(t,n)}case"bedrock":{let{createBedrockProviderModule:r}=await Promise.resolve().then(() => (Lg(),Rg));return r(t)}case"mistral":{let{createMistralProviderModule:r}=await Promise.resolve().then(() => (Fg(),Mg));return r(t)}case"claude-code":{let{createClaudeCodeProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"openai-codex":{let{createOpenAICodexProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"opencode":{let{createOpenCodeProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"dify":{let{createDifyProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"sapaicore":{let{createSapAiCoreProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}}}function me(e){return async(t)=>({async*stream(n,r){let i=r.logger,a,o={current:void 0};try{let s=await x0(e,t,r),d=await h0(t.providerId),l=Hg(r)?void 0:y0(n),c=_0(n),f=typeof c==="string"&&c.trim().length>0,v=f?void 0:c;a=p0({model:s.model(r.model.id),messages:$t(n,r)?g0(n,r,v):Wg(n.messages,v),...f?{system:c}:{},tools:l,temperature:n.temperature,...n.maxTokens!==void 0?{maxOutputTokens:n.maxTokens}:{},abortSignal:n.signal,experimental_telemetry:{isEnabled:d},providerOptions:yg(n,r,e),onError:({error:p})=>{let y=Ye(p);if(o.current=y,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:p,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${y}`,{providerId:n.providerId,severity:"error"});En(r.telemetry,{component:"llms",operation:"provider.stream",error:p,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}})}}),Kg(a),yield*I0(a,n,r,r.model.metadata?.pricing,o)}catch(s){Kg(a);let d=o.current??Ye(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${d}`,{providerId:n.providerId,severity:"error"});En(r.telemetry,{component:"llms",operation:"provider.create_or_stream",error:s,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}}),yield{type:"finish",reason:"error",error:d}}}})}var Mn,Fn,Jn,Kn,Wn,Hn,Ho,Bo,Go,Xo,Yo,Vo;var te=J(()=>{ci();_t();bg();Mn=me("openai"),Fn=me("openai-compatible"),Jn=me("anthropic"),Kn=me("google"),Wn=me("vertex"),Hn=me("bedrock"),Ho=me("mistral"),Bo=me("claude-code"),Go=me("openai-codex"),Xo=me("opencode"),Yo=me("dify"),Vo=me("sapaicore")});var zt;((S)=>{S.ANTHROPIC="anthropic";S.CLAUDE_CODE="claude-code";S.CLINE="cline";S.OPENAI_COMPATIBLE="openai-compatible";S.OPENAI_NATIVE="openai-native";S.OPENAI_CODEX="openai-codex";S.OPENAI_CODEX_CLI="openai-codex-cli";S.OPENCODE="opencode";S.BEDROCK="bedrock";S.VERTEX="vertex";S.GEMINI="gemini";S.OLLAMA="ollama";S.LMSTUDIO="lmstudio";S.DEEPSEEK="deepseek";S.XAI="xai";S.TOGETHER="together";S.FIREWORKS="fireworks";S.GROQ="groq";S.POOLSIDE="poolside";S.CEREBRAS="cerebras";S.SAMBANOVA="sambanova";S.NEBIUS="nebius";S.BASETEN="baseten";S.REQUESTY="requesty";S.LITELLM="litellm";S.HUGGINGFACE="huggingface";S.VERCEL_AI_GATEWAY="vercel-ai-gateway";S.V0="v0";S.AIHUBMIX="aihubmix";S.HICAP="hicap";S.NOUS_RESEARCH="nousResearch";S.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";S.WANDB="wandb";S.XIAOMI="xiaomi";S.KILO="kilo";S.ZAI="zai";S.ZAI_CODING_PLAN="zai-coding-plan";S.QWEN="qwen";S.QWEN_CODE="qwen-code";S.DOUBAO="doubao";S.MISTRAL="mistral";S.MOONSHOT="moonshot";S.ASKSAGE="asksage";S.MINIMAX="minimax";S.DIFY="dify";S.OCA="oca";S.SAPAICORE="sapaicore";S.OPENROUTER="openrouter"})(zt||={});var jh={openai:"openai-compatible",togetherai:"together","sap-ai-core":"sapaicore"},_i=Object.values(zt);function Qn(e){return _i.includes(e)}function G(e){let t=e.trim();return jh[t]??t}function ki(e){return G(e.routingProviderId??e.providerId)}te();import{nanoid as ls}from"nanoid";ci();var Qo={version:1781031815553,providers:{aihubmix:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM 5 Vision Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.7042,output:3.09848,cacheRead:0.169008,cacheWrite:0},releaseDate:"2026-05-09",family:"glmv"},"qwen3.6-max-preview":{id:"qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.27,output:7.61,cacheRead:0.1268,cacheWrite:1.585},releaseDate:"2026-05-09",family:"qwen3.6"},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.69,cacheRead:0.0282,cacheWrite:0.3525},releaseDate:"2026-05-09",family:"qwen3.6"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"doubao-seed-2-0-lite-260428":{id:"doubao-seed-2-0-lite-260428",name:"Doubao Seed 2.0 Lite 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.51,cacheRead:0.01692,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"doubao-seed-2-0-mini-260428":{id:"doubao-seed-2-0-mini-260428",name:"Doubao Seed 2.0 Mini 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.03,output:0.28,cacheRead:0.00564,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"alicloud-deepseek-v4-flash":{id:"alicloud-deepseek-v4-flash",name:"DeepSeek V4 Flash (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"alicloud-deepseek-v4-pro":{id:"alicloud-deepseek-v4-pro",name:"DeepSeek V4 Pro (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:3.38,cacheRead:0.13,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deep-deepseek-v4-flash":{id:"deep-deepseek-v4-flash",name:"DeepSeek V4 Flash (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deep-deepseek-v4-pro":{id:"deep-deepseek-v4-pro",name:"DeepSeek V4 Pro (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"coding-xiaomi-mimo-v2.5":{id:"coding-xiaomi-mimo-v2.5",name:"Coding Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"coding-xiaomi-mimo-v2.5-pro":{id:"coding-xiaomi-mimo-v2.5-pro",name:"Coding Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5":{id:"xiaomi-mimo-v2.5",name:"Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.44,output:2.2,cacheRead:0.088,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-free":{id:"xiaomi-mimo-v2.5-free",name:"Xiaomi MiMo-V2.5 (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-pro":{id:"xiaomi-mimo-v2.5-pro",name:"Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:3.3,cacheRead:0.22,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5-pro-free":{id:"xiaomi-mimo-v2.5-pro-free",name:"Xiaomi MiMo-V2.5-Pro (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-opus-4-7-think":{id:"claude-opus-4-7-think",name:"Claude Opus 4.7 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding GLM 5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.22,cacheRead:0.013,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"coding-glm-5.1-free":{id:"coding-glm-5.1-free",name:"Coding GLM 5.1 (free)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm-free"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.17,output:1.01,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen3.6"},"alicloud-glm-5.1":{id:"alicloud-glm-5.1",name:"GLM-5.1 (Alibaba Cloud)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.84,output:3.38,cacheRead:0.169,cacheWrite:1.05625},releaseDate:"2026-03-27",family:"glm"},"zai-glm-5.1":{id:"zai-glm-5.1",name:"GLM-5.1 (Z.ai)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7":{id:"coding-minimax-m2.7",name:"Coding MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding MiniMax M2.7 (Free)",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-free"},"coding-minimax-m2.7-highspeed":{id:"coding-minimax-m2.7-highspeed",name:"Coding MiniMax M2.7 Highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"doubao-seed-2-0-code-preview":{id:"doubao-seed-2-0-code-preview",name:"Doubao Seed 2.0 Code Preview",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"doubao-seed-2-0-pro":{id:"doubao-seed-2-0-pro",name:"Doubao Seed 2.0 Pro",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1":{id:"claude-opus-4-1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-1-20250805":{id:"claude-opus-4-1-20250805",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-0":{id:"claude-opus-4-0",name:"Claude Opus 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-opus-4-20250514":{id:"claude-opus-4-20250514",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4-0":{id:"claude-sonnet-4-0",name:"Claude Sonnet 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-sonnet-4-20250514":{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-5-haiku-latest":{id:"claude-3-5-haiku-latest",name:"Claude Haiku 3.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"}},baseten:{"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B":{id:"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B",name:"Nemotron Ultra",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"Deepseek V4 Pro",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron Super",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.75,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM 5",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI GPT 120B",contextWindow:128072,maxInputTokens:128072,maxTokens:128072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},bedrock:{"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},releaseDate:"2026-06-09",family:"claude-fable"},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-05-28",family:"claude-opus"},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5.5,output:33,cacheRead:0.55,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:101376,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.75,output:16.5,cacheRead:0.275,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxInputTokens:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxInputTokens:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"au.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"au.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"au.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2025-09-29",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"jp.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (JP)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxInputTokens:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxInputTokens:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},cerebras:{"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxInputTokens:131072,maxTokens:40000,capabilities:["tools","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-10"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/models/deepseek-v4-flash":{id:"accounts/fireworks/models/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-fast":{id:"accounts/fireworks/routers/kimi-k2p6-fast",name:"Kimi K2.6 Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-turbo":{id:"accounts/fireworks/routers/kimi-k2p6-turbo",name:"Kimi K2.6 Turbo",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/qwen3p6-plus":{id:"accounts/fireworks/models/qwen3p6-plus",name:"Qwen 3.6 Plus",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-04",family:"qwen"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/routers/glm-5p1-fast":{id:"accounts/fireworks/routers/glm-5p1-fast",name:"GLM 5.1 Fast",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.8,output:8.8,cacheRead:0.52,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/minimax-m2p5":{id:"accounts/fireworks/models/minimax-m2p5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"accounts/fireworks/models/kimi-k2p5":{id:"accounts/fireworks/models/kimi-k2p5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.3,cacheRead:0.035,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},gemini:{"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},groq:{"moonshotai/kimi-k2-instruct-0905":{id:"moonshotai/kimi-k2-instruct-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"groq/compound":{id:"groq/compound",name:"Compound",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"groq/compound-mini":{id:"groq/compound-mini",name:"Compound Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-03-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-23",family:"qwen"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B Versatile",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B Instant",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"}},kilo:{"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"xAI: Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.08333},releaseDate:"2026-05-19"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.08333},releaseDate:"2026-05-07"},"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:3.5,cacheRead:0.375,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"stealth/claude-opus-4.7":{id:"stealth/claude-opus-4.7",name:"Stealth: Claude Opus 4.7 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"stealth/claude-sonnet-4.6":{id:"stealth/claude-sonnet-4.6",name:"Stealth: Claude Sonnet 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.4,output:12,cacheRead:0.24,cacheWrite:3},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"stealth/claude-opus-4.6":{id:"stealth/claude-opus-4.6",name:"Stealth: Claude Opus 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:204800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.625,output:4.875,cacheRead:0.1625,cacheWrite:2.03125},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxInputTokens:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxInputTokens:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxInputTokens:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxInputTokens:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16",family:"nemotron"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxInputTokens:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxInputTokens:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxInputTokens:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-02-27"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M3":{id:"MiniMax-M3",name:"MiniMax-M3",contextWindow:512000,maxInputTokens:512000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"}},nebius:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:200000,maxInputTokens:200000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:1},releaseDate:"2026-03-01"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxInputTokens:120000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"PrimeIntellect/INTELLECT-3":{id:"PrimeIntellect/INTELLECT-3",name:"INTELLECT-3",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.02,cacheWrite:0.25},releaseDate:"2026-01-25"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163000,maxInputTokens:160000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.45,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-01-20"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxInputTokens:1e5,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:124000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"moonshotai/Kimi-K2.5-fast":{id:"moonshotai/Kimi-K2.5-fast",name:"Kimi-K2.5-fast",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxInputTokens:30000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10",family:"nemotron"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507-fast":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507-fast",name:"Qwen3-235B-A22B-Thinking-2507-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-07-25"},"Qwen/Qwen3-Next-80B-A3B-Thinking-fast":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking-fast",name:"Qwen3-Next-80B-A3B-Thinking-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.1875},releaseDate:"2025-07-25"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:250000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"Qwen/Qwen3.5-397B-A17B-fast":{id:"Qwen/Qwen3.5-397B-A17B-fast",name:"Qwen3.5-397B-A17B-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"openai/gpt-oss-120b-fast":{id:"openai/gpt-oss-120b-fast",name:"gpt-oss-120b-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2025-06-10"},"deepseek-ai/DeepSeek-V3.2-fast":{id:"deepseek-ai/DeepSeek-V3.2-fast",name:"DeepSeek-V3.2-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2025-01-27"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:190000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"MiniMaxAI/MiniMax-M2.5-fast":{id:"MiniMaxAI/MiniMax-M2.5-fast",name:"MiniMax-M2.5-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxInputTokens:60000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20",family:"nemotron"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15",family:"nemotron"},"meta-llama/Meta-Llama-3.1-8B-Instruct":{id:"meta-llama/Meta-Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.02,output:0.06,cacheRead:0.002,cacheWrite:0.025},releaseDate:"2024-07-23"}},ollama:{"nemotron-3-ultra":{id:"nemotron-3-ultra",name:"nemotron-3-ultra",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"minimax-m3":{id:"minimax-m3",name:"minimax-m3",contextWindow:512000,maxInputTokens:512000,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6":{id:"kimi-k2.6",name:"kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxInputTokens:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxInputTokens:1e5,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"nex-agi/nex-n2-pro:free":{id:"nex-agi/nex-n2-pro:free",name:"Nex-N2-Pro (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-08"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"Nemotron 3 Ultra (free)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-02",family:"qwen"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-29"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-05-27",family:"claude-opus"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-05-19",family:"gemini-flash"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12",family:"claude-opus"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08",family:"ring"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05",family:"gpt"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30",family:"granite"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"mistral-medium"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"alpha"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27",family:"claude-haiku"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27",family:"claude-sonnet"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-04-27",family:"gemini-flash"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27",family:"gemini-pro"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.68,output:3.41,cacheRead:0.34,cacheWrite:0},releaseDate:"2026-04-27",family:"kimi"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt-mini"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.8,cacheRead:0,cacheWrite:0.375},releaseDate:"2026-04-27",family:"qwen3.5"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1875,output:1.125,cacheRead:0,cacheWrite:0.234375},releaseDate:"2026-04-27",family:"qwen3.6"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.0983,output:0.1966,cacheRead:0.0197,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-23",family:"ling"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.289,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-21",family:"claude-opus"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"Ling-2.6-flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.01,output:0.03,cacheRead:0.002,cacheWrite:0},releaseDate:"2026-04-21",family:"ling"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.68,output:3.41,cacheRead:0.34,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"moonshotai/kimi-k2.6:free":{id:"moonshotai/kimi-k2.6:free",name:"Kimi K2.6 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-20",family:"qwen"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.063,output:0.21,cacheRead:0.021,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen3.6 35B-A3B",contextWindow:262140,maxInputTokens:262140,maxTokens:262140,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07",family:"claude-opus"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.33,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:0.36,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.22,output:0.85,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31",family:"grok"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.98,output:3.08,cacheRead:0.182,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20",family:"reka"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.279,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"seed"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen3.5-9B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"qwen3.5"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26",family:"seed"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.92,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-09",family:"qwen"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.11,output:0.8,cacheRead:0.07,cacheWrite:0},releaseDate:"2026-02-04",family:"qwen"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-01-27",family:"solar-pro"},"openai/gpt-audio":{id:"openai/gpt-audio",name:"GPT Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"gpt"},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"GPT Audio Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"o-mini"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.9,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax-M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.29,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:228000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-10",family:"gpt-codex"},"relace/relace-search":{id:"relace/relace-search",name:"Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"GLM-4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:24000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-07",family:"rnj"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"nova"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.2,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.15,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"trinity-mini"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2002,output:0.8001,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2288,output:0.3432,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-27",family:"glm"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2.5,output:12.5,cacheRead:0.625,cacheWrite:0},releaseDate:"2025-10-31",family:"nova"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:32000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-10-30",family:"mistral"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"qwen"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM-4.6",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.43,output:1.74,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.78,output:3.9,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-08",family:"qwen"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0.325},releaseDate:"2025-09-08",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3-Next 80B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-instruct:free":{id:"qwen/qwen3-next-80b-a3b-instruct:free",name:"Qwen3 Next 80B A3B Instruct (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3-Next 80B-A3B (Thinking)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-08-28",family:"qwen"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nemotron Nano 9B v2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-08-13",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"jamba"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.039,output:0.18,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.029,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04815,output:0.19305,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-28",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131070,maxInputTokens:131070,maxTokens:131070,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.125,output:0.85,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"z-ai/glm-4.5-air:free":{id:"z-ai/glm-4.5-air:free",name:"GLM 4.5 Air (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"Llama 3.3 Nemotron Super 49B v1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"nemotron"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-24",family:"glm"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:free":{id:"qwen/qwen3-coder:free",name:"Qwen3 Coder 480B A35B (free)",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-21",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.075,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05",family:"gemini"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.15,cacheRead:0.35,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-07",family:"gemini-pro"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen3 235B-A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.455,output:1.82,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20",family:"gemini-pro"},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Gemma 3 12B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"gemma"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-02-17",family:"mistral"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-02-12",family:"o"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:65536,maxInputTokens:65536,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-lite"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-micro"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-pro"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-11-19",family:"mistral-large"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-08"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-11-04",family:"claude"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral Large 3",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:1.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2024-11-01",family:"mistral-large"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.36,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Command R",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Command R+",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28",family:"llama"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"o-mini"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:65536,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-04-17",family:"mistral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-02-26",family:"mistral-large"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2024-01-25",family:"qwen"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-08",family:"auto"},"openai/gpt-4":{id:"openai/gpt-4",name:"GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28",family:"gpt"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5-turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01",family:"gpt"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxInputTokens:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-03-20",family:"gemini-pro"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"gpt-5.5":{id:"gpt-5.5",name:"gpt-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic--claude-4.7-opus":{id:"anthropic--claude-4.7-opus",name:"anthropic--claude-4.7-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gpt-5.4":{id:"gpt-5.4",name:"gpt-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},together:{"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:512300,maxInputTokens:512300,maxTokens:512300,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"Qwen/Qwen3.7-Max":{id:"Qwen/Qwen3.7-Max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"qwen"},"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxInputTokens:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.1,output:4.4,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"Qwen/Qwen3-Coder-Next-FP8":{id:"Qwen/Qwen3-Coder-Next-FP8",name:"Qwen3 Coder Next FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"deepseek-ai/DeepSeek-V3-1":{id:"deepseek-ai/DeepSeek-V3-1",name:"DeepSeek V3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek-V3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.25,output:1.25,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.88,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxInputTokens:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-01",family:"qwen3.7-plus"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-28",family:"step"},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"mistral-medium"},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20",family:"grok-build"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini"},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2.6"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxInputTokens:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-13",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.4,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0,cacheWrite:0.02},releaseDate:"2026-01-29",family:"step"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:131000,maxInputTokens:131000,maxTokens:40000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.25,output:2.75,cacheRead:2.25,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-18",family:"gpt-codex"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-17",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:8000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-19",family:"gpt"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"moonshotai/kimi-k2-thinking-turbo":{id:"moonshotai/kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:205000,maxInputTokens:205000,maxTokens:205000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","files","tools","temperature"],pricing:{input:0.4,output:1.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"moonshotai/kimi-k2-turbo":{id:"moonshotai/kimi-k2-turbo",name:"Kimi K2 Turbo",contextWindow:256000,maxInputTokens:256000,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxInputTokens:256000,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:1e5,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-30",family:"longcat"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxInputTokens:66000,maxTokens:16000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxInputTokens:128000,maxTokens:272000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:72,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.35,output:0.75,cacheRead:0.25,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16",family:"o-pro"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.16,output:0.64,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.5,output:7.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxInputTokens:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxInputTokens:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxInputTokens:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-01",family:"qwen"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01",family:"trinity"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-01-01",family:"glm-flash"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.27,output:1.12,cacheRead:0.135,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:65536,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2024-11-24",family:"claude-opus"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-opus-4-8@default":{id:"claude-opus-4-8@default",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"zai-org/glm-5-maas":{id:"zai-org/glm-5-maas",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai-org/glm-4.7-maas":{id:"zai-org/glm-4.7-maas",name:"GLM-4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-06",family:"glm"},"deepseek-ai/deepseek-v3.2-maas":{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.056,cacheWrite:0},releaseDate:"2025-12-17",family:"deepseek"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"moonshotai/kimi-k2-thinking-maas":{id:"moonshotai/kimi-k2-thinking-maas",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-13",family:"kimi-thinking"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"deepseek-ai/deepseek-v3.1-maas":{id:"deepseek-ai/deepseek-v3.1-maas",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"deepseek"},"qwen/qwen3-235b-a22b-instruct-2507-maas":{id:"qwen/qwen3-235b-a22b-instruct-2507-maas",name:"Qwen3 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-13",family:"qwen"},"openai/gpt-oss-120b-maas":{id:"openai/gpt-oss-120b-maas",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.36,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b-maas":{id:"openai/gpt-oss-20b-maas",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"meta/llama-3.3-70b-instruct-maas":{id:"meta/llama-3.3-70b-instruct-maas",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"meta/llama-4-maverick-17b-128e-instruct-maas":{id:"meta/llama-4-maverick-17b-128e-instruct-maas",name:"Llama 4 Maverick 17B 128E Instruct",contextWindow:524288,maxInputTokens:524288,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.35,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxInputTokens:161000,maxTokens:161000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxInputTokens:64000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"}},xiaomi:{"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2-omni":{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-pro":{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-flash":{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"}},zai:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var Vg=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function Yg(e){return[...new Set(e)]}var Qg=Object.fromEntries(Vg.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function V6(e){let t=Vg.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return Yg([...t,"nousresearch",e]);return Yg([...t,e])}var z0=4096,U0=4096;function qg(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function Bn(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[r,i])=>{let a=qg(n.releaseDate),o=qg(i.releaseDate);if(a!==o)return o-a;return t.localeCompare(r)}))}function O0(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return Array.from(new Set(t))}function E0(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function T0(e){let t=e?.context,n=e?.input;if(typeof t==="number"&&typeof n==="number")return Math.min(t,n);return n??t??z0}function j0(e,t){let n=T0(t.limit),r=t.limit?.output??U0,i=t.limit?.context;return{id:e,name:t.name||e,contextWindow:i,maxInputTokens:n,maxTokens:Math.floor(r),capabilities:O0(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:E0(t.status),releaseDate:t.release_date,family:t.family}}function P0(e){return e.status==="deprecated"}function N0(e){let t={};for(let[n,r]of Object.entries(Qg)){let i=e[n];if(!i?.models)continue;let a={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||P0(s))continue;a[o]=j0(o,s)}if(Object.keys(a).length>0)t[r]=Bn(a)}return t}async function ez(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let r=await n.json();return N0(r)}var eh,th=new Map;function rz(){return eh??=Object.fromEntries(Object.entries(Qo.providers).map(([e,t])=>[e,Bn(t)])),eh}function ih(e){let t=th.get(e);if(t)return t;let n=Bn(Qo.providers[e]??{});return th.set(e,n),n}var D0=new Set(["gpt-5.5","gpt-5.4","gpt-5.4-mini"]);function A0(e){if(D0.has(e))return!0;let t=e.match(/^gpt-(\d+\.\d+)/);return t?Number.parseFloat(t[1])>5.4:!1}function Z0(e,t){if(!e.includes("gpt-5.5"))return t;return{...t,contextWindow:400000,maxInputTokens:272000,maxTokens:128000}}function nh(e){return Object.fromEntries(Object.entries(e).filter(([t])=>A0(t)).map(([t,n])=>[t,Z0(t,n)]))}_t();Lo();Mo();var C0="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm",R0="gpt-5.4",Gn={path:"apiKey",label:"API Key",type:"password",placeholder:"Enter API key...",description:"API key issued by the provider.",secret:!0},ah={path:"baseUrl",label:"Base URL",type:"url",placeholder:"https://...",description:"Base endpoint used for provider requests."},L0=[{path:"gcp.projectId",label:"Google Cloud Project ID",type:"text",placeholder:"my-gcp-project",description:"Google Cloud project that owns the Vertex AI resources.",required:!0},{path:"gcp.region",label:"Vertex Region",type:"text",placeholder:"us-central1",description:"Vertex AI location to run models in.",defaultValue:"us-central1"},{...Gn,label:"API Key",description:"Optional Google API key for Gemini models. Vertex Anthropic models use Google Cloud credentials."}],M0=[{path:"aws.authentication",label:"Authentication",type:"select",description:"Credential source for Amazon Bedrock requests.",options:[{label:"AWS SDK / IAM",value:"iam"},{label:"AWS Profile",value:"profile"},{label:"API Key",value:"api-key"}],defaultValue:"iam"},{path:"aws.region",label:"AWS Region",type:"text",placeholder:"us-east-1",description:"AWS region for Bedrock runtime requests."},{path:"aws.profile",label:"AWS Profile",type:"text",placeholder:"default",description:"Named AWS profile when using profile authentication."},{path:"aws.accessKey",label:"Access Key ID",type:"password",placeholder:"AKIA...",secret:!0},{path:"aws.secretKey",label:"Secret Access Key",type:"password",secret:!0},{path:"aws.sessionToken",label:"Session Token",type:"password",secret:!0},{path:"apiKey",label:"Bedrock API Key",type:"password",description:"Optional Bedrock bearer token for API key authentication.",secret:!0},{path:"aws.endpoint",label:"Endpoint URL",type:"url",placeholder:"https://bedrock-runtime.us-east-1.amazonaws.com",description:"Optional custom Bedrock runtime endpoint."},{path:"aws.useCrossRegionInference",label:"Cross-Region Inference",type:"boolean"},{path:"aws.useGlobalInference",label:"Global Inference",type:"boolean"},{path:"aws.usePromptCache",label:"Prompt Cache",type:"boolean"}],F0=[{path:"oca.mode",label:"OCA Mode",type:"select",options:[{label:"External",value:"external"},{label:"Internal",value:"internal"}],defaultValue:"external"},Gn,{path:"oca.usePromptCache",label:"Prompt Cache",type:"boolean"}],rh=[Gn,ah,{path:"apiLine",label:"API Line",type:"select",description:"Regional API line for Qwen routing.",options:[{label:"International",value:"international"},{label:"China",value:"china"}]}];function J0(e){let t=[];if(e.apiKeyEnv?.length)t.push(Gn);if(e.defaults?.baseUrl?.trim())t.push(ah);return t}function K0(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function W0(e){if(!e?.length)return;return[...new Set(e)]}function oh(e){return W0([...e.capabilities??[],...e.popular!==void 0?["popular"]:[]])}function sh(e){let t=e.configFields??J0(e),n={...e.metadata,configFields:t};if(e.popular!==void 0)n.popularRank=e.popular;return n}function es(e){return K0(ih(e))}function qo(e){let t=Object.entries(es("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function H0(){function e(t){return{...t==="opus"?qo((r)=>r.includes("opus")):t==="haiku"?qo((r)=>r.includes("haiku")):qo((r)=>r.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function B0(){return nh(es("openai-native"))}function G0(e,t){let n={id:e,name:e};if(t?.family==="openai-compatible")n.contextWindow=128000,n.maxInputTokens=128000,n.capabilities=["streaming","tools","images"];if(t?.id==="qwen"||t?.id==="qwen-code")n.family="qwen",n.capabilities=["prompt-cache"];return n}function X0(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"prompt-cache":n.add("prompt-cache");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let r={};if(t.family)r.family=t.family;if(t.pricing)r.pricing=t.pricing;if(t.status)r.status=t.status;if(t.releaseDate)r.releaseDate=t.releaseDate;if(typeof t.metadata?.reasoningDefaultOn==="boolean")r.reasoningDefaultOn=t.metadata.reasoningDefaultOn;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(r).length>0?r:void 0}}function Y0(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function V0(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":case"sap-ai-core":return"ai-sdk-community";default:return"openai-compatible"}}var Q0=[{id:"openai-compatible",name:"OpenAI Compatible",description:"OpenAI-compatible chat completions endpoint",family:"openai-compatible",popular:7,capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"cline",name:"Cline",description:"Cline API endpoint",family:"openai-compatible",popular:1,capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:"openrouter",defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${zo().apiBaseUrl}/api/v1`}},metadata:Cn},{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",popular:3,capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/kimi-k2p6",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"poolside",name:"Poolside",description:"OpenAI-compatible code intelligence models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"poolside/laguna-m.1",apiKeyEnv:["POOLSIDE_API_KEY"],defaults:{baseUrl:"https://inference.poolside.ai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",popular:8,capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://api-inference.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:Cn},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",protocol:"openai-responses",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:Ve},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:rh,metadata:Do},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:rh,metadata:Do},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"},metadata:Ro},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"},metadata:Ro},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2-omni",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",popular:5,capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:Cn},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",popular:6,defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:C0},configFields:F0,metadata:Ve},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}}],ts=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",popular:2,capabilities:["reasoning","oauth"],defaultModelId:R0,modelsFactory:B0,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"hide"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"hide"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",popular:4,capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:Ve},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:H0,defaults:{baseUrl:""},configFields:[]},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",popular:9,capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY","GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION"],modelsProviderId:"vertex",configFields:L0,metadata:Ve},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",popular:7,capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",configFields:M0,metadata:Ve},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic/v1"},metadata:ng},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""},configFields:[]},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"sap-ai-core",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:Ve},...Q0];function q0(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return es(e.modelsProviderId);return{}}function uh(e){let t=q0(e),n=oh(e),r=sh(e),i=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:G0(e.defaultModelId,e)}:{},a=Object.keys(i),o=e.defaultModelId||a[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??Y0(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:o,capabilities:n,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??V0(e),source:"system",metadata:r},models:i}}function lh(e){let t=uh(e),n=oh(e),r=sh(e),i=Object.values(t.models).map((o)=>X0(e.id,o)),a=i.length>0?i:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||a[0]?.id||"default",models:a,capabilities:n,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:r}}var is=ts.map(uh),fz=Object.fromEntries(is.map((e)=>[e.provider.id,e]));var dh=new Map;async function e4(e){let t=dh.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (te(),oe))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (te(),oe))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (te(),oe))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (te(),oe))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (te(),oe))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (te(),oe))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (te(),oe))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (te(),oe))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (te(),oe))).createDifyProvider;case"sap-ai-core":return(await Promise.resolve().then(() => (te(),oe))).createSapAiCoreProvider}})();return dh.set(e,n),n}function t4(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var pi=ts.map((e)=>({manifest:lh(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await e4(t4(e))})}));ci();async function*ch(e){for await(let t of e)yield t}function mh(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function i4(e,t){let n=new Map;for(let r of e.models)n.set(r.id,{...r});for(let r of t?.models??[])n.set(r.id,{...r,providerId:e.id});return Array.from(n.values())}function fh(e,t){let n=e?.routing||t?.routing?{...e?.routing??{},...t?.routing??{}}:void 0,r={...e??{},...t??{},...n?{routing:n}:{}};return Object.keys(r).length>0?r:void 0}function n4(e,t){return{id:t,name:t,providerId:e.id}}class ns{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:mh(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let r=i4(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??r[0]?.id;if(!i)return;return{...mh(t.manifest),defaultModelId:i,models:r,metadata:fh(t.manifest.metadata,n?.metadata)}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,r=t.models.find((i)=>i.id===n)??n4(t,n);return{provider:t,model:r}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let a=await t.loadProvider?.();if(!a?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=a.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let r=this.providerConfigs.get(e),i=fh(t.defaults?.metadata,r?.metadata);return{manifest:n,config:{providerId:e,apiKey:r?.apiKey??t.defaults?.apiKey,apiKeyResolver:r?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:r?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:r?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...r?.headers??{}},timeoutMs:r?.timeoutMs??t.defaults?.timeoutMs,fetch:r?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...r?.options??{}},metadata:i},createProvider:t.createProvider}}}var r4=1024;class ph{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,r=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,a=r==="low"||r==="medium"||r==="high"?r:void 0,o=typeof n==="boolean"||a!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:a,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:e.options?.metadata??this.defaults?.metadata,reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}function Xn(e){return typeof e==="number"&&Number.isFinite(e)&&e>0}function rs(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function a4(e){let t;try{t=JSON.stringify({systemPrompt:e.systemPrompt,messages:e.messages,tools:e.tools})}catch{t=[rs(e.systemPrompt),rs(e.messages),rs(e.tools)].join(`
|
|
164
|
-
`)}return Io(t.length)}function o4(e){if(!Xn(e.requestedMaxTokens))return;let t=[Math.floor(e.requestedMaxTokens)];if(Xn(e.model.maxOutputTokens))t.push(Math.floor(e.model.maxOutputTokens));if(Xn(e.model.contextWindow)){let n=e.outputReserveTokens??r4,r=e.model.contextWindow-e.estimatedInputTokens-n;if(r<=0){e.onContextOverflow?.({contextWindow:e.model.contextWindow,estimatedInputTokens:e.estimatedInputTokens,reserveTokens:n});return}t.push(Math.floor(r))}if(t.length===0)return;return Math.max(1,Math.floor(Math.min(...t)))}class vh{registry;logger;telemetry;constructor(e={}){if(this.registry=new ns(e.fetch),this.logger=e.logger,this.telemetry=e.telemetry,e.builtins!==!1){let t=new Set(e.builtins??pi.map((n)=>n.manifest.id));for(let n of pi)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new ph(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),r=await n.createProvider(n.config),i=Xn(e.maxTokens)?o4({requestedMaxTokens:e.maxTokens,model:t.model,estimatedInputTokens:a4(e),onContextOverflow:(o)=>{this.logger?.log("Estimated prompt tokens exceed model context window",{severity:"warn",providerId:t.provider.id,modelId:t.model.id,...o})}}):void 0,a=await r.stream({...e,modelId:t.model.id,providerId:t.provider.id,maxTokens:i},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger,telemetry:this.telemetry});return ch(a)}}function as(e){return new vh(e)}function s4(){let e=new Map;for(let t of is)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,r])=>[n,{...r}]))});return e}var vi=s4(),St=new Map,et=new Map;function qe(e){return et.get(e)??vi.get(e)}function gh(){let e=Array.from(vi.keys()),t=Array.from(et.keys()).filter((n)=>!vi.has(n));return[...e,...t]}function Iz(e){return vi.has(e)||et.has(e)}async function xz(e){return qe(e)?.provider}function os(e){return qe(e)}async function ss(e){return qe(e)}async function zz(e){let n=qe(e)?.models??{},r=St.get(e);if(r)return{...n,...Object.fromEntries(r)};return n}async function Uz(){return gh().map((e)=>qe(e)?.provider).filter((e)=>e!==void 0)}function Oz(e){et.set(e.provider.id,e)}function Ez(e,t,n){if(!St.has(e))St.set(e,new Map);St.get(e)?.set(t,{...n,id:t})}function Tz(e){return St.delete(e),et.delete(e)}function jz(){St.clear(),et.clear()}var Pz=new Proxy({},{get(e,t){return qe(t)},has(e,t){return vi.has(t)||et.has(t)},ownKeys(){return gh()},getOwnPropertyDescriptor(e,t){let n=qe(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var It=new Map(pi.map((e)=>[e.manifest.id,e]));function u4(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"prompt-cache":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function ds(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:u4(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function hh(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return Mn;switch(t?.client){case"anthropic":return Jn;case"gemini":return Kn;case"vertex":return Wn;case"bedrock":return Hn;case"openai-compatible":return Fn}switch(G(e)){case"openai-codex":case"openai-native":return Mn;case"anthropic":case"minimax":return Jn;case"gemini":return Kn;case"vertex":return Wn;case"bedrock":return Hn;case"mistral":return Ho;case"claude-code":return Bo;case"openai-codex-cli":return Go;case"opencode":return Xo;case"dify":return Yo;case"sapaicore":return Vo;default:return Fn}}async function l4(e){let t=G(e.providerId),n=G(ki(e));if(It.get(t)&&t===n)return;let i=await ss(t)??(t!==n?await ss(n):void 0);if(!i){let o=It.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=It.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>ds(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??hh(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function d4(e){let t=G(e.providerId),n=G(ki(e));if(It.get(t)&&t===n)return;let i=os(t)??(t!==n?os(n):void 0);if(!i){let o=It.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=It.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>ds(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??hh(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function c4(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let r of n.content)if(r.type==="tool_use"){if(t.set(r.id,r.name),r.call_id)t.set(r.call_id,r.name)}}return e.map((n)=>{let r=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:ls(),role:n.role,content:r,createdAt:Date.now()}})}function m4(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function us(e,t,n,r,i){return{providerId:G(e.providerId),modelId:e.modelId,systemPrompt:t,messages:c4(n),tools:m4(r),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function yh(e){let t=G(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let r=ds(t,n),{providerId:i,...a}=r;return a}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,authentication:e.aws?.authentication,profile:e.aws?.profile,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function bh(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,r=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:r}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function f4(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class cs{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return us(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let r=as({providerConfigs:[yh(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger,telemetry:this.config.extensionContext?.telemetry}),i=d4(this.config);if(i)r.registerProvider(i);let a=us(this.config,e,t,n,this.abortSignal),o=`gw_${ls(10)}`,s=async function*(){for await(let d of await r.stream(a))yield bh(o,d)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:f4(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function $h(e){return new cs(e)}async function _h(e){let t=as({providerConfigs:[yh(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger,telemetry:e.extensionContext?.telemetry}),n=await l4(e);if(n)t.registerProvider(n);return new class extends cs{createMessage(r,i,a){let o=us(e,r,i,a,e.abortSignal),s=`gw_${ls(10)}`,d=async function*(){for await(let l of await t.stream(o))yield bh(s,l)}();return d.id=s,d}}(e)}var xt=new Map;function p4(e,t){xt.set(e,{factory:t,isAsync:!1})}function v4(e,t){xt.set(e,{factory:t,isAsync:!0})}function Yn(e){return xt.has(e)}function ms(e,t){let n=xt.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function fs(e,t){let n=xt.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function ps(e){return xt.get(e)?.isAsync??!1}function kh(e){let t=G(e.providerId),n=e.routingProviderId?G(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function Bz(e){let t=kh(e),{providerId:n}=t;if(Yn(n)){if(ps(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let r=ms(n,t);if(r)return r}return $h(t)}async function Gz(e){let t=kh(e),{providerId:n}=t;if(Yn(n)){let r=await fs(n,t);if(r)return r}return _h(t)}export{p4 as registerHandler,v4 as registerAsyncHandler,G as normalizeProviderId,ps as isRegisteredHandlerAsync,Qn as isBuiltInProviderId,Yn as hasRegisteredHandler,fs as getRegisteredHandlerAsync,ms as getRegisteredHandler,Gz as createHandlerAsync,Bz as createHandler,_i as BUILT_IN_PROVIDER_IDS,zt as BUILT_IN_PROVIDER};
|
|
162
|
+
`)}v.write("payload.value = newResult;"),v.write("return payload;");let U=v.compile();return(C,w)=>U(f,C,w)},a,o=ut,s=!Pt.jitless,d=s&&Eu.value,l=t.catchall,c;e._zod.parse=(f,v)=>{c??(c=r.value);let p=f.value;if(!o(p))return f.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),f;if(s&&d&&v?.async===!1&&v.jitless!==!0){if(!a)a=i(t.shape);if(f=a(f,v),!l)return f;return Od([],p,f,v,c,e)}return n(f,v)}});Ki=m("$ZodUnion",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.options.some((r)=>r._zod.optin==="optional")?"optional":void 0),E(e._zod,"optout",()=>t.options.some((r)=>r._zod.optout==="optional")?"optional":void 0),E(e._zod,"values",()=>{if(t.options.every((r)=>r._zod.values))return new Set(t.options.flatMap((r)=>Array.from(r._zod.values)));return}),E(e._zod,"pattern",()=>{if(t.options.every((r)=>r._zod.pattern)){let r=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${r.map((i)=>Mi(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else{if(d.issues.length===0)return d;o.push(d)}}if(!a)return Es(o,r,e,i);return Promise.all(o).then((s)=>{return Es(s,r,e,i)})}});jd=m("$ZodXor",(e,t)=>{Ki.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else o.push(d)}if(!a)return Ts(o,r,e,i);return Promise.all(o).then((s)=>{return Ts(s,r,e,i)})}}),Pd=m("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Ki.init(e,t);let n=e._zod.parse;E(e._zod,"propValues",()=>{let i={};for(let a of t.options){let o=a._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[s,d]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let l of d)i[s].add(l)}}return i});let r=Lt(()=>{let i=t.options,a=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let d of s){if(a.has(d))throw Error(`Duplicate discriminator value "${String(d)}"`);a.set(d,o)}}return a});e._zod.parse=(i,a)=>{let o=i.value;if(!ut(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,a);if(t.unionFallback||a.direction==="backward")return n(i,a);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),Nd=m("$ZodIntersection",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value,a=t.left._zod.run({value:i,issues:[]},r),o=t.right._zod.run({value:i,issues:[]},r);if(a instanceof Promise||o instanceof Promise)return Promise.all([a,o]).then(([s,d])=>{return js(n,s,d)});return js(n,a,o)}});Kr=m("$ZodTuple",(e,t)=>{x.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let o=[],s=Ps(n,"optin"),d=Ps(n,"optout");if(!t.rest){if(a.length<s)return r.issues.push({code:"too_small",minimum:s,inclusive:!0,input:a,inst:e,origin:"array"}),r;if(a.length>n.length)r.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:a,inst:e,origin:"array"})}let l=Array(n.length);for(let c=0;c<n.length;c++){let f=n[c]._zod.run({value:a[c],issues:[]},i);if(f instanceof Promise)o.push(f.then((v)=>{l[c]=v}));else l[c]=f}if(t.rest){let c=n.length-1,f=a.slice(n.length);for(let v of f){c++;let p=t.rest._zod.run({value:v,issues:[]},i);if(p instanceof Promise)o.push(p.then((y)=>Ns(y,r,c)));else Ns(p,r,c)}}if(o.length)return Promise.all(o).then(()=>Ds(l,r,n,a,d));return Ds(l,r,n,a,d)}});Dd=m("$ZodRecord",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Ke(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let l of o)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){s.add(typeof l==="number"?l.toString():l);let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>ie(p,r,W())),input:l,path:[l],inst:e});continue}let f=c.value,v=t.valueType._zod.run({value:i[l],issues:[]},r);if(v instanceof Promise)a.push(v.then((p)=>{if(p.issues.length)n.issues.push(...se(l,p.issues));n.value[f]=p.value}));else{if(v.issues.length)n.issues.push(...se(l,v.issues));n.value[f]=v.value}}let d;for(let l in i)if(!s.has(l))d=d??[],d.push(l);if(d&&d.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:d})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let d=t.keyType._zod.run({value:s,issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&Ar.test(s)&&d.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)d=c}if(d.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((c)=>ie(c,r,W())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:i[s],issues:[]},r);if(l instanceof Promise)a.push(l.then((c)=>{if(c.issues.length)n.issues.push(...se(s,c.issues));n.value[d.value]=c.value}));else{if(l.issues.length)n.issues.push(...se(s,l.issues));n.value[d.value]=l.value}}}if(a.length)return Promise.all(a).then(()=>n);return n}}),Ad=m("$ZodMap",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let d=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);if(d instanceof Promise||l instanceof Promise)a.push(Promise.all([d,l]).then(([c,f])=>{As(c,f,n,o,i,e,r)}));else As(d,l,n,o,i,e,r)}if(a.length)return Promise.all(a).then(()=>n);return n}});Zd=m("$ZodSet",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let a=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)a.push(s.then((d)=>Zs(d,n)));else Zs(s,n)}if(a.length)return Promise.all(a).then(()=>n);return n}});Cd=m("$ZodEnum",(e,t)=>{x.init(e,t);let n=kr(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((i)=>ji.has(typeof i)).map((i)=>typeof i==="string"?we(i):i.toString()).join("|")})$`),e._zod.parse=(i,a)=>{let o=i.value;if(r.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),Rd=m("$ZodLiteral",(e,t)=>{if(x.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?we(r):r?we(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,i)=>{let a=r.value;if(n.has(a))return r;return r.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),r}}),Ld=m("$ZodFile",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),Md=m("$ZodTransform",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then((a)=>{return n.value=a,n.fallback=!0,n});if(i instanceof Promise)throw new Oe;return n.value=i,n.fallback=!0,n}});Wr=m("$ZodOptional",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.optout="optional",E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Mi(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,a=t.innerType._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Cs(o,i));return Cs(a,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),Jd=m("$ZodExactOptional",(e,t)=>{Wr.init(e,t),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>{return t.innerType._zod.run(n,r)}}),Fd=m("$ZodNullable",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.innerType._zod.optin),E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Mi(n.source)}|null)$`):void 0}),E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),Kd=m("$ZodDefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Rs(a,t));return Rs(i,t)}});Wd=m("$ZodPrefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),Hd=m("$ZodNonOptional",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ls(a,e));return Ls(i,e)}});Bd=m("$ZodSuccess",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt("ZodSuccess");let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{return n.value=a.issues.length===0,n});return n.value=i.issues.length===0,n}}),Gd=m("$ZodCatch",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{if(n.value=a.value,a.issues.length)n.value=t.catchValue({...n,error:{issues:a.issues.map((o)=>ie(o,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((a)=>ie(a,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),Xd=m("$ZodNaN",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),Hr=m("$ZodPipe",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let a=t.out._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Si(o,t.in,r));return Si(a,t.in,r)}let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Si(a,t.out,r));return Si(i,t.out,r)}});Br=m("$ZodCodec",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ii(a,t,r));return Ii(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ii(a,t,r));return Ii(i,t,r)}}});Yd=m("$ZodPreprocess",(e,t)=>{Hr.init(e,t)}),Vd=m("$ZodReadonly",(e,t)=>{x.init(e,t),E(e._zod,"propValues",()=>t.innerType._zod.propValues),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"optin",()=>t.innerType?._zod?.optin),E(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then(Ms);return Ms(i)}});Qd=m("$ZodTemplateLiteral",(e,t)=>{x.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let i=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${r._zod.traits}`);let a=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(a,o))}else if(r===null||ju.has(typeof r))n.push(we(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,i)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),qd=m("$ZodFunction",(e,t)=>{return x.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let i=e._def.input?ur(e._def.input,r):r,a=Reflect.apply(n,this,i);if(e._def.output)return ur(e._def.output,a);return a}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let i=e._def.input?await lr(e._def.input,r):r,a=await Reflect.apply(n,this,i);if(e._def.output)return await lr(e._def.output,a);return a}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new Kr({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),ec=m("$ZodPromise",(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},r))}}),tc=m("$ZodLazy",(e,t)=>{x.init(e,t),E(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),E(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),E(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),E(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),E(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>{return e._zod.innerType._zod.run(n,r)}}),ic=m("$ZodCustom",(e,t)=>{L.init(e,t),x.init(e,t),e._zod.parse=(n,r)=>{return n},e._zod.check=(n)=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then((a)=>Js(a,n,r,e));Js(i,n,r,e);return}});Gr={};Se(Gr,{zhTW:()=>a_,zhCN:()=>n_,yo:()=>s_,vi:()=>t_,uz:()=>q$,ur:()=>V$,uk:()=>ac,ua:()=>X$,tr:()=>B$,th:()=>W$,ta:()=>F$,sv:()=>M$,sl:()=>R$,ru:()=>Z$,ro:()=>D$,pt:()=>P$,ps:()=>O$,pl:()=>T$,ota:()=>z$,no:()=>I$,nl:()=>w$,ms:()=>_$,mk:()=>b$,lt:()=>h$,ko:()=>v$,km:()=>rc,kh:()=>f$,ka:()=>c$,ja:()=>l$,it:()=>s$,is:()=>a$,id:()=>n$,hy:()=>t$,hu:()=>qb,hr:()=>Vb,he:()=>Xb,frCA:()=>Bb,fr:()=>Wb,fi:()=>Fb,fa:()=>Mb,es:()=>Rb,eo:()=>Zb,en:()=>nc,el:()=>Nb,de:()=>jb,da:()=>Eb,cs:()=>Ub,ca:()=>xb,bg:()=>Sb,be:()=>kb,az:()=>$b,ar:()=>yb});oc=Symbol("ZodOutput"),sc=Symbol("ZodInput");(Bs=globalThis).__zod_globalRegistry??(Bs.__zod_globalRegistry=Yr());ue=globalThis.__zod_globalRegistry;cc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};T_={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},cr={string:Xc,number:Yc,boolean:Vc,bigint:Qc,symbol:qc,null:em,undefined:tm,void:im,never:nm,any:rm,unknown:am,date:om,enum:sm,literal:um,nan:lm,template_literal:dm,file:cm,success:mm,custom:fm,function:pm,transform:vm,map:gm,set:hm,array:ym,object:bm,union:ka,intersection:$m,tuple:_m,record:km,nullable:wm,nonoptional:Sm,default:Im,prefault:xm,catch:zm,pipe:Um,readonly:Om,promise:Em,optional:wa,lazy:Tm};j_={},Nm={};Se(Nm,{xor:()=>Kf,xid:()=>ff,void:()=>Cf,uuidv7:()=>af,uuidv6:()=>rf,uuidv4:()=>nf,uuid:()=>tf,url:()=>of,unknown:()=>He,union:()=>In,undefined:()=>Af,ulid:()=>mf,uint64:()=>Nf,uint32:()=>Tf,tuple:()=>Ha,transform:()=>zn,templateLiteral:()=>rp,symbol:()=>Df,superRefine:()=>_o,success:()=>ep,stringbool:()=>cp,stringFormat:()=>Sf,string:()=>Dt,strictObject:()=>Jf,set:()=>Xf,refine:()=>$o,record:()=>Ba,readonly:()=>po,promise:()=>ap,preprocess:()=>fp,prefault:()=>ao,pipe:()=>Zi,partialRecord:()=>Hf,optional:()=>Zt,object:()=>Mf,number:()=>Ea,nullish:()=>qf,nullable:()=>Ct,null:()=>Da,nonoptional:()=>oo,never:()=>wn,nativeEnum:()=>Yf,nanoid:()=>lf,nan:()=>tp,meta:()=>lp,map:()=>Gf,mac:()=>gf,looseRecord:()=>Bf,looseObject:()=>Ff,literal:()=>Vf,lazy:()=>ho,ksuid:()=>pf,keyof:()=>Lf,jwt:()=>wf,json:()=>mp,ipv6:()=>hf,ipv4:()=>vf,invertCodec:()=>np,intersection:()=>Ka,int64:()=>Pf,int32:()=>Ef,int:()=>Ai,instanceof:()=>dp,httpUrl:()=>sf,hostname:()=>If,hex:()=>xf,hash:()=>zf,guid:()=>ef,function:()=>Ci,float64:()=>Of,float32:()=>Uf,file:()=>Qf,exactOptional:()=>eo,enum:()=>xn,emoji:()=>uf,email:()=>qm,e164:()=>kf,discriminatedUnion:()=>Wf,describe:()=>up,date:()=>Rf,custom:()=>sp,cuid2:()=>cf,cuid:()=>df,codec:()=>ip,cidrv6:()=>bf,cidrv4:()=>yf,check:()=>op,catch:()=>lo,boolean:()=>Ta,bigint:()=>jf,base64url:()=>_f,base64:()=>$f,array:()=>ai,any:()=>Zf,_function:()=>Ci,_default:()=>no,_ZodString:()=>an,ZodXor:()=>Ma,ZodXID:()=>mn,ZodVoid:()=>Ra,ZodUnknown:()=>Za,ZodUnion:()=>si,ZodUndefined:()=>Pa,ZodUUID:()=>$e,ZodURL:()=>ti,ZodULID:()=>cn,ZodType:()=>z,ZodTuple:()=>Wa,ZodTransform:()=>Qa,ZodTemplateLiteral:()=>vo,ZodSymbol:()=>ja,ZodSuccess:()=>so,ZodStringFormat:()=>A,ZodString:()=>ei,ZodSet:()=>Xa,ZodRecord:()=>pt,ZodReadonly:()=>fo,ZodPromise:()=>yo,ZodPreprocess:()=>mo,ZodPrefault:()=>ro,ZodPipe:()=>ui,ZodOptional:()=>Un,ZodObject:()=>oi,ZodNumberFormat:()=>Xe,ZodNumber:()=>ii,ZodNullable:()=>to,ZodNull:()=>Na,ZodNonOptional:()=>On,ZodNever:()=>Ca,ZodNanoID:()=>un,ZodNaN:()=>co,ZodMap:()=>Ga,ZodMAC:()=>Oa,ZodLiteral:()=>Ya,ZodLazy:()=>go,ZodKSUID:()=>fn,ZodJWT:()=>_n,ZodIntersection:()=>Fa,ZodIPv6:()=>vn,ZodIPv4:()=>pn,ZodGUID:()=>At,ZodFunction:()=>bo,ZodFile:()=>Va,ZodExactOptional:()=>qa,ZodEnum:()=>vt,ZodEmoji:()=>sn,ZodEmail:()=>on,ZodE164:()=>$n,ZodDiscriminatedUnion:()=>Ja,ZodDefault:()=>io,ZodDate:()=>Sn,ZodCustomStringFormat:()=>ht,ZodCustom:()=>di,ZodCodec:()=>li,ZodCatch:()=>uo,ZodCUID2:()=>dn,ZodCUID:()=>ln,ZodCIDRv6:()=>hn,ZodCIDRv4:()=>gn,ZodBoolean:()=>ni,ZodBigIntFormat:()=>kn,ZodBigInt:()=>ri,ZodBase64URL:()=>bn,ZodBase64:()=>yn,ZodArray:()=>La,ZodAny:()=>Aa});Dm={};Se(Dm,{uppercase:()=>Gi,trim:()=>en,toUpperCase:()=>nn,toLowerCase:()=>tn,startsWith:()=>Yi,slugify:()=>rn,size:()=>Xt,regex:()=>Hi,property:()=>_a,positive:()=>ha,overwrite:()=>xe,normalize:()=>qi,nonpositive:()=>ba,nonnegative:()=>$a,negative:()=>ya,multipleOf:()=>dt,minSize:()=>Pe,minLength:()=>We,mime:()=>Qi,maxSize:()=>gt,maxLength:()=>Yt,lte:()=>le,lt:()=>Te,lowercase:()=>Bi,length:()=>Vt,includes:()=>Xi,gte:()=>V,gt:()=>je,endsWith:()=>Vi});Sa={};Se(Sa,{time:()=>Cm,duration:()=>Rm,datetime:()=>Am,date:()=>Zm,ZodISOTime:()=>za,ZodISODuration:()=>Ua,ZodISODateTime:()=>Ia,ZodISODate:()=>xa});Ia=m("ZodISODateTime",(e,t)=>{td.init(e,t),A.init(e,t)});xa=m("ZodISODate",(e,t)=>{id.init(e,t),A.init(e,t)});za=m("ZodISOTime",(e,t)=>{nd.init(e,t),A.init(e,t)});Ua=m("ZodISODuration",(e,t)=>{rd.init(e,t),A.init(e,t)});P_=m("ZodError",Lm),re=m("ZodError",Lm,{Parent:Error}),Mm=Mt(re),Jm=Jt(re),Fm=Ft(re),Km=Kt(re),Wm=zr(re),Hm=Ur(re),Bm=Or(re),Gm=Er(re),Xm=Tr(re),Ym=jr(re),Vm=Pr(re),Qm=Nr(re),Gs=new WeakMap;z=m("ZodType",(e,t)=>{return x.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Nt(e,"input"),output:Nt(e,"output")}}),e.toJSONSchema=Gc(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Mm(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Fm(e,n,r),e.parseAsync=async(n,r)=>Jm(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Km(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Wm(e,n,r),e.decode=(n,r)=>Hm(e,n,r),e.encodeAsync=async(n,r)=>Bm(e,n,r),e.decodeAsync=async(n,r)=>Gm(e,n,r),e.safeEncode=(n,r)=>Xm(e,n,r),e.safeDecode=(n,r)=>Ym(e,n,r),e.safeEncodeAsync=async(n,r)=>Vm(e,n,r),e.safeDecodeAsync=async(n,r)=>Qm(e,n,r),qt(e,"ZodType",{check(...n){let r=this.def;return this.clone(O.mergeDefs(r,{checks:[...r.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return de(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check($o(n,r))},superRefine(n,r){return this.check(_o(n,r))},overwrite(n){return this.check(xe(n))},optional(){return Zt(this)},exactOptional(){return eo(this)},nullable(){return Ct(this)},nullish(){return Zt(Ct(this))},nonoptional(n){return oo(this,n)},array(){return ai(this)},or(n){return In([this,n])},and(n){return Ka(this,n)},transform(n){return Zi(this,zn(n))},default(n){return no(this,n)},prefault(n){return ao(this,n)},catch(n){return lo(this,n)},pipe(n){return Zi(this,n)},readonly(){return po(this)},describe(n){let r=this.clone();return ue.add(r,{description:n}),r},meta(...n){if(n.length===0)return ue.get(this);let r=this.clone();return ue.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ue.get(e)?.description},configurable:!0}),e}),an=m("_ZodString",(e,t)=>{Gt.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Xc(e,r,i,a);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,qt(e,"_ZodString",{regex(...r){return this.check(Hi(...r))},includes(...r){return this.check(Xi(...r))},startsWith(...r){return this.check(Yi(...r))},endsWith(...r){return this.check(Vi(...r))},min(...r){return this.check(We(...r))},max(...r){return this.check(Yt(...r))},length(...r){return this.check(Vt(...r))},nonempty(...r){return this.check(We(1,...r))},lowercase(r){return this.check(Bi(r))},uppercase(r){return this.check(Gi(r))},trim(){return this.check(en())},normalize(...r){return this.check(qi(...r))},toLowerCase(){return this.check(tn())},toUpperCase(){return this.check(nn())},slugify(){return this.check(rn())}})}),ei=m("ZodString",(e,t)=>{Gt.init(e,t),an.init(e,t),e.email=(n)=>e.check(Vr(on,n)),e.url=(n)=>e.check(Wi(ti,n)),e.jwt=(n)=>e.check(ga(_n,n)),e.emoji=(n)=>e.check(ia(sn,n)),e.guid=(n)=>e.check(Di(At,n)),e.uuid=(n)=>e.check(Qr($e,n)),e.uuidv4=(n)=>e.check(qr($e,n)),e.uuidv6=(n)=>e.check(ea($e,n)),e.uuidv7=(n)=>e.check(ta($e,n)),e.nanoid=(n)=>e.check(na(un,n)),e.guid=(n)=>e.check(Di(At,n)),e.cuid=(n)=>e.check(ra(ln,n)),e.cuid2=(n)=>e.check(aa(dn,n)),e.ulid=(n)=>e.check(oa(cn,n)),e.base64=(n)=>e.check(fa(yn,n)),e.base64url=(n)=>e.check(pa(bn,n)),e.xid=(n)=>e.check(sa(mn,n)),e.ksuid=(n)=>e.check(ua(fn,n)),e.ipv4=(n)=>e.check(la(pn,n)),e.ipv6=(n)=>e.check(da(vn,n)),e.cidrv4=(n)=>e.check(ca(gn,n)),e.cidrv6=(n)=>e.check(ma(hn,n)),e.e164=(n)=>e.check(va($n,n)),e.datetime=(n)=>e.check(Am(n)),e.date=(n)=>e.check(Zm(n)),e.time=(n)=>e.check(Cm(n)),e.duration=(n)=>e.check(Rm(n))});A=m("ZodStringFormat",(e,t)=>{D.init(e,t),an.init(e,t)}),on=m("ZodEmail",(e,t)=>{Hl.init(e,t),A.init(e,t)});At=m("ZodGUID",(e,t)=>{Kl.init(e,t),A.init(e,t)});$e=m("ZodUUID",(e,t)=>{Wl.init(e,t),A.init(e,t)});ti=m("ZodURL",(e,t)=>{Bl.init(e,t),A.init(e,t)});sn=m("ZodEmoji",(e,t)=>{Gl.init(e,t),A.init(e,t)});un=m("ZodNanoID",(e,t)=>{Xl.init(e,t),A.init(e,t)});ln=m("ZodCUID",(e,t)=>{Yl.init(e,t),A.init(e,t)});dn=m("ZodCUID2",(e,t)=>{Vl.init(e,t),A.init(e,t)});cn=m("ZodULID",(e,t)=>{Ql.init(e,t),A.init(e,t)});mn=m("ZodXID",(e,t)=>{ql.init(e,t),A.init(e,t)});fn=m("ZodKSUID",(e,t)=>{ed.init(e,t),A.init(e,t)});pn=m("ZodIPv4",(e,t)=>{ad.init(e,t),A.init(e,t)});Oa=m("ZodMAC",(e,t)=>{sd.init(e,t),A.init(e,t)});vn=m("ZodIPv6",(e,t)=>{od.init(e,t),A.init(e,t)});gn=m("ZodCIDRv4",(e,t)=>{ud.init(e,t),A.init(e,t)});hn=m("ZodCIDRv6",(e,t)=>{ld.init(e,t),A.init(e,t)});yn=m("ZodBase64",(e,t)=>{dd.init(e,t),A.init(e,t)});bn=m("ZodBase64URL",(e,t)=>{md.init(e,t),A.init(e,t)});$n=m("ZodE164",(e,t)=>{fd.init(e,t),A.init(e,t)});_n=m("ZodJWT",(e,t)=>{vd.init(e,t),A.init(e,t)});ht=m("ZodCustomStringFormat",(e,t)=>{gd.init(e,t),A.init(e,t)});ii=m("ZodNumber",(e,t)=>{Mr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Yc(e,r,i,a),qt(e,"ZodNumber",{gt(r,i){return this.check(je(r,i))},gte(r,i){return this.check(V(r,i))},min(r,i){return this.check(V(r,i))},lt(r,i){return this.check(Te(r,i))},lte(r,i){return this.check(le(r,i))},max(r,i){return this.check(le(r,i))},int(r){return this.check(Ai(r))},safe(r){return this.check(Ai(r))},positive(r){return this.check(je(0,r))},nonnegative(r){return this.check(V(0,r))},negative(r){return this.check(Te(0,r))},nonpositive(r){return this.check(le(0,r))},multipleOf(r,i){return this.check(dt(r,i))},step(r,i){return this.check(dt(r,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});Xe=m("ZodNumberFormat",(e,t)=>{hd.init(e,t),ii.init(e,t)});ni=m("ZodBoolean",(e,t)=>{Jr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Vc(e,n,r,i)});ri=m("ZodBigInt",(e,t)=>{Fr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Qc(e,r,i,a),e.gte=(r,i)=>e.check(V(r,i)),e.min=(r,i)=>e.check(V(r,i)),e.gt=(r,i)=>e.check(je(r,i)),e.gte=(r,i)=>e.check(V(r,i)),e.min=(r,i)=>e.check(V(r,i)),e.lt=(r,i)=>e.check(Te(r,i)),e.lte=(r,i)=>e.check(le(r,i)),e.max=(r,i)=>e.check(le(r,i)),e.positive=(r)=>e.check(je(BigInt(0),r)),e.negative=(r)=>e.check(Te(BigInt(0),r)),e.nonpositive=(r)=>e.check(le(BigInt(0),r)),e.nonnegative=(r)=>e.check(V(BigInt(0),r)),e.multipleOf=(r,i)=>e.check(dt(r,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});kn=m("ZodBigIntFormat",(e,t)=>{yd.init(e,t),ri.init(e,t)});ja=m("ZodSymbol",(e,t)=>{bd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>qc(e,n,r,i)});Pa=m("ZodUndefined",(e,t)=>{$d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>tm(e,n,r,i)});Na=m("ZodNull",(e,t)=>{_d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>em(e,n,r,i)});Aa=m("ZodAny",(e,t)=>{kd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>rm(e,n,r,i)});Za=m("ZodUnknown",(e,t)=>{wd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>am(e,n,r,i)});Ca=m("ZodNever",(e,t)=>{Sd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>nm(e,n,r,i)});Ra=m("ZodVoid",(e,t)=>{Id.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>im(e,n,r,i)});Sn=m("ZodDate",(e,t)=>{xd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>om(e,r,i,a),e.min=(r,i)=>e.check(V(r,i)),e.max=(r,i)=>e.check(le(r,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});La=m("ZodArray",(e,t)=>{zd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ym(e,n,r,i),e.element=t.element,qt(e,"ZodArray",{min(n,r){return this.check(We(n,r))},nonempty(n){return this.check(We(1,n))},max(n,r){return this.check(Yt(n,r))},length(n,r){return this.check(Vt(n,r))},unwrap(){return this.element}})});oi=m("ZodObject",(e,t)=>{Td.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>bm(e,n,r,i),O.defineLazy(e,"shape",()=>{return t.shape}),qt(e,"ZodObject",{keyof(){return xn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:He()})},loose(){return this.clone({...this._zod.def,catchall:He()})},strict(){return this.clone({...this._zod.def,catchall:wn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return O.extend(this,n)},safeExtend(n){return O.safeExtend(this,n)},merge(n){return O.merge(this,n)},pick(n){return O.pick(this,n)},omit(n){return O.omit(this,n)},partial(...n){return O.partial(Un,this,n[0])},required(...n){return O.required(On,this,n[0])}})});si=m("ZodUnion",(e,t)=>{Ki.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ka(e,n,r,i),e.options=t.options});Ma=m("ZodXor",(e,t)=>{si.init(e,t),jd.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ka(e,n,r,i),e.options=t.options});Ja=m("ZodDiscriminatedUnion",(e,t)=>{si.init(e,t),Pd.init(e,t)});Fa=m("ZodIntersection",(e,t)=>{Nd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>$m(e,n,r,i)});Wa=m("ZodTuple",(e,t)=>{Kr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>_m(e,n,r,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});pt=m("ZodRecord",(e,t)=>{Dd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>km(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType});Ga=m("ZodMap",(e,t)=>{Ad.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>gm(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Pe(...n)),e.nonempty=(n)=>e.check(Pe(1,n)),e.max=(...n)=>e.check(gt(...n)),e.size=(...n)=>e.check(Xt(...n))});Xa=m("ZodSet",(e,t)=>{Zd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>hm(e,n,r,i),e.min=(...n)=>e.check(Pe(...n)),e.nonempty=(n)=>e.check(Pe(1,n)),e.max=(...n)=>e.check(gt(...n)),e.size=(...n)=>e.check(Xt(...n))});vt=m("ZodEnum",(e,t)=>{Cd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(r,i,a)=>sm(e,r,i,a),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,i)=>{let a={};for(let o of r)if(n.has(o))a[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new vt({...t,checks:[],...O.normalizeParams(i),entries:a})},e.exclude=(r,i)=>{let a={...t.entries};for(let o of r)if(n.has(o))delete a[o];else throw Error(`Key ${o} not found in enum`);return new vt({...t,checks:[],...O.normalizeParams(i),entries:a})}});Ya=m("ZodLiteral",(e,t)=>{Rd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>um(e,n,r,i),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]}})});Va=m("ZodFile",(e,t)=>{Ld.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>cm(e,n,r,i),e.min=(n,r)=>e.check(Pe(n,r)),e.max=(n,r)=>e.check(gt(n,r)),e.mime=(n,r)=>e.check(Qi(Array.isArray(n)?n:[n],r))});Qa=m("ZodTransform",(e,t)=>{Md.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>vm(e,n,r,i),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Rt(e.constructor.name);n.addIssue=(a)=>{if(typeof a==="string")n.issues.push(O.issue(a,n.value,t));else{let o=a;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(O.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((a)=>{return n.value=a,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});Un=m("ZodOptional",(e,t)=>{Wr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>wa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});qa=m("ZodExactOptional",(e,t)=>{Jd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>wa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});to=m("ZodNullable",(e,t)=>{Fd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>wm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});io=m("ZodDefault",(e,t)=>{Kd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Im(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});ro=m("ZodPrefault",(e,t)=>{Wd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>xm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});On=m("ZodNonOptional",(e,t)=>{Hd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Sm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});so=m("ZodSuccess",(e,t)=>{Bd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>mm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});uo=m("ZodCatch",(e,t)=>{Gd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>zm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});co=m("ZodNaN",(e,t)=>{Xd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>lm(e,n,r,i)});ui=m("ZodPipe",(e,t)=>{Hr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Um(e,n,r,i),e.in=t.in,e.out=t.out});li=m("ZodCodec",(e,t)=>{ui.init(e,t),Br.init(e,t)});mo=m("ZodPreprocess",(e,t)=>{ui.init(e,t),Yd.init(e,t)}),fo=m("ZodReadonly",(e,t)=>{Vd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Om(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});vo=m("ZodTemplateLiteral",(e,t)=>{Qd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>dm(e,n,r,i)});go=m("ZodLazy",(e,t)=>{tc.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Tm(e,n,r,i),e.unwrap=()=>e._zod.def.getter()});yo=m("ZodPromise",(e,t)=>{ec.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Em(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});bo=m("ZodFunction",(e,t)=>{qd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>pm(e,n,r,i)});di=m("ZodCustom",(e,t)=>{ic.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,r,i)=>fm(e,n,r,i)});up=Wc,lp=Hc;N_={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(mr||(mr={}));b={...Nm,...Dm,iso:Sa},Z_=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);vp={};Se(vp,{string:()=>M_,number:()=>J_,date:()=>W_,boolean:()=>F_,bigint:()=>K_});W(nc());ko=u,gp=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),hp=u.object({models:u.array(gp).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),yp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),bp=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),$p=u.object({models:u.array(yp).optional(),customModels:u.array(bp).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),_p=u.object({id:u.string()}),kp=u.object({models:u.array(_p).optional()}),wp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),Sp=u.object({models:u.array(wp).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),Ip=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),xp=u.object({models:u.array(Ip).optional(),baseUrl:u.string().optional()}),zp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),Up=u.object({models:u.array(zp).optional(),baseUrl:u.string().optional()}),H_=u.object({OpenAiCompatible:hp.optional(),AwsBedrock:$p.optional(),Cline:kp.optional(),Vertex:Sp.optional(),LiteLLM:xp.optional(),Anthropic:Up.optional()}),Op=u.object({id:u.string()}),Ep=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),fr=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),Ui=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),Tp=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:Ui.optional(),r2AccessSettings:Ui.optional(),azureAccessSettings:Ui.optional()}),jp=u.object({promptUploading:Tp.optional()}),B_=u.object({version:u.string(),providerSettings:H_.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(Op).optional(),remoteMCPServers:u.array(Ep).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:jp.optional(),globalRules:u.array(fr).optional(),globalWorkflows:u.array(fr).optional()}),G_=u.record(u.string(),u.string()),Pp=u.enum(["default","openai-responses","r1"]),X_={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},Np=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),Dp=u.enum(["active","preview","deprecated","legacy"]),Ap=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),Zp=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),Cp=u.object({reasoningDefaultOn:u.boolean().optional()}).catchall(u.unknown()),wo=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),maxInputTokens:u.number().optional(),capabilities:u.array(Np).optional(),apiFormat:Pp.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:Ap.optional(),thinkingConfig:Zp.optional(),status:Dp.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional(),metadata:Cp.optional()}),Rp=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),Lp=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),Mp=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),Y_=u.object({text:u.string(),usage:Mp,messages:u.array(u.custom()),toolCalls:u.array(Rp),iterations:u.number(),finishReason:Lp,model:u.object({id:u.string(),provider:u.string(),info:wo.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),Jp=u.enum(["low","medium","high","xhigh"]),V_=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),wo).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:Jp.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),Fp=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),Kp=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Wp=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Q_=u.object({actor:Kp,context:Wp,payload:u.record(u.string(),u.unknown()).optional()}),q_=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),ek=u.object({adapter:u.string(),botUserName:u.string().optional(),event:Fp,payload:u.record(u.string(),u.unknown()),ts:u.string()}),Hp=[];ik=["hooks","tools","commands","rules","skills","messageBuilders","providers","automationEvents"],nk=new Set(ik);sk=[".js",".ts"],Yp=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),Be=u.record(u.string(),u.string()),uk=u.object({toolName:u.string(),parameters:Be}),lk=u.object({toolName:u.string(),parameters:Be,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),dk=u.object({prompt:u.string(),attachments:u.array(u.string())}),ck=u.object({taskMetadata:Be}),mk=u.object({taskMetadata:Be,previousState:Be}),fk=u.object({taskMetadata:Be}),pk=u.object({taskMetadata:Be}),vk=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),Vp=u.object({clineVersion:u.string(),hookName:Yp,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:uk.optional(),postToolUse:lk.optional(),userPromptSubmit:dk.optional(),taskStart:ck.optional(),taskResume:mk.optional(),taskCancel:fk.optional(),taskComplete:pk.optional(),preCompact:vk.optional()}).passthrough();qp=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],$k=new Set(qp);jt={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};Ck={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};Lk={debug:()=>{},log:()=>{},error:()=>{}};Le=class Le extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};eu=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,tu=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;Fk=/^[[{\w-]$/;Xk={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},Yk={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
163
|
+
`,r:"\r",t:"\t"};qk=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;tw=[(e)=>JSON.parse(e),(e)=>JSON.parse(Vk(e)),ew];kw=ko.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth","popular"]),ww=ko.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),Sw=ko.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);yr={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};aS=["idle","running","pending","completed","failed","cancelled"],Oo=["rules","skills","workflows","plugins"],hv=Oo,oS=new Set(Oo);bv=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),$v=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),bv)});_v=["current_state","boundary_analysis","interface_proposal"],ve=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),ot=u.enum(["pending","in_progress","blocked","completed"]),kv=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),Tn=u.enum(["draft","in_review","finalized"]),pS=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),vS=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});gS=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),hS=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:R(u.string().min(1)).describe("Optional shutdown reason")}),yS=u.object({}),bS={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},$S={create:["status","taskId","summary","reason"]},_S=u.object({action:u.enum(["create","list","claim","complete","block"]),title:R(u.string().min(1)).describe("Task title"),description:R(u.string().min(1)).describe("Task details"),dependsOn:R(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:R(u.string().min(1)).describe("Optional assignee"),status:R(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:R(u.string()).describe("Task ID"),summary:R(u.string().min(1)).describe("Completion summary"),reason:R(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of bS[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),kS=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:R(u.string()).describe("Optional shared task list ID"),runMode:R(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:R(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),wS=u.object({status:R(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:R(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:R(u.boolean()).describe("Include completed/failed runs (default true)")}),SS=u.object({runId:u.string().min(1).describe("Run ID"),reason:R(u.string().min(1)).describe("Optional cancellation reason")}),IS=u.object({runId:R(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),xS=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:R(u.string().min(1)).describe("Optional task ID context")}),zS=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:R(u.string().min(1)).describe("Optional task ID context")}),US=u.object({unreadOnly:R(u.boolean()).describe("Only unread messages for read action (default true)")}),OS=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:R(u.string().min(1)).describe("Optional task ID context"),evidence:R(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:R(u.string().min(1)).describe("Planned next step")}),ES=u.object({}),TS=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default(_v).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),jS=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:R(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),PS=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),NS=u.object({outcomeId:u.string().describe("Outcome ID")}),DS=u.object({}),AS=u.object({teamId:u.string(),teamName:u.string(),members:u.array(pS),taskCounts:u.record(ot,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(Tn,u.number())}),wv=u.object({id:u.string(),title:u.string(),description:u.string(),status:ot,createdAt:ve,updatedAt:ve,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),ZS=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:ot,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(wv)}),u.object({action:u.literal("claim"),taskId:u.string(),status:ot,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:ot}),u.object({action:u.literal("block"),taskId:u.string(),status:ot})]),CS=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),Sv=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),RS=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:kv,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:ve.optional(),continueConversation:u.boolean().optional(),startedAt:ve,endedAt:ve.optional(),leaseOwner:u.string().optional(),heartbeatAt:ve.optional(),lastProgressAt:ve.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:Sv.optional()}),LS=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:ve,readAt:ve.optional()}),MS=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:Tn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:ve,finalizedAt:ve.optional()}),JS=u.object({outcomeId:u.string(),status:Tn,requiredSections:u.array(u.string())}),FS=u.object({agentId:u.string(),status:u.string()}),KS=u.object({runId:u.string(),status:kv}),WS=u.object({id:u.string(),toAgentId:u.string()}),HS=u.object({delivered:u.number()}),BS=u.object({id:u.string()}),GS=u.object({status:u.string()}),XS=u.object({fragmentId:u.string(),status:u.string()}),YS=u.object({outcomeId:u.string(),status:Tn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(Iv||={});xv=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];oI=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accesstoken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userinfo"]),sI=["id","balance","cost","secret"];lI=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];cI=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function Ye(e){let t=(r)=>{if(!r)return;if(typeof r==="string")try{return t(JSON.parse(r))}catch{return r.trim()||void 0}if(typeof r!=="object")return;let i=r;if(typeof i.error==="string"&&i.error.trim())return i.error;if(i.error&&typeof i.error==="object"&&typeof i.error.message==="string"&&i.error.message.trim())return i.error.message;if(typeof i.detail==="string"&&i.detail.trim())return i.detail;if(Array.isArray(i.errors))for(let a of i.errors){let o=t(a);if(o)return o}if("responseBody"in i&&i.responseBody!==r){let a=t(i.responseBody);if(a)return a}if("cause"in i&&i.cause!==r){let a=t(i.cause);if(a)return a}if(typeof i.message==="string"&&i.message.trim())return i.message;return},n=t(e);if(n)return n;return String(e)}function J(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function ge(e){let t=e?.trim().toLowerCase();return t?t:void 0}function To(e){return ge(J(e))??""}function jn(e){return ge(e.modelId)??""}function Pn(e){return[e.request.modelId,e.context.model.id,e.context.model.name,e.context.model.metadata?.family].filter(Boolean).join(" ").toLowerCase()}function Dv(e){let t=ge(e);return t?t.includes("anthropic")||t.includes("claude"):!1}function wI(e){return ge(e)?.includes("claude")??!1}function Eo(e){let t=ge(e);return t?/(^|[/:._-])qwen(?:$|[/:._-]|\d)/.test(t):!1}function q(e){let t=ge(e.family);if(t)return Dv(t);return SI(e.modelId)}function SI(e){if(!e)return!1;return Dv(e)}function Av(e){if(!e)return!1;return wI(e)}function yt(e){let t=ge(e.family);if(Eo(t))return!0;return Eo(e.modelId)}function jo(e){return/(^|[/\s])gemini-3([.-]|$)/.test(Pn(e))}function Zv(e){return/(^|[/\s])gemini-2\.5-pro([-\s]|$)/.test(Pn(e))}function Cv(e){let t=Pn(e);return/(^|[/\s])gemini-(?:\d(?:\.\d)?-)?flash(?:-lite|-image)?([-\s]|$)/.test(t)||t.includes("gemini-flash")}function Rv(e){let t=Pn(e);return jo(e)||/(^|[/\s])gemini-2\.5([-\s]|$)/.test(t)||t.includes("gemini-flash-latest")}function II(e,t){let n=ge(e),r=ge(t);if(!n||!r)return!1;if(n===r)return!0;return r==="qwen"?Eo(n):!1}function Nn(e,t){if("requiredCapability"in e&&e.requiredCapability&&!t.capabilities?.includes(e.requiredCapability))return!1;switch(e.matcher){case"anthropic-compatible":return q(t);case"model-family":return II(t.family,e.family);case"model-id":return ge(t.modelId)===ge(e.modelId)}}function Po(e,t,n){let r=n.provider.metadata?.routing?.reasoning;if(r?.format!==e)return!1;return r.routes.some((i)=>Nn(i,{modelId:t.modelId,family:J(n),capabilities:n.model.capabilities}))}function Dn(e,t){return To(t).includes("glm")||jn(e).includes("glm")}function Lv(e,t){let n=jn(e);return n==="minimax-m3"||n==="minimax/minimax-m3"}function Mv(e){return To(e)==="kimi-k2.6"}function Jv(e){return jn(e).includes("moonshotai/kimi-")}function Fv(e){return To(e).includes("deepseek")}function xI(e){let t=e.model.metadata?.reasoningDefaultOn;return typeof t==="boolean"?t:void 0}function zI(e){return e.providerId==="ollama"&&jn(e).includes("qwen3")}function Kv(e){return xI(e.context)??zI(e.request)}function An(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function De(){return{cache_control:{type:"ephemeral"}}}function Ae(e){let{providerId:t,providerOptionsKey:n,bucketOptions:r}=e,i=n!==t&&n!=="anthropic";return{[t]:r,...i?{[n]:r}:{}}}function Zn(e){let t={thinking:{type:e.thinkingType}};return{...Ae({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function Do(e){let t=e?.promptCacheRoutes??[No],n=e?.reasoningRoutes??[No];return{routing:{...t.length>0?{promptCache:{format:"anthropic-cache-control",routes:t.map((r)=>({...r}))}}:{},...n.length>0?{reasoning:{format:"anthropic-thinking",routes:n.map((r)=>({...r}))}}:{}}}}function Wv(e,t){let n={openaiCompatible:De(),[e]:De()},r=An(e);if(r!==e)n[r]=De();if(t)n.anthropic=De();return n}function Bv(e,t,n){if(!e)return;let r=e.content;if(typeof r==="string"){let a=[{type:"text",text:r,providerOptions:Wv(t,n)}];if(!n)a.push({type:"text",text:" "});e.content=a;return}if(!Array.isArray(r))return;let i=r.filter((a)=>a&&typeof a==="object"&&a.type==="text").length;for(let a=r.length-1;a>=0;a--){let o=r[a];if(o&&typeof o==="object"&&o.type==="text"){let s=i===1&&!n;if(r[a]={...o,providerOptions:Wv(t,n)},s)r.push({type:"text",text:" "});return}}}function $t(e,t){return Xv(e,t)!==void 0}function EI(e,t){return Xv(e,t)?.matcher==="anthropic-compatible"}function Gv(e){return e.metadata?.promptCacheStrategy==="anthropic-automatic"?"anthropic-automatic":void 0}function TI(e,t){if(Gv(t.provider)!=="anthropic-automatic")return;let n=J(t);if(q({modelId:e.modelId,family:n}))return{matcher:"anthropic-compatible"};if(yt({modelId:e.modelId,family:n}))return n?{matcher:"model-family",family:n}:{matcher:"model-id",modelId:e.modelId};return}function jI(e,t){if(Gv(t.provider)!=="anthropic-automatic")return;let n=J(t);return q({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function PI(e,t){if(t.provider.metadata?.routing)return;let n=J(t);return q({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function Xv(e,t){let n=t.provider.metadata?.routing?.promptCache;if(n){if(n.format!=="anthropic-cache-control")return;return n.routes.find((r)=>Nn(r,{modelId:e.modelId,family:J(t),capabilities:t.model.capabilities}))}return TI(e,t)}function mi(e,t){let n=t.provider.metadata?.routing?.reasoning;if(!n)return jI(e,t)??PI(e,t);if(n.format!=="anthropic-thinking")return;return n.routes.find((r)=>Nn(r,{modelId:e.modelId,family:J(t),capabilities:t.model.capabilities}))}function NI(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function DI(e,t){let n=t?.toLowerCase()??"",r=e?.toLowerCase()??"";if(n.includes("opus")||r.includes("opus"))return"opus";if(n.includes("sonnet")||r.includes("sonnet"))return"sonnet";if(n.includes("haiku")||r.includes("haiku"))return"haiku";return}function AI(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],a=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!a||!o)return;let s=Number.parseInt(a,10),d=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(d))return;return{major:s,minor:d}}function ZI(e){let t=DI(e.modelId,e.family),n=AI(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function Ze(e,t){let n=J(t);if(!mi(e,t)||!NI(t))return{kind:"none"};return ZI({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function Yv(e,t){let n=Ze(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:Zo({modelId:e.modelId,family:J(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...EI(e,t)?De():{}}}function Zo(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!q({modelId:e.modelId,family:e.family}))return;if(!e.effort)return bt;if(typeof e.maxTokens!=="number")return bt;if(e.maxTokens<=bt)return bt;let t=OI[e.effort];if(!t)return bt;let n=Math.min(e.maxTokens-1,UI);return Math.max(bt,Math.floor(n*t))}function Vv(e,t){let n=Ze(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let r=Zo({modelId:e.modelId,family:J(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof r==="number"&&r>=0)i.max_tokens=r;return Object.keys(i).length>0?i:void 0}function Qv(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=Ze(e,t),r=mi(e,t),i=J(t),a=n.kind==="none"&&r!==void 0,o=n.kind==="none"&&r===void 0&&($t(e,t)||yt({modelId:e.modelId,family:i})||q({modelId:e.modelId,family:i}));if(a||o)return;let s=n.kind==="anthropic-manual"?Zo({modelId:e.modelId,family:i,effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,d=e.reasoning?.enabled===!1&&!e.modelId.toLowerCase().includes("claude-fable"),l={...e.reasoning?.enabled===!0?{enabled:!0}:d?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof s==="number"&&s>=0)l.max_tokens=s;return Object.keys(l).length>0?l:void 0}var bt=1024,UI=128000,OI,No,Hv,Ve,Ao,Cn;var _t=F(()=>{OI={low:0.2,medium:0.5,high:0.8},No={matcher:"anthropic-compatible"},Hv={matcher:"model-family",family:"qwen",requiredCapability:"prompt-cache"};Ve=Do(),Ao=Do({promptCacheRoutes:[Hv],reasoningRoutes:[]}),Cn=Do({promptCacheRoutes:[No,Hv]})});function Co(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function CI(e){let{request:t,context:n,suppressions:r}=e;if(r.genericThinking)return{};if(t.reasoning?.enabled!==!0)return{};let i=J(n),a=Ze(t,n),o=mi(t,n)!==void 0,s=$t(t,n),d=q({modelId:t.modelId,family:i}),l=yt({modelId:t.modelId,family:i});if(!o&&(s||l||d))return{};if(o&&a.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function RI(e){let t=e.reasoning?.effort;if(e.suppressions.genericEffort||!t||e.reasoning?.enabled===!1||e.suppressEffortOptions)return{};if(!(!e.usesAnthropicReasoningRoute||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.usesAnthropicReasoningRoute?{}:{reasoningSummary:"auto"}}}function qv(e){let{request:t,context:n,target:r,suppressions:i}=e,a=J(n),o=Ze(t,n),s=mi(t,n)!==void 0,d=$t(t,n),l=q({modelId:t.modelId,family:a}),c=yt({modelId:t.modelId,family:a}),f=!s&&(d||c||l),v=Vv(t,n),p=d?De():{};return{...r==="openai-compatible"?{strictJsonSchema:!1}:{},...CI({request:t,context:n,suppressions:i}),...RI({reasoning:t.reasoning,usesAnthropicReasoningRoute:s,suppressEffortOptions:f,suppressions:i,anthropicReasoningPolicyKind:o.kind}),...v?{reasoning:v}:{},...p,...Co(t)}}var Ro=F(()=>{_t()});function LI(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function MI(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function eg(e,t){let n=LI(e);return n?{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}:void 0}function tg(e,t,n,r){if(!Dn(e,t))return;let i=MI(e);if(!i)return;return{openaiCompatible:i,...r?.includeProviderBuckets===!1?{}:{[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}}}var Lo;var Mo=F(()=>{Lo={routing:{reasoning:{format:"glm-thinking",routes:[{matcher:"model-family",family:"glm"},{matcher:"model-family",family:"glm-air"},{matcher:"model-family",family:"glm-flash"}]}}}});function JI(e){if(e.reasoning?.enabled===!0)return{thinking:{type:"adaptive"}};if(e.reasoning?.enabled===!1)return{thinking:{type:"disabled"}};return}function FI(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function ng(e,t){let n=JI(e);if(!n)return;return{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}}function rg(e,t){let n=FI(e);return n?Ae({providerId:e.providerId,providerOptionsKey:t,bucketOptions:n}):void 0}var ig;var Jo=F(()=>{ig={routing:{promptCache:{format:"anthropic-cache-control",routes:[{matcher:"anthropic-compatible"}]},reasoning:{format:"minimax-thinking",routes:[{matcher:"model-id",modelId:"MiniMax-M3",requiredCapability:"reasoning"}]}}}});function KI(e){return e?.enabled!==void 0||!!e?.effort||typeof e?.budgetTokens==="number"}function ag(e){let t=e.reasoning;if(!KI(t))return;if(t?.enabled===!1)return{exclude:!0};if(typeof t?.budgetTokens==="number")return{max_tokens:t.budgetTokens};if(t?.effort)return{effort:t.effort};if(t?.enabled===!0)return{enabled:!0};return}function og(e){return Mv(e.context)}function WI(e){return Jv(e.request)}function HI(e){return Fv(e.context)||e.request.providerId==="deepseek"}function sg(e){return Lv(e.request,e.context)}function ug(e){return e.request.providerId==="ollama"&&e.request.reasoning?.enabled===!1&&Kv({request:e.request,context:e.context})}function Fo(e){return Po("glm-thinking",e.request,e.context)}function BI(e){return e.context.provider.metadata?.routing?.reasoning?.format==="glm-thinking"}function GI(e){return Po("minimax-thinking",e.request,e.context)}function lg(e,t){let n=e.request.reasoning?.enabled;if(n===!0)return"enabled";if(n===!1)return"disabled";return t}function dg(e,t){if(!t)return;return Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:{reasoning:t}})}function YI(e){let t=e.request.reasoning;if(!t)return;if(jo(e)){if(t.enabled===!1)return{thinkingLevel:Cv(e)?"minimal":"low",includeThoughts:!1};if(!t.effort)return;return{thinkingLevel:t.effort,includeThoughts:!0}}if(t.enabled===!1)return{thinkingBudget:Zv(e)?128:0,includeThoughts:!1};if(typeof t.budgetTokens==="number")return{thinkingBudget:t.budgetTokens,includeThoughts:!0};if(!t.effort)return;return{thinkingBudget:XI[t.effort],includeThoughts:!0}}function mg(e,t){let n=[];for(let r of e)if(r.applies(t))n.push({rule:r});return n}function fg(e){return e.reduce((t,{rule:n})=>{if(!n.suppresses)return t;return{genericThinking:t.genericThinking||n.suppresses.genericThinking||void 0,genericEffort:t.genericEffort||n.suppresses.genericEffort||void 0,genericFanout:t.genericFanout||n.suppresses.genericFanout||void 0}},{})}function pg(e,t){return e.map(({rule:n})=>n.build(t))}var XI,VI,QI,qI,ex,tx,ix,nx,rx,ax,ox,sx,ux,lx,dx,cx,mx,fx,px,cg;var vg=F(()=>{_t();Ro();Mo();Jo();XI={low:1024,medium:8192,high:24576};VI={id:"provider.anthropic.direct",phase:"provider",description:"Direct Anthropic owns the anthropic bucket built by the base patch.",applies:(e)=>e.request.providerId==="anthropic",suppresses:{genericFanout:!0},build:()=>{return}},QI={id:"provider.google.direct",phase:"provider",description:"Direct Google owns the google bucket through Gemini thinkingConfig.",applies:(e)=>e.request.providerId==="google",suppresses:{genericFanout:!0},build:()=>{return}},qI={id:"adapter.openai",phase:"adapter",description:"OpenAI adapter targets the AI SDK openai bucket, not provider-id buckets.",applies:(e)=>e.target==="openai",build:(e)=>({openai:{strictJsonSchema:!1,...Co(e.request)}})},ex={id:"provider.openai-codex",phase:"provider",description:"Codex CLI uses OpenAI Responses options plus provider-id aliases.",applies:(e)=>e.request.providerId==="openai-codex",suppresses:{genericFanout:!0},build:(e)=>{let t={...e.compatibleOptions,instructions:e.request.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:t,...Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t})}}},tx={id:"provider.generic-fanout",phase:"provider-fanout",description:"Default OpenAI-compatible providers receive provider-id and camelCase alias buckets.",applies:(e)=>e.target!=="openai",build:(e)=>e.suppressions.genericFanout?void 0:Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:e.compatibleOptions})},ix={id:"provider.cline.reasoning",phase:"provider-reasoning",description:"Cline gateway accepts the shared gateway reasoning shape.",applies:(e)=>e.request.providerId==="cline",build:(e)=>dg(e,Qv(e.request,e.context))},nx={id:"provider.openrouter.reasoning",phase:"provider-reasoning",description:"OpenRouter expects reasoning controls under its first-class reasoning object.",applies:(e)=>e.request.providerId==="openrouter",suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>dg(e,ag(e.request))},rx={id:"provider.cline.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Cline-routed MiniMax M3 keeps the gateway reasoning shape instead of leaking generic thinking.",applies:(e)=>e.request.providerId==="cline"&&sg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:()=>{return}},ax={id:"provider.vercel-ai-gateway.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Vercel-routed MiniMax M3 uses the gateway reasoning include/exclude shape.",applies:(e)=>e.request.providerId==="vercel-ai-gateway"&&sg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>rg(e.request,e.providerOptionsKey)},ox={id:"provider.google-gemini.thinking-config",phase:"provider",description:"Google/Gemini/Vertex maps reasoning to thinkingConfig.",suppresses:{genericThinking:!0,genericEffort:!0},applies:(e)=>(e.request.providerId==="google"||e.request.providerId==="gemini"||e.request.providerId==="vertex")&&Rv(e)&&(!!e.request.reasoning?.effort||typeof e.request.reasoning?.budgetTokens==="number"||e.request.reasoning?.enabled===!1),build:(e)=>{let t=e.request.providerId==="vertex"?"vertex":"google",n=YI(e);if(!n)return;return{[t]:{thinkingConfig:n}}}},sx={id:"provider.cline.disable-thinking",phase:"provider",description:"Cline-routed non-Kimi-K2.6 Moonshot Kimi models use thinking.type=disabled when reasoning is disabled.",applies:(e)=>e.request.providerId==="cline"&&WI(e)&&e.request.reasoning?.enabled===!1&&!og(e),build:(e)=>Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:"disabled"})},ux={id:"family.kimi-k2.6.thinking",phase:"model-family",description:"Kimi K2.6 uses thinking.type and defaults to enabled when reasoning is unset.",applies:(e)=>og(e)&&e.request.providerId!=="openrouter",suppresses:{genericThinking:!0},build:(e)=>{let t=lg(e,"enabled");return t?Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},lx={id:"family.deepseek.thinking",phase:"model-family",description:"DeepSeek models use thinking.type only for explicit reasoning enabled/disabled.",applies:(e)=>e.request.providerId!=="openrouter"&&HI(e)&&!ug(e),suppresses:{genericThinking:!0},build:(e)=>{let t=lg(e,void 0);return t?Zn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},dx={id:"provider.ollama.reasoning-default-on.disable-none",phase:"provider-reasoning",description:"Ollama models whose reasoning defaults on need reasoningEffort=none when request reasoning is disabled.",applies:ug,build:(e)=>{let t={reasoningEffort:"none",reasoning:{effort:"none"}};return{...Ae({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}},cx={id:"provider.routing.glm-thinking.non-glm.suppress-generic-thinking",phase:"provider",description:"Providers with GLM thinking routing should not apply generic adaptive thinking to non-GLM models.",applies:(e)=>BI(e)&&e.request.reasoning?.enabled!==void 0&&!Fo(e),suppresses:{genericThinking:!0},build:()=>{return}},mx={id:"provider.routing.glm-thinking",phase:"model-overlay",description:"Providers routed to the GLM thinking format use thinking.type.",applies:Fo,suppresses:{genericThinking:!0},build:(e)=>eg(e.request,e.providerOptionsKey)},fx={id:"provider.routing.minimax-thinking",phase:"model-overlay",description:"Direct MiniMax M3 uses thinking.type adaptive/disabled.",applies:GI,suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>ng(e.request,e.providerOptionsKey)},px={id:"family.glm.routed-reasoning",phase:"model-overlay",description:"Routed GLM models use the generic reasoning include/exclude shape, not thinking.type.",applies:(e)=>!Fo(e)&&Dn(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>tg(e.request,e.context,e.providerOptionsKey,{includeProviderBuckets:e.request.providerId!=="openrouter"})},cg=[VI,QI,qI,ex,tx,ix,nx,rx,ax,ox,sx,ux,lx,dx,cx,mx,fx,px]});function gg(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";case"sapaicore":return"sapaicore";default:return"openai-compatible"}}function vx(e){let t={};for(let n of e){if(!n)continue;for(let[r,i]of Object.entries(n))t[r]={...t[r]??{},...i}}return t}function gx(e,t){return{anthropic:t,openaiCompatible:e}}function hg(e,t,n=gg(e.providerId)){let r=An(e.providerId),i=J(t),a=q({modelId:e.modelId,family:i}),o=a?Ze(e,t):void 0,s={request:e,context:t,providerOptionsKey:r,target:n,isAnthropicCompatibleModelId:a,anthropicReasoningPolicyKind:o?.kind},d=mg(cg,s),l=fg(d),c=qv({request:e,context:t,target:n,suppressions:l}),f=Yv(e,t),v={...s,compatibleOptions:c,anthropicOptions:f,suppressions:l};return vx([gx(c,f),...pg(d,v)])}var yg=F(()=>{_t();Ro();vg()});var wg={};fe(wg,{resetLangfuseTelemetryForTests:()=>_x,hasLangfuseTelemetryConfig:()=>_g,ensureLangfuseTelemetry:()=>hx,disposeLangfuseTelemetry:()=>kg,debugLangfuse:()=>he});function $g(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),r=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!r)return;return{baseUrl:t,publicKey:n,secretKey:r}}function _g(){return $g()!==void 0}async function hx(e){if(!_g())return!1;if(Qe!==void 0)return he(`cached readiness=${String(Qe)}`),Qe;if(!Rn)Rn=yx();return Qe=await Rn,he(`initialized readiness=${String(Qe)}`),Qe}async function yx(){let{registerDisposable:e}=await Promise.resolve().then(() => (ci(),Nv));e(kg);let t=$g();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:r},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),a=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});he(`creating span processor baseUrl=${t.baseUrl}`);let o=r.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(a);let c=bg(r);return he(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[a]}).register();let l=bg(r);return he(`registered NodeTracerProvider delegateReady=${String(l)}`),l}catch(n){return he(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function bg(e){let r=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(r&&r!=="NoopTracerProvider")}async function bx(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),he("forceFlush completed")}catch(e){he(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function kg(){try{await bx();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),he("shutdown completed")}catch(e){he(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function he(e){if(!$x())return;console.warn(`[langfuse-debug] ${e}`)}function $x(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function _x(){Qe=void 0,Rn=void 0}var Qe,Rn;function Sg(e){let t=e??globalThis.fetch;if(!t)throw Error("No fetch implementation is available. Pass one in the gateway or provider config.");return t}async function ee(e){let t=e.apiKey?.trim();if(t)return t;let r=(await e.apiKeyResolver?.())?.trim();if(r)return r;for(let i of e.apiKeyEnv??[]){let a=kx(i);if(a)return a}return}function kx(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let r=n.trim();return r.length>0?r:void 0}var Ig={};fe(Ig,{createOpenAIProviderModule:()=>Sx});import{createOpenAI as wx}from"@ai-sdk/openai";async function Sx(e,t){let n=await ee(e),r=wx({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r.responses(i)}}var xg=()=>{};function Ix(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function xx(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function zx(e){if(e.type!=="content")return null;let t=[],n=[];for(let r of e.value){if(!Ix(r)){n.push(r);continue}let i=xx(r);if(!i){n.push(r);continue}t.push(i);let a={type:"text",text:"(see following user message for image)"};n.push(a)}if(t.length===0)return null;return{stripped:{type:"content",value:n},media:t}}function Ux(e){let t=[],n=!1;for(let r of e){if(r.role!=="tool"){t.push(r);continue}let i=[],a=r.content.map((o)=>{if(o.type!=="tool-result")return o;let s=zx(o.output);if(!s)return o;return i.push(...s.media),{...o,output:s.stripped}});if(t.push({...r,content:a}),i.length>0)t.push({role:"user",content:i}),n=!0}return{prompt:t,mutated:n}}var Ln;var Ko=F(()=>{Ln={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=Ux(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var zg={};fe(zg,{createOpenAICompatibleProviderModule:()=>Dx});import{createOpenAICompatible as Ox}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as Ex}from"ai";function Tx(e){let t=e.options?.apiVersion;if(typeof t!=="string")return;let n=t.trim();return n.length>0?n:void 0}function jx(e){return e.pathname.startsWith("/openai/deployments/")&&!e.searchParams.has("api-version")}function Px(e,t){let n;try{n=new URL(e instanceof Request?e.url:e.toString())}catch{return e}if(!jx(n))return e;if(n.searchParams.set("api-version",t),e instanceof Request)return new Request(n.toString(),e);return typeof e==="string"?n.toString():n}function Nx(e){let t=Tx(e);if(!t)return e.fetch;let n=e.fetch??globalThis.fetch;if(!n)return e.fetch;let r=(a,o)=>n(Px(a,t),o),i=n;return r.preconnect=typeof i.preconnect==="function"?i.preconnect.bind(n):()=>{return},r}async function Dx(e,t){let n=await ee(e),r=Nx(e),i=Ox({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...r?{fetch:r}:{},includeUsage:!0});return{model:(a)=>Ex({model:i(a),middleware:Ln})}}var Ug=F(()=>{Ko()});function Ax(e){let t=e&&typeof e==="object"?e:{},n=t.minimax&&typeof t.minimax==="object"?t.minimax:void 0,r=n?.thinking&&typeof n.thinking==="object"?n.thinking:void 0;return typeof r?.type==="string"?r.type:void 0}async function Zx(e){if(typeof e==="string")return JSON.parse(e);if(e instanceof Uint8Array)return JSON.parse(new TextDecoder().decode(e));if(e instanceof ArrayBuffer)return JSON.parse(new TextDecoder().decode(e));return}function Cx(e){return JSON.stringify(e)}function Eg(e=fetch){let t=async(r,i)=>{let a=new Headers(i?.headers);if(a.get("x-cline-minimax-thinking-disabled")!=="1")return e(r,i);a.delete("x-cline-minimax-thinking-disabled");let s=await Zx(i?.body),d=s&&typeof s==="object"&&!Array.isArray(s)?s:void 0,l=d&&d.thinking===void 0?Cx({...d,thinking:{type:"disabled"}}):i?.body;return e(r,{...i,headers:a,body:l})},n=e;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e):()=>{},t}var Og;var Tg=F(()=>{Og={specificationVersion:"v3",transformParams:async({params:e})=>{if(Ax(e.providerOptions)!=="disabled")return e;return{...e,headers:{...e.headers,["x-cline-minimax-thinking-disabled"]:"1"}}}}});var jg={};fe(jg,{createAnthropicProviderModule:()=>Mx});import{createAnthropic as Rx}from"@ai-sdk/anthropic";import{wrapLanguageModel as Lx}from"ai";async function Mx(e,t){let n=await ee(e),r=t.provider.id==="minimax",i=Rx({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:r?Eg(e.fetch):e.fetch,name:t.provider.id});return{model:(a)=>{let o=i(a);return r?Lx({model:o,middleware:Og}):o}}}var Pg=F(()=>{Tg()});var Ng={};fe(Ng,{createGoogleProviderModule:()=>Fx});import{createGoogleGenerativeAI as Jx}from"@ai-sdk/google";async function Fx(e,t){let n=await ee(e),r=Jx({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r(i)}}var Dg=()=>{};var Zg={};fe(Zg,{createVertexProviderModule:()=>Hx});import{createVertex as Kx}from"@ai-sdk/google-vertex";import{createVertexAnthropic as Wx}from"@ai-sdk/google-vertex/anthropic";function Mn(e,t){let n=e?.[t];return typeof n==="string"&&n.trim().length>0?n:void 0}function Ag(e,t,n){let r=e?.[t];if(!r||typeof r!=="object"||Array.isArray(r))return;let i=r[n];return typeof i==="string"&&i.trim().length>0?i:void 0}async function Hx(e,t){let n=Mn(e.options,"project")??Mn(e.options,"projectId")??Ag(e.options,"gcp","projectId")??"",r=Mn(e.options,"location")??Mn(e.options,"region")??Ag(e.options,"gcp","region")??"us-central1",i=n||void 0,a=Sg(e.fetch);if(Av(t.model.id)){let s=Wx({project:n,location:r,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(d)=>s(d)}}let o=Kx({project:n,location:r,apiKey:i?void 0:await ee(e),googleAuthOptions:i?{projectId:i}:void 0,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(s)=>o(s)}}var Cg=()=>{};var Rg={};fe(Rg,{createBedrockProviderModule:()=>Xx});import{createAmazonBedrock as Bx}from"@ai-sdk/amazon-bedrock";import{fromNodeProviderChain as Wo}from"@aws-sdk/credential-providers";async function Xx(e){let t=Qx(e.options?.authentication),n=t==="api-key"||t==="apikey",r=H(e.options?.accessKeyId)!==void 0&&H(e.options?.secretAccessKey)!==void 0,i=H(e.options?.profile)!==void 0,o=!n&&(t==="iam"||t==="profile"||i)?void 0:await Vx(e,{includeEnvironment:n||!r}),s=Yx(e,{authentication:t,apiKey:o,hasDirectCredentials:r,hasProfile:i}),d=t==="iam"||t==="profile"||r||s!==void 0,l=Bx({region:H(e.options?.region),apiKey:n?o??"":o??(d?"":void 0),accessKeyId:s?void 0:H(e.options?.accessKeyId),secretAccessKey:s?void 0:H(e.options?.secretAccessKey),sessionToken:s?void 0:H(e.options?.sessionToken),baseURL:e.baseUrl??H(e.options?.endpoint),headers:e.headers,fetch:e.fetch,credentialProvider:s});return{model:(c)=>l(c)}}function Yx(e,t){let n=H(e.options?.region);if(typeof e.options?.credentialProvider==="function")return e.options.credentialProvider;if(t.authentication==="api-key"||t.authentication==="apikey"||t.apiKey)return;if(t.authentication==="profile"||t.hasProfile){let r=H(e.options?.profile);return Wo({ignoreCache:!0,...r?{profile:r}:{},...n?{clientConfig:{region:n}}:{}})}if(t.hasDirectCredentials)return;return n?Wo({clientConfig:{region:n}}):Wo()}async function Vx(e,t){let n=H(e.apiKey)??H(e.options?.apiKey)??H(e.options?.bedrockApiKey)??H(e.options?.awsBedrockApiKey);if(n)return n;let r=H(await e.apiKeyResolver?.());if(r)return r;if(!t.includeEnvironment)return;for(let i of e.apiKeyEnv??[]){if(Gx.has(i))continue;let a=H(process.env[i]);if(a)return a}return H(process.env.AWS_BEARER_TOKEN_BEDROCK)}function Qx(e){return e==="iam"||e==="api-key"||e==="apikey"||e==="profile"?e:void 0}function H(e){if(typeof e!=="string")return;let t=e.trim();return t.length>0?t:void 0}var Gx;var Lg=F(()=>{Gx=new Set(["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE"])});var Mg={};fe(Mg,{createMistralProviderModule:()=>t0});import{createMistral as qx}from"@ai-sdk/mistral";import{wrapLanguageModel as e0}from"ai";async function t0(e){let t=qx({apiKey:await ee(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>e0({model:t(n),middleware:Ln})}}var Jg=F(()=>{Ko()});var kt={};fe(kt,{createSapAiCoreProviderModule:()=>g0,createOpenCodeProviderModule:()=>l0,createOpenAICodexProviderModule:()=>s0,createDifyProviderModule:()=>d0,createClaudeCodeProviderModule:()=>o0});import{createClaudeCode as i0}from"ai-sdk-provider-claude-code";import{createCodexExec as n0}from"ai-sdk-provider-codex-cli";import{createDifyProvider as r0}from"dify-ai-provider";function fi(e){return e.options??{}}async function o0(e){let t=i0(fi(e));return{model:(n)=>t(n)}}async function s0(e){let t=n0(fi(e));return{model:(n)=>t(n)}}async function u0(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),r=await e();for(let i of t)for(let a of process.listeners(i))if(!n.get(i)?.has(a))process.removeListener(i,a);return r}async function l0(e){let t=await u0(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(fi(e))});return{model:(n)=>t(n)}}async function d0(e){let t=await ee(e),n=r0({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...fi(e)});return{model:(r)=>n(r,{apiKey:t})}}function Ce(e,t){let n=e[t];return typeof n==="string"&&n.trim().length>0?n.trim():void 0}function c0(e){let t=e.replace(/\/+$/,"");return/\/oauth\/token$/i.test(t)?t:`${t}/oauth/token`}function m0(e,t){return Boolean(e.apiKey?.trim()||e.baseUrl?.trim()||Ce(t,"clientId")||Ce(t,"clientSecret")||Ce(t,"tokenUrl"))}function f0(e,t){let n=Ce(t,"clientId"),r=Ce(t,"clientSecret")??e.apiKey?.trim(),i=Ce(t,"tokenUrl"),a=e.baseUrl?.trim();if(!n||!r||!i||!a){if(!m0(e,t))return;let o=[!n?"sap.clientId":void 0,!r?"sap.clientSecret":void 0,!i?"sap.tokenUrl":void 0,!a?"baseUrl":void 0].filter(Boolean);throw Error(`SAP AI Core provider is missing required configuration: ${o.join(", ")}.`)}return{authentication:"OAuth2ClientCredentials",clientId:n,clientSecret:r,name:e.providerId,tokenServiceUrl:c0(i),url:a.replace(/\/+$/,"")}}function p0(e){let t=e.api;if(t==="orchestration"||t==="foundation-models")return t;if(e.useOrchestrationMode===!1)return"foundation-models";return"orchestration"}async function v0(){return import(a0)}async function g0(e){let t=fi(e),n=f0(e,t),{createSAPAIProvider:r}=await v0(),i=Ce(t,"deploymentId"),a=r({name:e.providerId,...i?{deploymentId:i}:{resourceGroup:Ce(t,"resourceGroup")},api:p0(t),...n?{destination:n}:{},...typeof t.defaultSettings==="object"&&t.defaultSettings!==null&&!Array.isArray(t.defaultSettings)?{defaultSettings:t.defaultSettings}:{}});return{model:(o)=>a(o)}}var a0="@jerome-benoit/sap-ai-provider";var wt=()=>{};var oe={};fe(oe,{normalizeUsage:()=>Xg,createVertexProvider:()=>Hn,createSapAiCoreProvider:()=>Qo,createOpenCodeProvider:()=>Yo,createOpenAIProvider:()=>Jn,createOpenAICompatibleProvider:()=>Fn,createOpenAICodexProvider:()=>Xo,createMistralProvider:()=>Bo,createGoogleProvider:()=>Wn,createDifyProvider:()=>Vo,createClaudeCodeProvider:()=>Go,createBedrockProvider:()=>Bn,createAnthropicProvider:()=>Kn});import{jsonSchema as h0,streamText as y0}from"ai";import{nanoid as Fg}from"nanoid";import{z as b0}from"zod";function $0(e,t,n){let r=Wg(e.messages,n),i=q({modelId:e.modelId,family:J(t)});for(let a=r.length-1;a>=0;a--)if(r[a]?.role==="user"){Bv(r[a],e.providerId,i);break}return r}async function _0(e){try{return(await Promise.resolve().then(() => wg)).ensureLangfuseTelemetry(e)}catch{return!1}}function Wg(e,t){let n=[];for(let r of e){let i=[];for(let a of r.content){if(a.type==="text"){i.push({type:"text",text:Q(a.text)});continue}if(a.type==="reasoning"){let o=a.metadata,s=o?.signature,d=o?.redactedData;i.push({type:"reasoning",text:Q(a.text),...typeof s==="string"||typeof d==="string"?{providerOptions:{anthropic:{...typeof s==="string"?{signature:s}:{},...typeof d==="string"?{redactedData:d}:{}}}}:{}});continue}if(a.type==="file"){i.push({type:"file",path:a.path,content:a.content});continue}if(a.type==="image"){i.push({type:"image",image:a.image,mediaType:a.mediaType});continue}if(a.type==="tool-call"){let o=a.metadata,s=o?.thoughtSignature??o?.signature??o?.thought_signature;i.push({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...typeof s==="string"?{providerOptions:{google:{thoughtSignature:s}}}:{}});continue}if(a.type==="tool-result")i.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:a.output,isError:a.isError??!1})}if(i.length>0)n.push({role:r.role,content:i});else if(r.role==="user"||r.role==="assistant")n.push({role:r.role,content:""})}return Io(t,n,{assistantToolCallArgKey:"input"})}function k0(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:h0(w0(t.inputSchema),{validate:async(n)=>{let r=await b0.fromJSONSchema(t.inputSchema).safeParseAsync(n);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}]))}function w0(e){if(e.type==="object")return e;return{type:"object",...e}}function Hg(e){return e.provider.capabilities?.includes("provider-tools")??!1}function Bg(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function Gg(e){return Bg(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:Hg(e.context)?"provider":"runtime"}})}function S0(e){return Gg({metadata:Bg(Ho(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function I0(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function x0(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function _e(e,...t){for(let n of t){let r=e[n];if(typeof r==="number"&&Number.isFinite(r))return r;if(typeof r==="string"&&r.trim().length>0&&Number.isFinite(Number(r)))return Number(r)}return 0}function ce(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function ke(e,...t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return ce(n)??0}function z0(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let r=n;if(r.usage&&typeof r.usage==="object")return r.usage}return}function U0(e,t){if(!t||typeof t!=="object")return;let n=t,r=ce(n.input),i=ce(n.output);if(r===void 0||i===void 0)return;let a=ce(n.cacheRead)??0,o=ce(n.cacheWrite)??r*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*r+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*a+e.cacheWriteTokens/1e6*o}function Xg(e,t,n){let r=e&&typeof e==="object"?e:{},i=z0(t),a=t&&typeof t==="object"?t:{},o=a.gateway&&typeof a.gateway==="object"?a.gateway:{},s=r.raw&&typeof r.raw==="object"?r.raw:r,d=ce(s.cost_details?.upstream_inference_cost)??ce(s.upstream_inference_cost),l=ce(s.market_cost)??ce(s.marketCost)??ce(o.marketCost),c=ce(s.cost)??ce(o.cost),f=l!==void 0||c!==void 0||d!==void 0,p=(s.is_byok===!0||s.isByok===!0||o.is_byok===!0||o.isByok===!0)&&c!==void 0&&d!==void 0,y=c!==void 0&&c>0?c:d??c,I=l??(p?c+d:y),j={inputTokens:ke(r,"inputTokens","total")||_e(r,"inputTokens","input_tokens","prompt_tokens")||_e(s,"promptTokenCount","prompt_token_count"),outputTokens:ke(r,"outputTokens","total")||_e(r,"outputTokens","output_tokens","completion_tokens")||_e(s,"candidatesTokenCount","candidates_token_count"),cacheReadTokens:ke(r,"inputTokens","cacheRead")||ke(r,"inputTokenDetails","cacheReadTokens")||_e(r,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||ke(r,"prompt_tokens_details","cached_tokens")||ke(s,"prompt_tokens_details","cached_tokens")||_e(s,"cachedContentTokenCount")||_e(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:ke(r,"inputTokens","cacheWrite")||ke(r,"inputTokenDetails","cacheWriteTokens")||ke(r,"prompt_tokens_details","cache_write_tokens")||_e(r,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||ke(s,"prompt_tokens_details","cache_write_tokens")||_e(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||_e(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},U=I!==void 0?I:f?void 0:U0(j,n);return{...j,...typeof U==="number"?{totalCost:U}:{}}}function Kg(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},r=e;for(let i of Object.keys(e))try{n(r[i])}catch{}}function Ho(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,r=n?.google&&typeof n.google==="object"?n.google:void 0,i=n?.vertex&&typeof n.vertex==="object"?n.vertex:void 0;if(typeof t.thoughtSignature!=="string"&&typeof(r?.thoughtSignature??i?.thoughtSignature)==="string")t.thoughtSignature=r?.thoughtSignature??i?.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof r?.thought_signature==="string")t.thought_signature=r.thought_signature;return Object.keys(t).length>0?t:void 0}async function*O0(e,t,n,r,i){let a=!1,o=new Set,s,d,l,c;try{if(e.fullStream)for await(let p of e.fullStream){if(p.type==="text-delta"){let y=p.textDelta??p.text??p.delta;if(y)yield{type:"text-delta",text:y};continue}if(p.type==="reasoning-delta"||p.type==="reasoning"){let y=p.textDelta??p.text??p.reasoning;if(y)yield{type:"reasoning-delta",text:y,metadata:Ho(p)};continue}if(p.type==="tool-call"){a=!0;let y=p.toolCallId??p.id??`tool_${Fg()}`;o.add(y);let I=p.input??p.args??{},j=typeof I==="string"?I:JSON.stringify(I);yield{type:"tool-call-delta",toolCallId:y,toolName:p.toolName??p.name??"tool",input:typeof I==="string"?void 0:I,inputText:j,metadata:Gg({metadata:Ho(p),request:t,context:n})};continue}if(p.type==="tool-error"){a=!0;let y=p.toolCallId??p.id??`tool_${Fg()}`,I=o.has(y);o.add(y);let j=p.toolName??p.name??"tool",U=p.input??p.args??{},C=typeof U==="string"?U:JSON.stringify(U),w=p.error===void 0?"Tool input was rejected by the model adapter":Ye(p.error);yield{type:"tool-call-delta",toolCallId:y,toolName:j,input:I?void 0:typeof U==="string"?void 0:U,inputText:I?void 0:C,metadata:S0({part:p,errorMessage:w,request:t,context:n,toolName:j})};continue}if(p.type==="finish")l=p.usage??p.totalUsage,c=p.providerMetadata,s=p.finishReason??p.rawFinishReason??p.reason;if(p.type==="error"){d=i?.current??Ye(p.error);break}if(p.type==="abort")break}else if(e.textStream)for await(let p of e.textStream)yield{type:"text-delta",text:p}}catch(p){d=i?.current??Ye(p)}let f,v;if(d)f=l,v=c;else if(e.usage)try{f=await e.usage}catch(p){if(!d)d=i?.current??Ye(p);f=l,v=c}else f=l,v=c;if(f)yield{type:"usage",usage:Xg(f,v,r)};yield{type:"finish",reason:d?"error":x0(s,a),error:d}}async function E0(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:r}=await Promise.resolve().then(() => (xg(),Ig));return r(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:r}=await Promise.resolve().then(() => (Ug(),zg));return r(t,n)}case"anthropic":{let{createAnthropicProviderModule:r}=await Promise.resolve().then(() => (Pg(),jg));return r(t,n)}case"google":{let{createGoogleProviderModule:r}=await Promise.resolve().then(() => (Dg(),Ng));return r(t,n)}case"vertex":{let{createVertexProviderModule:r}=await Promise.resolve().then(() => (Cg(),Zg));return r(t,n)}case"bedrock":{let{createBedrockProviderModule:r}=await Promise.resolve().then(() => (Lg(),Rg));return r(t)}case"mistral":{let{createMistralProviderModule:r}=await Promise.resolve().then(() => (Jg(),Mg));return r(t)}case"claude-code":{let{createClaudeCodeProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"openai-codex":{let{createOpenAICodexProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"opencode":{let{createOpenCodeProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"dify":{let{createDifyProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}case"sapaicore":{let{createSapAiCoreProviderModule:r}=await Promise.resolve().then(() => (wt(),kt));return r(t)}}}function me(e){return async(t)=>({async*stream(n,r){let i=r.logger,a,o={current:void 0};try{let s=await E0(e,t,r),d=await _0(t.providerId),l=Hg(r)?void 0:k0(n),c=I0(n),f=typeof c==="string"&&c.trim().length>0,v=f?void 0:c;a=y0({model:s.model(r.model.id),messages:$t(n,r)?$0(n,r,v):Wg(n.messages,v),...f?{system:c}:{},tools:l,temperature:n.temperature,...n.maxTokens!==void 0?{maxOutputTokens:n.maxTokens}:{},abortSignal:n.signal,experimental_telemetry:{isEnabled:d},providerOptions:hg(n,r,e),onError:({error:p})=>{let y=Ye(p);if(o.current=y,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:p,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${y}`,{providerId:n.providerId,severity:"error"});En(r.telemetry,{component:"llms",operation:"provider.stream",error:p,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}})}}),Kg(a),yield*O0(a,n,r,r.model.metadata?.pricing,o)}catch(s){Kg(a);let d=o.current??Ye(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${d}`,{providerId:n.providerId,severity:"error"});En(r.telemetry,{component:"llms",operation:"provider.create_or_stream",error:s,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}}),yield{type:"finish",reason:"error",error:d}}}})}var Jn,Fn,Kn,Wn,Hn,Bn,Bo,Go,Xo,Yo,Vo,Qo;var te=F(()=>{ci();_t();yg();Jn=me("openai"),Fn=me("openai-compatible"),Kn=me("anthropic"),Wn=me("google"),Hn=me("vertex"),Bn=me("bedrock"),Bo=me("mistral"),Go=me("claude-code"),Xo=me("openai-codex"),Yo=me("opencode"),Vo=me("dify"),Qo=me("sapaicore")});var zt;((S)=>{S.ANTHROPIC="anthropic";S.CLAUDE_CODE="claude-code";S.CLINE="cline";S.OPENAI_COMPATIBLE="openai-compatible";S.OPENAI_NATIVE="openai-native";S.OPENAI_CODEX="openai-codex";S.OPENAI_CODEX_CLI="openai-codex-cli";S.OPENCODE="opencode";S.BEDROCK="bedrock";S.VERTEX="vertex";S.GEMINI="gemini";S.OLLAMA="ollama";S.LMSTUDIO="lmstudio";S.DEEPSEEK="deepseek";S.XAI="xai";S.TOGETHER="together";S.FIREWORKS="fireworks";S.GROQ="groq";S.POOLSIDE="poolside";S.CEREBRAS="cerebras";S.SAMBANOVA="sambanova";S.NEBIUS="nebius";S.BASETEN="baseten";S.REQUESTY="requesty";S.LITELLM="litellm";S.HUGGINGFACE="huggingface";S.VERCEL_AI_GATEWAY="vercel-ai-gateway";S.V0="v0";S.AIHUBMIX="aihubmix";S.HICAP="hicap";S.NOUS_RESEARCH="nousResearch";S.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";S.WANDB="wandb";S.XIAOMI="xiaomi";S.KILO="kilo";S.ZAI="zai";S.ZAI_CODING_PLAN="zai-coding-plan";S.QWEN="qwen";S.QWEN_CODE="qwen-code";S.DOUBAO="doubao";S.MISTRAL="mistral";S.MOONSHOT="moonshot";S.ASKSAGE="asksage";S.MINIMAX="minimax";S.DIFY="dify";S.OCA="oca";S.SAPAICORE="sapaicore";S.OPENROUTER="openrouter"})(zt||={});var jh={openai:"openai-compatible",togetherai:"together","sap-ai-core":"sapaicore"},_i=Object.values(zt);function qn(e){return _i.includes(e)}function G(e){let t=e.trim();return jh[t]??t}function ki(e){return G(e.routingProviderId??e.providerId)}te();import{nanoid as ds}from"nanoid";ci();var qo={version:1781052005326,providers:{aihubmix:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM 5 Vision Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.7042,output:3.09848,cacheRead:0.169008,cacheWrite:0},releaseDate:"2026-05-09",family:"glmv"},"qwen3.6-max-preview":{id:"qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.27,output:7.61,cacheRead:0.1268,cacheWrite:1.585},releaseDate:"2026-05-09",family:"qwen3.6"},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.69,cacheRead:0.0282,cacheWrite:0.3525},releaseDate:"2026-05-09",family:"qwen3.6"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"doubao-seed-2-0-lite-260428":{id:"doubao-seed-2-0-lite-260428",name:"Doubao Seed 2.0 Lite 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.51,cacheRead:0.01692,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"doubao-seed-2-0-mini-260428":{id:"doubao-seed-2-0-mini-260428",name:"Doubao Seed 2.0 Mini 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.03,output:0.28,cacheRead:0.00564,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"alicloud-deepseek-v4-flash":{id:"alicloud-deepseek-v4-flash",name:"DeepSeek V4 Flash (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"alicloud-deepseek-v4-pro":{id:"alicloud-deepseek-v4-pro",name:"DeepSeek V4 Pro (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:3.38,cacheRead:0.13,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deep-deepseek-v4-flash":{id:"deep-deepseek-v4-flash",name:"DeepSeek V4 Flash (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deep-deepseek-v4-pro":{id:"deep-deepseek-v4-pro",name:"DeepSeek V4 Pro (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"coding-xiaomi-mimo-v2.5":{id:"coding-xiaomi-mimo-v2.5",name:"Coding Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"coding-xiaomi-mimo-v2.5-pro":{id:"coding-xiaomi-mimo-v2.5-pro",name:"Coding Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5":{id:"xiaomi-mimo-v2.5",name:"Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.44,output:2.2,cacheRead:0.088,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-free":{id:"xiaomi-mimo-v2.5-free",name:"Xiaomi MiMo-V2.5 (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-pro":{id:"xiaomi-mimo-v2.5-pro",name:"Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:3.3,cacheRead:0.22,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5-pro-free":{id:"xiaomi-mimo-v2.5-pro-free",name:"Xiaomi MiMo-V2.5-Pro (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-opus-4-7-think":{id:"claude-opus-4-7-think",name:"Claude Opus 4.7 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding GLM 5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.22,cacheRead:0.013,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"coding-glm-5.1-free":{id:"coding-glm-5.1-free",name:"Coding GLM 5.1 (free)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm-free"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.17,output:1.01,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen3.6"},"alicloud-glm-5.1":{id:"alicloud-glm-5.1",name:"GLM-5.1 (Alibaba Cloud)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.84,output:3.38,cacheRead:0.169,cacheWrite:1.05625},releaseDate:"2026-03-27",family:"glm"},"zai-glm-5.1":{id:"zai-glm-5.1",name:"GLM-5.1 (Z.ai)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7":{id:"coding-minimax-m2.7",name:"Coding MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding MiniMax M2.7 (Free)",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-free"},"coding-minimax-m2.7-highspeed":{id:"coding-minimax-m2.7-highspeed",name:"Coding MiniMax M2.7 Highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"doubao-seed-2-0-code-preview":{id:"doubao-seed-2-0-code-preview",name:"Doubao Seed 2.0 Code Preview",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"doubao-seed-2-0-pro":{id:"doubao-seed-2-0-pro",name:"Doubao Seed 2.0 Pro",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1":{id:"claude-opus-4-1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-1-20250805":{id:"claude-opus-4-1-20250805",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-0":{id:"claude-opus-4-0",name:"Claude Opus 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-opus-4-20250514":{id:"claude-opus-4-20250514",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4-0":{id:"claude-sonnet-4-0",name:"Claude Sonnet 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-sonnet-4-20250514":{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-5-haiku-latest":{id:"claude-3-5-haiku-latest",name:"Claude Haiku 3.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"}},baseten:{"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B":{id:"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B",name:"Nemotron Ultra",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"Deepseek V4 Pro",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron Super",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.75,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM 5",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI GPT 120B",contextWindow:128072,maxInputTokens:128072,maxTokens:128072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},bedrock:{"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},releaseDate:"2026-06-09",family:"claude-fable"},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-05-28",family:"claude-opus"},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5.5,output:33,cacheRead:0.55,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:101376,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.75,output:16.5,cacheRead:0.275,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxInputTokens:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxInputTokens:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"au.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"au.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"au.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2025-09-29",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"jp.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (JP)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxInputTokens:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxInputTokens:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},cerebras:{"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxInputTokens:131072,maxTokens:40000,capabilities:["tools","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-10"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/models/deepseek-v4-flash":{id:"accounts/fireworks/models/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-fast":{id:"accounts/fireworks/routers/kimi-k2p6-fast",name:"Kimi K2.6 Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-turbo":{id:"accounts/fireworks/routers/kimi-k2p6-turbo",name:"Kimi K2.6 Turbo",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/qwen3p6-plus":{id:"accounts/fireworks/models/qwen3p6-plus",name:"Qwen 3.6 Plus",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-04",family:"qwen"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/routers/glm-5p1-fast":{id:"accounts/fireworks/routers/glm-5p1-fast",name:"GLM 5.1 Fast",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.8,output:8.8,cacheRead:0.52,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/minimax-m2p5":{id:"accounts/fireworks/models/minimax-m2p5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"accounts/fireworks/models/kimi-k2p5":{id:"accounts/fireworks/models/kimi-k2p5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.3,cacheRead:0.035,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},gemini:{"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},groq:{"moonshotai/kimi-k2-instruct-0905":{id:"moonshotai/kimi-k2-instruct-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"groq/compound":{id:"groq/compound",name:"Compound",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"groq/compound-mini":{id:"groq/compound-mini",name:"Compound Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-03-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-23",family:"qwen"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B Versatile",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B Instant",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"}},kilo:{"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"xAI: Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.08333},releaseDate:"2026-05-19"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.08333},releaseDate:"2026-05-07"},"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:3.5,cacheRead:0.375,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"stealth/claude-opus-4.7":{id:"stealth/claude-opus-4.7",name:"Stealth: Claude Opus 4.7 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"stealth/claude-sonnet-4.6":{id:"stealth/claude-sonnet-4.6",name:"Stealth: Claude Sonnet 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.4,output:12,cacheRead:0.24,cacheWrite:3},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"stealth/claude-opus-4.6":{id:"stealth/claude-opus-4.6",name:"Stealth: Claude Opus 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:204800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.625,output:4.875,cacheRead:0.1625,cacheWrite:2.03125},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxInputTokens:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxInputTokens:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxInputTokens:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxInputTokens:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16",family:"nemotron"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxInputTokens:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxInputTokens:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxInputTokens:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-02-27"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M3":{id:"MiniMax-M3",name:"MiniMax-M3",contextWindow:512000,maxInputTokens:512000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"}},nebius:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:200000,maxInputTokens:200000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:1},releaseDate:"2026-03-01"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxInputTokens:120000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"PrimeIntellect/INTELLECT-3":{id:"PrimeIntellect/INTELLECT-3",name:"INTELLECT-3",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.02,cacheWrite:0.25},releaseDate:"2026-01-25"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163000,maxInputTokens:160000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.45,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-01-20"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxInputTokens:1e5,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:124000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"moonshotai/Kimi-K2.5-fast":{id:"moonshotai/Kimi-K2.5-fast",name:"Kimi-K2.5-fast",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxInputTokens:30000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10",family:"nemotron"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507-fast":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507-fast",name:"Qwen3-235B-A22B-Thinking-2507-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-07-25"},"Qwen/Qwen3-Next-80B-A3B-Thinking-fast":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking-fast",name:"Qwen3-Next-80B-A3B-Thinking-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.1875},releaseDate:"2025-07-25"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:250000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"Qwen/Qwen3.5-397B-A17B-fast":{id:"Qwen/Qwen3.5-397B-A17B-fast",name:"Qwen3.5-397B-A17B-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"openai/gpt-oss-120b-fast":{id:"openai/gpt-oss-120b-fast",name:"gpt-oss-120b-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2025-06-10"},"deepseek-ai/DeepSeek-V3.2-fast":{id:"deepseek-ai/DeepSeek-V3.2-fast",name:"DeepSeek-V3.2-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2025-01-27"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:190000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"MiniMaxAI/MiniMax-M2.5-fast":{id:"MiniMaxAI/MiniMax-M2.5-fast",name:"MiniMax-M2.5-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxInputTokens:60000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20",family:"nemotron"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15",family:"nemotron"},"meta-llama/Meta-Llama-3.1-8B-Instruct":{id:"meta-llama/Meta-Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.02,output:0.06,cacheRead:0.002,cacheWrite:0.025},releaseDate:"2024-07-23"}},ollama:{"nemotron-3-ultra":{id:"nemotron-3-ultra",name:"nemotron-3-ultra",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"minimax-m3":{id:"minimax-m3",name:"minimax-m3",contextWindow:512000,maxInputTokens:512000,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6":{id:"kimi-k2.6",name:"kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxInputTokens:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxInputTokens:1e5,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"nex-agi/nex-n2-pro:free":{id:"nex-agi/nex-n2-pro:free",name:"Nex-N2-Pro (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-08"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"Nemotron 3 Ultra (free)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-02",family:"qwen"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-29"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-05-27",family:"claude-opus"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-05-19",family:"gemini-flash"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12",family:"claude-opus"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08",family:"ring"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05",family:"gpt"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30",family:"granite"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"mistral-medium"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"alpha"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27",family:"claude-haiku"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27",family:"claude-sonnet"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-04-27",family:"gemini-flash"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27",family:"gemini-pro"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.68,output:3.41,cacheRead:0.34,cacheWrite:0},releaseDate:"2026-04-27",family:"kimi"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt-mini"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.8,cacheRead:0,cacheWrite:0.375},releaseDate:"2026-04-27",family:"qwen3.5"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1875,output:1.125,cacheRead:0,cacheWrite:0.234375},releaseDate:"2026-04-27",family:"qwen3.6"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.0983,output:0.1966,cacheRead:0.0197,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-23",family:"ling"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.289,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-21",family:"claude-opus"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"Ling-2.6-flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.01,output:0.03,cacheRead:0.002,cacheWrite:0},releaseDate:"2026-04-21",family:"ling"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.68,output:3.41,cacheRead:0.34,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"moonshotai/kimi-k2.6:free":{id:"moonshotai/kimi-k2.6:free",name:"Kimi K2.6 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-20",family:"qwen"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.063,output:0.21,cacheRead:0.021,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen3.6 35B-A3B",contextWindow:262140,maxInputTokens:262140,maxTokens:262140,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07",family:"claude-opus"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.33,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:0.36,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.22,output:0.85,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31",family:"grok"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.98,output:3.08,cacheRead:0.182,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20",family:"reka"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.279,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"seed"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen3.5-9B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"qwen3.5"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26",family:"seed"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.92,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-09",family:"qwen"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.11,output:0.8,cacheRead:0.07,cacheWrite:0},releaseDate:"2026-02-04",family:"qwen"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-01-27",family:"solar-pro"},"openai/gpt-audio":{id:"openai/gpt-audio",name:"GPT Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"gpt"},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"GPT Audio Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"o-mini"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.9,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax-M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.29,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:228000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-10",family:"gpt-codex"},"relace/relace-search":{id:"relace/relace-search",name:"Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"GLM-4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:24000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-07",family:"rnj"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"nova"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.2,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.15,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"trinity-mini"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2002,output:0.8001,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2288,output:0.3432,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-27",family:"glm"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2.5,output:12.5,cacheRead:0.625,cacheWrite:0},releaseDate:"2025-10-31",family:"nova"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:32000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-10-30",family:"mistral"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"qwen"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM-4.6",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.43,output:1.74,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.78,output:3.9,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-08",family:"qwen"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0.325},releaseDate:"2025-09-08",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3-Next 80B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-instruct:free":{id:"qwen/qwen3-next-80b-a3b-instruct:free",name:"Qwen3 Next 80B A3B Instruct (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3-Next 80B-A3B (Thinking)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-08-28",family:"qwen"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nemotron Nano 9B v2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-08-13",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"jamba"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.039,output:0.18,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.029,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04815,output:0.19305,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-28",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131070,maxInputTokens:131070,maxTokens:131070,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.125,output:0.85,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"z-ai/glm-4.5-air:free":{id:"z-ai/glm-4.5-air:free",name:"GLM 4.5 Air (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"Llama 3.3 Nemotron Super 49B v1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"nemotron"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-24",family:"glm"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:free":{id:"qwen/qwen3-coder:free",name:"Qwen3 Coder 480B A35B (free)",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-21",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.075,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05",family:"gemini"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.15,cacheRead:0.35,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-07",family:"gemini-pro"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen3 235B-A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.455,output:1.82,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20",family:"gemini-pro"},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Gemma 3 12B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"gemma"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-02-17",family:"mistral"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-02-12",family:"o"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:65536,maxInputTokens:65536,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-lite"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-micro"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-pro"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-11-19",family:"mistral-large"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-08"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-11-04",family:"claude"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral Large 3",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:1.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2024-11-01",family:"mistral-large"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.36,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Command R",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Command R+",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28",family:"llama"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"o-mini"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:65536,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-04-17",family:"mistral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-02-26",family:"mistral-large"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2024-01-25",family:"qwen"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-08",family:"auto"},"openai/gpt-4":{id:"openai/gpt-4",name:"GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28",family:"gpt"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5-turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01",family:"gpt"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxInputTokens:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-03-20",family:"gemini-pro"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"gpt-5.5":{id:"gpt-5.5",name:"gpt-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic--claude-4.7-opus":{id:"anthropic--claude-4.7-opus",name:"anthropic--claude-4.7-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gpt-5.4":{id:"gpt-5.4",name:"gpt-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},together:{"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:512300,maxInputTokens:512300,maxTokens:512300,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"Qwen/Qwen3.7-Max":{id:"Qwen/Qwen3.7-Max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"qwen"},"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxInputTokens:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.1,output:4.4,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"Qwen/Qwen3-Coder-Next-FP8":{id:"Qwen/Qwen3-Coder-Next-FP8",name:"Qwen3 Coder Next FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"deepseek-ai/DeepSeek-V3-1":{id:"deepseek-ai/DeepSeek-V3-1",name:"DeepSeek V3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek-V3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.25,output:1.25,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.88,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxInputTokens:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-01",family:"qwen3.7-plus"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-28",family:"step"},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"mistral-medium"},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20",family:"grok-build"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini"},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2.6"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxInputTokens:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-13",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.4,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0,cacheWrite:0.02},releaseDate:"2026-01-29",family:"step"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:131000,maxInputTokens:131000,maxTokens:40000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.25,output:2.75,cacheRead:2.25,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-18",family:"gpt-codex"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-17",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:8000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-19",family:"gpt"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"moonshotai/kimi-k2-thinking-turbo":{id:"moonshotai/kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:205000,maxInputTokens:205000,maxTokens:205000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","files","tools","temperature"],pricing:{input:0.4,output:1.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"moonshotai/kimi-k2-turbo":{id:"moonshotai/kimi-k2-turbo",name:"Kimi K2 Turbo",contextWindow:256000,maxInputTokens:256000,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxInputTokens:256000,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:1e5,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-30",family:"longcat"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxInputTokens:66000,maxTokens:16000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxInputTokens:128000,maxTokens:272000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:72,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.35,output:0.75,cacheRead:0.25,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16",family:"o-pro"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.16,output:0.64,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.5,output:7.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-01",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxInputTokens:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxInputTokens:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxInputTokens:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-01",family:"qwen"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01",family:"trinity"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-01-01",family:"glm-flash"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.27,output:1.12,cacheRead:0.135,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:65536,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2024-11-24",family:"claude-opus"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-opus-4-8@default":{id:"claude-opus-4-8@default",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"zai-org/glm-5-maas":{id:"zai-org/glm-5-maas",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai-org/glm-4.7-maas":{id:"zai-org/glm-4.7-maas",name:"GLM-4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-06",family:"glm"},"deepseek-ai/deepseek-v3.2-maas":{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.056,cacheWrite:0},releaseDate:"2025-12-17",family:"deepseek"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"moonshotai/kimi-k2-thinking-maas":{id:"moonshotai/kimi-k2-thinking-maas",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-13",family:"kimi-thinking"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"deepseek-ai/deepseek-v3.1-maas":{id:"deepseek-ai/deepseek-v3.1-maas",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"deepseek"},"qwen/qwen3-235b-a22b-instruct-2507-maas":{id:"qwen/qwen3-235b-a22b-instruct-2507-maas",name:"Qwen3 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-13",family:"qwen"},"openai/gpt-oss-120b-maas":{id:"openai/gpt-oss-120b-maas",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.36,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b-maas":{id:"openai/gpt-oss-20b-maas",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"meta/llama-3.3-70b-instruct-maas":{id:"meta/llama-3.3-70b-instruct-maas",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"meta/llama-4-maverick-17b-128e-instruct-maas":{id:"meta/llama-4-maverick-17b-128e-instruct-maas",name:"Llama 4 Maverick 17B 128E Instruct",contextWindow:524288,maxInputTokens:524288,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.35,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxInputTokens:161000,maxTokens:161000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxInputTokens:64000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"}},xiaomi:{"mimo-v2.5-pro-ultraspeed":{id:"mimo-v2.5-pro-ultraspeed",name:"MiMo-V2.5-Pro-UltraSpeed",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.305,output:2.61,cacheRead:0.0108,cacheWrite:0},releaseDate:"2026-06-08",family:"mimo"},"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2-omni":{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-pro":{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-flash":{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"}},zai:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var Vg=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function Yg(e){return[...new Set(e)]}var Qg=Object.fromEntries(Vg.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function tz(e){let t=Vg.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return Yg([...t,"nousresearch",e]);return Yg([...t,e])}var T0=4096,j0=4096;function qg(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function Gn(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[r,i])=>{let a=qg(n.releaseDate),o=qg(i.releaseDate);if(a!==o)return o-a;return t.localeCompare(r)}))}function P0(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return Array.from(new Set(t))}function N0(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function D0(e){let t=e?.context,n=e?.input;if(typeof t==="number"&&typeof n==="number")return Math.min(t,n);return n??t??T0}function A0(e,t){let n=D0(t.limit),r=t.limit?.output??j0,i=t.limit?.context;return{id:e,name:t.name||e,contextWindow:i,maxInputTokens:n,maxTokens:Math.floor(r),capabilities:P0(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:N0(t.status),releaseDate:t.release_date,family:t.family}}function Z0(e){return e.status==="deprecated"}function C0(e){let t={};for(let[n,r]of Object.entries(Qg)){let i=e[n];if(!i?.models)continue;let a={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||Z0(s))continue;a[o]=A0(o,s)}if(Object.keys(a).length>0)t[r]=Gn(a)}return t}async function rz(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let r=await n.json();return C0(r)}var eh,th=new Map;function uz(){return eh??=Object.fromEntries(Object.entries(qo.providers).map(([e,t])=>[e,Gn(t)])),eh}function ih(e){let t=th.get(e);if(t)return t;let n=Gn(qo.providers[e]??{});return th.set(e,n),n}var R0=new Set(["gpt-5.5","gpt-5.4","gpt-5.4-mini"]);function L0(e){if(R0.has(e))return!0;let t=e.match(/^gpt-(\d+\.\d+)/);return t?Number.parseFloat(t[1])>5.4:!1}function M0(e,t){if(!e.includes("gpt-5.5"))return t;return{...t,contextWindow:400000,maxInputTokens:272000,maxTokens:128000}}function nh(e){return Object.fromEntries(Object.entries(e).filter(([t])=>L0(t)).map(([t,n])=>[t,M0(t,n)]))}_t();Mo();Jo();var J0="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm",F0="gpt-5.4",Xn={path:"apiKey",label:"API Key",type:"password",placeholder:"Enter API key...",description:"API key issued by the provider.",secret:!0},ah={path:"baseUrl",label:"Base URL",type:"url",placeholder:"https://...",description:"Base endpoint used for provider requests."},K0=[{path:"gcp.projectId",label:"Google Cloud Project ID",type:"text",placeholder:"my-gcp-project",description:"Google Cloud project that owns the Vertex AI resources.",required:!0},{path:"gcp.region",label:"Vertex Region",type:"text",placeholder:"us-central1",description:"Vertex AI location to run models in.",defaultValue:"us-central1"},{...Xn,label:"API Key",description:"Optional Google API key for Gemini models. Vertex Anthropic models use Google Cloud credentials."}],W0=[{path:"aws.authentication",label:"Authentication",type:"select",description:"Credential source for Amazon Bedrock requests.",options:[{label:"AWS SDK / IAM",value:"iam"},{label:"AWS Profile",value:"profile"},{label:"API Key",value:"api-key"}],defaultValue:"iam"},{path:"aws.region",label:"AWS Region",type:"text",placeholder:"us-east-1",description:"AWS region for Bedrock runtime requests."},{path:"aws.profile",label:"AWS Profile",type:"text",placeholder:"default",description:"Named AWS profile when using profile authentication."},{path:"aws.accessKey",label:"Access Key ID",type:"password",placeholder:"AKIA...",secret:!0},{path:"aws.secretKey",label:"Secret Access Key",type:"password",secret:!0},{path:"aws.sessionToken",label:"Session Token",type:"password",secret:!0},{path:"apiKey",label:"Bedrock API Key",type:"password",description:"Optional Bedrock bearer token for API key authentication.",secret:!0},{path:"aws.endpoint",label:"Endpoint URL",type:"url",placeholder:"https://bedrock-runtime.us-east-1.amazonaws.com",description:"Optional custom Bedrock runtime endpoint."},{path:"aws.useCrossRegionInference",label:"Cross-Region Inference",type:"boolean"},{path:"aws.useGlobalInference",label:"Global Inference",type:"boolean"},{path:"aws.usePromptCache",label:"Prompt Cache",type:"boolean"}],H0=[{path:"oca.mode",label:"OCA Mode",type:"select",options:[{label:"External",value:"external"},{label:"Internal",value:"internal"}],defaultValue:"external"},Xn,{path:"oca.usePromptCache",label:"Prompt Cache",type:"boolean"}],rh=[Xn,ah,{path:"apiLine",label:"API Line",type:"select",description:"Regional API line for Qwen routing.",options:[{label:"International",value:"international"},{label:"China",value:"china"}]}];function B0(e){let t=[];if(e.apiKeyEnv?.length)t.push(Xn);if(e.defaults?.baseUrl?.trim())t.push(ah);return t}function G0(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function X0(e){if(!e?.length)return;return[...new Set(e)]}function oh(e){return X0([...e.capabilities??[],...e.popular!==void 0?["popular"]:[]])}function sh(e){let t=e.configFields??B0(e),n={...e.metadata,configFields:t};if(e.popular!==void 0)n.popularRank=e.popular;return n}function ts(e){return G0(ih(e))}function es(e){let t=Object.entries(ts("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function Y0(){function e(t){return{...t==="opus"?es((r)=>r.includes("opus")):t==="haiku"?es((r)=>r.includes("haiku")):es((r)=>r.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function V0(){return nh(ts("openai-native"))}function Q0(e,t){let n={id:e,name:e};if(t?.family==="openai-compatible")n.contextWindow=128000,n.maxInputTokens=128000,n.capabilities=["streaming","tools","images"];if(t?.id==="qwen"||t?.id==="qwen-code")n.family="qwen",n.capabilities=["prompt-cache"];return n}function q0(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"prompt-cache":n.add("prompt-cache");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let r={};if(t.family)r.family=t.family;if(t.pricing)r.pricing=t.pricing;if(t.status)r.status=t.status;if(t.releaseDate)r.releaseDate=t.releaseDate;if(typeof t.metadata?.reasoningDefaultOn==="boolean")r.reasoningDefaultOn=t.metadata.reasoningDefaultOn;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(r).length>0?r:void 0}}function e4(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function t4(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":case"sap-ai-core":return"ai-sdk-community";default:return"openai-compatible"}}var i4=[{id:"openai-compatible",name:"OpenAI Compatible",description:"OpenAI-compatible chat completions endpoint",family:"openai-compatible",popular:7,capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"cline",name:"Cline",description:"Cline API endpoint",family:"openai-compatible",popular:1,capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:"openrouter",defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${Uo().apiBaseUrl}/api/v1`}},metadata:Cn},{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",popular:3,capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/kimi-k2p6",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"poolside",name:"Poolside",description:"OpenAI-compatible code intelligence models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"poolside/laguna-m.1",apiKeyEnv:["POOLSIDE_API_KEY"],defaults:{baseUrl:"https://inference.poolside.ai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",popular:8,capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://api-inference.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:Cn},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",protocol:"openai-responses",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:Ve},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:rh,metadata:Ao},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:rh,metadata:Ao},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"},metadata:Lo},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"},metadata:Lo},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2-omni",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",popular:5,capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:Cn},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",popular:6,defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:J0},configFields:H0,metadata:Ve},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}}],is=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",popular:2,capabilities:["reasoning","oauth"],defaultModelId:F0,modelsFactory:V0,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"hide"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"hide"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",popular:4,capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:Ve},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:Y0,defaults:{baseUrl:""},configFields:[]},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",popular:9,capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY","GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION"],modelsProviderId:"vertex",configFields:K0,metadata:Ve},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",popular:7,capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",configFields:W0,metadata:Ve},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic/v1"},metadata:ig},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""},configFields:[]},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"sap-ai-core",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:Ve},...i4];function n4(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return ts(e.modelsProviderId);return{}}function uh(e){let t=n4(e),n=oh(e),r=sh(e),i=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:Q0(e.defaultModelId,e)}:{},a=Object.keys(i),o=e.defaultModelId||a[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??e4(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:o,capabilities:n,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??t4(e),source:"system",metadata:r},models:i}}function lh(e){let t=uh(e),n=oh(e),r=sh(e),i=Object.values(t.models).map((o)=>q0(e.id,o)),a=i.length>0?i:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||a[0]?.id||"default",models:a,capabilities:n,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:r}}var ns=is.map(uh),hz=Object.fromEntries(ns.map((e)=>[e.provider.id,e]));var dh=new Map;async function r4(e){let t=dh.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (te(),oe))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (te(),oe))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (te(),oe))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (te(),oe))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (te(),oe))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (te(),oe))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (te(),oe))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (te(),oe))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (te(),oe))).createDifyProvider;case"sap-ai-core":return(await Promise.resolve().then(() => (te(),oe))).createSapAiCoreProvider}})();return dh.set(e,n),n}function a4(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var pi=is.map((e)=>({manifest:lh(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await r4(a4(e))})}));ci();async function*ch(e){for await(let t of e)yield t}function mh(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function o4(e,t){let n=new Map;for(let r of e.models)n.set(r.id,{...r});for(let r of t?.models??[])n.set(r.id,{...r,providerId:e.id});return Array.from(n.values())}function fh(e,t){let n=e?.routing||t?.routing?{...e?.routing??{},...t?.routing??{}}:void 0,r={...e??{},...t??{},...n?{routing:n}:{}};return Object.keys(r).length>0?r:void 0}function s4(e,t){return{id:t,name:t,providerId:e.id}}class rs{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:mh(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let r=o4(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??r[0]?.id;if(!i)return;return{...mh(t.manifest),defaultModelId:i,models:r,metadata:fh(t.manifest.metadata,n?.metadata)}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,r=t.models.find((i)=>i.id===n)??s4(t,n);return{provider:t,model:r}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let a=await t.loadProvider?.();if(!a?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=a.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let r=this.providerConfigs.get(e),i=fh(t.defaults?.metadata,r?.metadata);return{manifest:n,config:{providerId:e,apiKey:r?.apiKey??t.defaults?.apiKey,apiKeyResolver:r?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:r?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:r?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...r?.headers??{}},timeoutMs:r?.timeoutMs??t.defaults?.timeoutMs,fetch:r?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...r?.options??{}},metadata:i},createProvider:t.createProvider}}}var u4=1024;class ph{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,r=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,a=r==="low"||r==="medium"||r==="high"?r:void 0,o=typeof n==="boolean"||a!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:a,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:e.options?.metadata??this.defaults?.metadata,reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}function Yn(e){return typeof e==="number"&&Number.isFinite(e)&&e>0}function as(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function l4(e){let t;try{t=JSON.stringify({systemPrompt:e.systemPrompt,messages:e.messages,tools:e.tools})}catch{t=[as(e.systemPrompt),as(e.messages),as(e.tools)].join(`
|
|
164
|
+
`)}return xo(t.length)}function d4(e){if(!Yn(e.requestedMaxTokens))return;let t=[Math.floor(e.requestedMaxTokens)];if(Yn(e.model.maxOutputTokens))t.push(Math.floor(e.model.maxOutputTokens));if(Yn(e.model.contextWindow)){let n=e.outputReserveTokens??u4,r=e.model.contextWindow-e.estimatedInputTokens-n;if(r<=0){e.onContextOverflow?.({contextWindow:e.model.contextWindow,estimatedInputTokens:e.estimatedInputTokens,reserveTokens:n});return}t.push(Math.floor(r))}if(t.length===0)return;return Math.max(1,Math.floor(Math.min(...t)))}class vh{registry;logger;telemetry;constructor(e={}){if(this.registry=new rs(e.fetch),this.logger=e.logger,this.telemetry=e.telemetry,e.builtins!==!1){let t=new Set(e.builtins??pi.map((n)=>n.manifest.id));for(let n of pi)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new ph(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),r=await n.createProvider(n.config),i=Yn(e.maxTokens)?d4({requestedMaxTokens:e.maxTokens,model:t.model,estimatedInputTokens:l4(e),onContextOverflow:(o)=>{this.logger?.log("Estimated prompt tokens exceed model context window",{severity:"warn",providerId:t.provider.id,modelId:t.model.id,...o})}}):void 0,a=await r.stream({...e,modelId:t.model.id,providerId:t.provider.id,maxTokens:i},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger,telemetry:this.telemetry});return ch(a)}}function os(e){return new vh(e)}function c4(){let e=new Map;for(let t of ns)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,r])=>[n,{...r}]))});return e}var vi=c4(),St=new Map,et=new Map;function qe(e){return et.get(e)??vi.get(e)}function gh(){let e=Array.from(vi.keys()),t=Array.from(et.keys()).filter((n)=>!vi.has(n));return[...e,...t]}function Oz(e){return vi.has(e)||et.has(e)}async function Ez(e){return qe(e)?.provider}function ss(e){return qe(e)}async function us(e){return qe(e)}async function Tz(e){let n=qe(e)?.models??{},r=St.get(e);if(r)return{...n,...Object.fromEntries(r)};return n}async function jz(){return gh().map((e)=>qe(e)?.provider).filter((e)=>e!==void 0)}function Pz(e){et.set(e.provider.id,e)}function Nz(e,t,n){if(!St.has(e))St.set(e,new Map);St.get(e)?.set(t,{...n,id:t})}function Dz(e){return St.delete(e),et.delete(e)}function Az(){St.clear(),et.clear()}var Zz=new Proxy({},{get(e,t){return qe(t)},has(e,t){return vi.has(t)||et.has(t)},ownKeys(){return gh()},getOwnPropertyDescriptor(e,t){let n=qe(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var It=new Map(pi.map((e)=>[e.manifest.id,e]));function m4(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"prompt-cache":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function cs(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:m4(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function hh(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return Jn;switch(t?.client){case"anthropic":return Kn;case"gemini":return Wn;case"vertex":return Hn;case"bedrock":return Bn;case"openai-compatible":return Fn}switch(G(e)){case"openai-codex":case"openai-native":return Jn;case"anthropic":case"minimax":return Kn;case"gemini":return Wn;case"vertex":return Hn;case"bedrock":return Bn;case"mistral":return Bo;case"claude-code":return Go;case"openai-codex-cli":return Xo;case"opencode":return Yo;case"dify":return Vo;case"sapaicore":return Qo;default:return Fn}}async function f4(e){let t=G(e.providerId),n=G(ki(e));if(It.get(t)&&t===n)return;let i=await us(t)??(t!==n?await us(n):void 0);if(!i){let o=It.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=It.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>cs(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??hh(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function p4(e){let t=G(e.providerId),n=G(ki(e));if(It.get(t)&&t===n)return;let i=ss(t)??(t!==n?ss(n):void 0);if(!i){let o=It.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=It.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>cs(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??hh(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function v4(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let r of n.content)if(r.type==="tool_use"){if(t.set(r.id,r.name),r.call_id)t.set(r.call_id,r.name)}}return e.map((n)=>{let r=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:ds(),role:n.role,content:r,createdAt:Date.now()}})}function g4(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function ls(e,t,n,r,i){return{providerId:G(e.providerId),modelId:e.modelId,systemPrompt:t,messages:v4(n),tools:g4(r),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function yh(e){let t=G(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let r=cs(t,n),{providerId:i,...a}=r;return a}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,authentication:e.aws?.authentication,profile:e.aws?.profile,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function bh(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,r=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:r}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function h4(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class ms{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return ls(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let r=os({providerConfigs:[yh(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger,telemetry:this.config.extensionContext?.telemetry}),i=p4(this.config);if(i)r.registerProvider(i);let a=ls(this.config,e,t,n,this.abortSignal),o=`gw_${ds(10)}`,s=async function*(){for await(let d of await r.stream(a))yield bh(o,d)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:h4(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function $h(e){return new ms(e)}async function _h(e){let t=os({providerConfigs:[yh(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger,telemetry:e.extensionContext?.telemetry}),n=await f4(e);if(n)t.registerProvider(n);return new class extends ms{createMessage(r,i,a){let o=ls(e,r,i,a,e.abortSignal),s=`gw_${ds(10)}`,d=async function*(){for await(let l of await t.stream(o))yield bh(s,l)}();return d.id=s,d}}(e)}var xt=new Map;function y4(e,t){xt.set(e,{factory:t,isAsync:!1})}function b4(e,t){xt.set(e,{factory:t,isAsync:!0})}function Vn(e){return xt.has(e)}function fs(e,t){let n=xt.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function ps(e,t){let n=xt.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function vs(e){return xt.get(e)?.isAsync??!1}function kh(e){let t=G(e.providerId),n=e.routingProviderId?G(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function Vz(e){let t=kh(e),{providerId:n}=t;if(Vn(n)){if(vs(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let r=fs(n,t);if(r)return r}return $h(t)}async function Qz(e){let t=kh(e),{providerId:n}=t;if(Vn(n)){let r=await ps(n,t);if(r)return r}return _h(t)}export{y4 as registerHandler,b4 as registerAsyncHandler,G as normalizeProviderId,vs as isRegisteredHandlerAsync,qn as isBuiltInProviderId,Vn as hasRegisteredHandler,ps as getRegisteredHandlerAsync,fs as getRegisteredHandler,Qz as createHandlerAsync,Vz as createHandler,_i as BUILT_IN_PROVIDER_IDS,zt as BUILT_IN_PROVIDER};
|