bailian-cli-runtime 2.0.0 → 2.1.0

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/index.mjs CHANGED
@@ -1,12 +1,12 @@
1
- import{BINARY_PRODUCT_CLIENT_NAME as e,BailianError as t,COMMAND_PACK_API_VERSION as n,CONSOLE_AUTH_FLAGS as r,Client as i,DEFAULT_INSTALL_PS1_URL as a,DEFAULT_INSTALL_SCRIPT_URL as o,DEFAULT_LANGUAGE as s,ExitCode as c,GLOBAL_FLAGS as l,MODEL_AUTH_FLAGS as u,OPENAPI_AUTH_FLAGS as d,SUPPORTED_LANGUAGES as f,UsageError as p,binaryAssetFileName as m,binaryInnerFileName as h,buildAsrContextMessages as g,buildAsrFlashRequest as _,buildAsyncAsrLanguageFields as v,buildSettings as y,buildSources as b,channelManifestUrl as x,chatPath as S,collectAsrTranscriptionItems as C,credentialFlagDefs as w,describeAuthState as T,detectBinaryPlatform as ee,detectOutputFormat as E,extractAsrFlashText as te,extractZipEntryToFile as D,flushTelemetry as O,formatOutput as ne,getConfigDir as re,getUpdateInstallMethod as ie,isCompiledBinary as ae,isLocalFile as oe,makeAuthStore as se,makeConfigStore as ce,maskToken as le,releaseAssetUrl as ue,resolveApiKey as de,resolveAsrApi as fe,resolveBooleanFlag as pe,resolveConsole as me,resolveImageEditApi as he,resolveImageGenerateApi as ge,resolveModelBaseUrl as _e,resolveModelBaseUrlState as ve,resolveOpenApi as ye,resolveWatermark as be,selectApiKeyResolutionSources as xe,speechRecognizePath as Se,speechSynthesizePath as Ce,stripUndefined as we,taskPath as Te,trackCommandExecution as Ee,videoGeneratePath as De,writeInstallMethodSync as Oe}from"bailian-cli-core";import{homedir as ke}from"os";import{dirname as Ae,join as je}from"path";import{createWriteStream as Me,mkdirSync as Ne,readFileSync as Pe,unlinkSync as Fe,writeFileSync as Ie}from"fs";import{EnvHttpProxyAgent as Le,setGlobalDispatcher as Re}from"undici";import{existsSync as ze}from"node:fs";import{access as Be,chmod as Ve,copyFile as He,lstat as Ue,mkdir as k,open as We,readFile as Ge,readdir as Ke,readlink as qe,realpath as Je,rename as Ye,rm as A,stat as Xe,unlink as j,writeFile as Ze}from"node:fs/promises";import{dirname as Qe,isAbsolute as $e,join as M,relative as et,resolve as tt}from"node:path";import{pathToFileURL as nt}from"node:url";import{spawn as rt,spawnSync as it}from"node:child_process";import{homedir as at}from"node:os";import{createHash as ot}from"node:crypto";var st=Object.create,ct=Object.defineProperty,lt=Object.getOwnPropertyDescriptor,ut=Object.getOwnPropertyNames,dt=Object.getPrototypeOf,ft=Object.prototype.hasOwnProperty,N=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),pt=(e,t)=>{let n={};for(var r in e)ct(n,r,{get:e[r],enumerable:!0});return t||ct(n,Symbol.toStringTag,{value:`Module`}),n},mt=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=ut(t),a=0,o=i.length,s;a<o;a++)s=i[a],!ft.call(e,s)&&s!==n&&ct(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=lt(t,s))||r.enumerable});return e},ht=(e,t,n)=>(n=e==null?{}:st(dt(e)),mt(t||!e||!e.__esModule||!ft.call(e,`default`)?ct(n,`default`,{value:e,enumerable:!0}):n,e));function gt(e){return e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function _t(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function vt(e){let t=0;for(;t<e.length&&!e[t].startsWith(`-`);)t++;let n=e.slice(t);return{path:e.slice(0,t),rest:n,hasHelpFlag:n.includes(`--help`),hasVersionFlag:n.includes(`--version`)}}function yt(e,t){let n={},r=/* @__PURE__ */ new Set;for(let[e,r]of Object.entries(t))r.type===`switch`&&(n[e]=!1);let i=0;for(;i<e.length;){let a=e[i];if(!a.startsWith(`-`))throw new p(`Unexpected argument: ${a}`);if(!a.startsWith(`--`))throw new p(`Unknown flag "${a}". Use the --long form.`);let o=a.indexOf(`=`),s=o===-1?a.slice(2):a.slice(2,o),c=o===-1?void 0:a.slice(o+1);if(s===``)throw new p(`Unknown flag "${a}".`);let l=gt(s),u=t[l];if(!u)throw new p(`Unknown flag "--${s}". Run with --help to see available options.`);if(u.type===`switch`){if(c!==void 0)throw new p(`Flag --${s} is a switch and takes no value.`);n[l]=!0,i++;continue}if(c===void 0){let t=e[i+1];if(t===void 0||t.startsWith(`--`))throw new p(`Flag --${s} requires a value.`);c=t,i+=2}else i+=1;if(u.choices&&!u.choices.includes(c))throw new p(`Flag --${s} must be one of: ${u.choices.join(`, `)}.`);if(u.type===`array`){let e=n[l];e?e.push(c):n[l]=[c];continue}if(r.has(l))throw new p(`Flag --${s} given more than once.`);if(r.add(l),u.type===`number`){let e=Number(c);if(!Number.isFinite(e))throw new p(`Flag --${s} requires a finite number.`);n[l]=e}else if(u.type===`boolean`){let e=c.trim().toLowerCase();if(e===`true`)n[l]=!0;else if(e===`false`)n[l]=!1;else throw new p(`Flag --${s} requires true or false.`)}else n[l]=c}let a=Object.entries(t).filter(([e,t])=>t.type!==`switch`&&t.required===!0&&n[e]===void 0).map(([e])=>`--${_t(e)}`);if(a.length>0)throw new p(`Missing required ${a.length>1?`flags`:`flag`}: ${a.join(`, `)}`);return n}const bt=e=>e;function P(e,t){return e?e=>`\x1b[${t}m${e}\x1b[0m`:bt}function xt(e){return e.isTTY===!0}function St(e){return!(`NO_COLOR`in process.env)&&xt(e)}function F(e){let t=St(e);return{bold:P(t,`1`),dim:P(t,`2`),green:P(t,`32`),yellow:P(t,`33`),red:P(t,`31`),cyan:P(t,`36`),blue:P(t,`34`),magenta:P(t,`35`),white:P(t,`37`),accent:P(t,`38;2;59;130;246`),logo:P(t,`38;2;97;92;237`),purple:P(t,`38;2;147;51;234`),brandBlue:P(t,`1;38;2;43;82;255`),keyPink:P(t,`38;2;236;72;153`),reset:t?`\x1B[0m`:``}}const Ct={title:{"en-US":`Welcome to Bailian CLI!`,"zh-CN":`欢迎使用 Bailian CLI!`},consoleLogin:{"en-US":`Recommended: console login`,"zh-CN":`推荐:控制台登录`},domestic:{"en-US":`China site:`,"zh-CN":`中国站:`},international:{"en-US":`International:`,"zh-CN":`国际站:`},apiKeyLogin:{"en-US":`Existing API Key or subscription plan:`,"zh-CN":`已有 API Key 或订阅计划:`}};function wt(e,t){return e?.localize(t)??(typeof t==`string`?t:t[`en-US`])}function Tt(e,t){let n=F(process.stderr),r=wt(t,Ct.title).replace(`Bailian`,n.purple(`Bailian`));process.stderr.write(`\n ${r}\n\n`),process.stderr.write(` ${wt(t,Ct.consoleLogin)}\n`),process.stderr.write(` ${wt(t,Ct.domestic)} ${e} auth login --console\n`),process.stderr.write(` ${wt(t,Ct.international)} ${e} auth login --console --console-site international\n\n`),process.stderr.write(` ${wt(t,Ct.apiKeyLogin)}\n`),process.stderr.write(` ${e} auth login --api-key <your-key>\n\n`)}function Et(e,t=s){let n=F(process.stderr),r=`试试让你的 AI 编程助手完成这些任务:`,i=`Try these with your AI coding assistant:`,a=t===`en-US`,o=a?i:r,c=a?r:i;process.stderr.write(`\n🎯 ${n.white(o)}\n`),process.stderr.write(` ${n.dim(c)}\n\n`),e.forEach((e,t)=>{let[r,...i]=e.split(`
1
+ import{BINARY_PRODUCT_CLIENT_NAME as e,BailianError as t,COMMAND_PACK_API_VERSION as n,CONSOLE_AUTH_FLAGS as r,Client as i,DEFAULT_INSTALL_PS1_URL as a,DEFAULT_INSTALL_SCRIPT_URL as o,DEFAULT_LANGUAGE as s,ExitCode as c,GLOBAL_FLAGS as l,MODEL_AUTH_FLAGS as u,OPENAPI_AUTH_FLAGS as d,SUPPORTED_LANGUAGES as f,UsageError as p,binaryAssetFileName as m,binaryInnerFileName as h,buildAsrContextMessages as g,buildAsrFlashRequest as _,buildAsyncAsrLanguageFields as v,buildSettings as y,buildSources as b,channelManifestUrl as x,chatPath as S,collectAsrTranscriptionItems as C,credentialFlagDefs as w,describeAuthState as T,detectBinaryPlatform as ee,detectOutputFormat as E,extractAsrFlashText as D,extractZipEntryToFile as O,flushTelemetry as k,formatOutput as te,getConfigDir as ne,getUpdateInstallMethod as re,isCompiledBinary as ie,isLocalFile as ae,makeAuthStore as oe,makeConfigStore as se,maskToken as ce,releaseAssetUrl as le,resolveApiKey as ue,resolveAsrApi as de,resolveBooleanFlag as fe,resolveConsole as pe,resolveImageEditApi as me,resolveImageGenerateApi as he,resolveModelBaseUrl as ge,resolveModelBaseUrlState as _e,resolveOpenApi as ve,resolveWatermark as ye,selectApiKeyResolutionSources as be,speechRecognizePath as xe,speechSynthesizePath as Se,stripUndefined as Ce,taskPath as we,trackCommandExecution as Te,videoGeneratePath as Ee,writeInstallMethodSync as De}from"bailian-cli-core";import{homedir as Oe}from"os";import{dirname as ke,join as Ae}from"path";import{createWriteStream as je,mkdirSync as Me,readFileSync as Ne,unlinkSync as Pe,writeFileSync as Fe}from"fs";import{EnvHttpProxyAgent as Ie,setGlobalDispatcher as Le}from"undici";import{existsSync as Re}from"node:fs";import{access as ze,chmod as Be,copyFile as Ve,lstat as He,mkdir as A,open as Ue,readFile as We,readdir as Ge,readlink as Ke,realpath as qe,rename as Je,rm as j,stat as Ye,unlink as M,writeFile as Xe}from"node:fs/promises";import{dirname as Ze,isAbsolute as Qe,join as N,relative as $e,resolve as et}from"node:path";import{pathToFileURL as tt}from"node:url";import{spawn as nt,spawnSync as rt}from"node:child_process";import{homedir as it}from"node:os";import{createHash as at}from"node:crypto";var ot=Object.create,st=Object.defineProperty,ct=Object.getOwnPropertyDescriptor,lt=Object.getOwnPropertyNames,ut=Object.getPrototypeOf,dt=Object.prototype.hasOwnProperty,P=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),ft=(e,t)=>{let n={};for(var r in e)st(n,r,{get:e[r],enumerable:!0});return t||st(n,Symbol.toStringTag,{value:`Module`}),n},pt=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=lt(t),a=0,o=i.length,s;a<o;a++)s=i[a],!dt.call(e,s)&&s!==n&&st(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=ct(t,s))||r.enumerable});return e},mt=(e,t,n)=>(n=e==null?{}:ot(ut(e)),pt(t||!e||!e.__esModule||!dt.call(e,`default`)?st(n,`default`,{value:e,enumerable:!0}):n,e));function ht(e){return e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function gt(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function _t(e){let t=0;for(;t<e.length&&!e[t].startsWith(`-`);)t++;let n=e.slice(t);return{path:e.slice(0,t),rest:n,hasHelpFlag:n.includes(`--help`),hasVersionFlag:n.includes(`--version`)}}function vt(e,t){let n={},r=/* @__PURE__ */ new Set;for(let[e,r]of Object.entries(t))r.type===`switch`&&(n[e]=!1);let i=0;for(;i<e.length;){let a=e[i];if(!a.startsWith(`-`))throw new p(`Unexpected argument: ${a}`);if(!a.startsWith(`--`))throw new p(`Unknown flag "${a}". Use the --long form.`);let o=a.indexOf(`=`),s=o===-1?a.slice(2):a.slice(2,o),c=o===-1?void 0:a.slice(o+1);if(s===``)throw new p(`Unknown flag "${a}".`);let l=ht(s),u=t[l];if(!u)throw new p(`Unknown flag "--${s}". Run with --help to see available options.`);if(u.type===`switch`){if(c!==void 0)throw new p(`Flag --${s} is a switch and takes no value.`);n[l]=!0,i++;continue}if(c===void 0){let t=e[i+1];if(t===void 0||t.startsWith(`--`))throw new p(`Flag --${s} requires a value.`);c=t,i+=2}else i+=1;if(u.choices&&!u.choices.includes(c))throw new p(`Flag --${s} must be one of: ${u.choices.join(`, `)}.`);if(u.type===`array`){let e=n[l];e?e.push(c):n[l]=[c];continue}if(r.has(l))throw new p(`Flag --${s} given more than once.`);if(r.add(l),u.type===`number`){let e=Number(c);if(!Number.isFinite(e))throw new p(`Flag --${s} requires a finite number.`);n[l]=e}else if(u.type===`boolean`){let e=c.trim().toLowerCase();if(e===`true`)n[l]=!0;else if(e===`false`)n[l]=!1;else throw new p(`Flag --${s} requires true or false.`)}else n[l]=c}let a=Object.entries(t).filter(([e,t])=>t.type!==`switch`&&t.required===!0&&n[e]===void 0).map(([e])=>`--${gt(e)}`);if(a.length>0)throw new p(`Missing required ${a.length>1?`flags`:`flag`}: ${a.join(`, `)}`);return n}const yt=e=>e;function F(e,t){return e?e=>`\x1b[${t}m${e}\x1b[0m`:yt}function bt(e){return e.isTTY===!0}function xt(e){return!(`NO_COLOR`in process.env)&&bt(e)}function I(e){let t=xt(e);return{bold:F(t,`1`),dim:F(t,`2`),green:F(t,`32`),yellow:F(t,`33`),red:F(t,`31`),cyan:F(t,`36`),blue:F(t,`34`),magenta:F(t,`35`),white:F(t,`37`),accent:F(t,`38;2;59;130;246`),logo:F(t,`38;2;97;92;237`),purple:F(t,`38;2;147;51;234`),brandBlue:F(t,`1;38;2;43;82;255`),keyPink:F(t,`38;2;236;72;153`),reset:t?`\x1B[0m`:``}}const St={title:{"en-US":`Welcome to Bailian CLI!`,"zh-CN":`欢迎使用 Bailian CLI!`},consoleLogin:{"en-US":`Recommended: console login`,"zh-CN":`推荐:控制台登录`},domestic:{"en-US":`China site:`,"zh-CN":`中国站:`},international:{"en-US":`International:`,"zh-CN":`国际站:`},apiKeyLogin:{"en-US":`Existing API Key or subscription plan:`,"zh-CN":`已有 API Key 或订阅计划:`}};function Ct(e,t){return e?.localize(t)??(typeof t==`string`?t:t[`en-US`])}function wt(e,t){let n=I(process.stderr),r=Ct(t,St.title).replace(`Bailian`,n.purple(`Bailian`));process.stderr.write(`\n ${r}\n\n`),process.stderr.write(` ${Ct(t,St.consoleLogin)}\n`),process.stderr.write(` ${Ct(t,St.domestic)} ${e} auth login --console\n`),process.stderr.write(` ${Ct(t,St.international)} ${e} auth login --console --console-site international\n\n`),process.stderr.write(` ${Ct(t,St.apiKeyLogin)}\n`),process.stderr.write(` ${e} auth login --api-key <your-key>\n\n`)}function Tt(e,t=s){let n=I(process.stderr),r=`试试让你的 AI 编程助手完成这些任务:`,i=`Try these with your AI coding assistant:`,a=t===`en-US`,o=a?i:r,c=a?r:i;process.stderr.write(`\n🎯 ${n.white(o)}\n`),process.stderr.write(` ${n.dim(c)}\n\n`),e.forEach((e,t)=>{let[r,...i]=e.split(`
2
2
  `),o=i.join(`
3
3
  `).trimStart(),s=a?o:r,c=a?r:o;process.stderr.write(`${n.dim(String(t+1))} ${n.white(s)}\n`),process.stderr.write(` ${n.dim(c)}\n`)}),process.stderr.write(`
4
- `)}const Dt={yes:{type:`switch`,description:{"en-US":`Confirm this high-risk operation`,"zh-CN":`确认执行此高风险操作`}}};function Ot(e){return e.risk===void 0?{}:Dt}function kt(){return{"en-US":`This command performs a high-risk operation. To continue, add --yes to the original command and re-run it.`,"zh-CN":`此命令将执行高风险操作。如确认继续,请在原命令中添加 --yes 后重新执行。`}}var At=class extends t{constructor(e){super(e.message,c.CONFIRMATION_REQUIRED,e.hint),this.name=`ConfirmationRequiredError`}toJSON(){return{error:{code:this.exitCode,type:`requires_confirmation`,message:this.message,hint:this.hint}}}};function jt(e,t){let n=`--${_t(e)}`;return t.type===`switch`?n:`${n} ${t.choices?`<${t.choices.join(`|`)}>`:t.valueHint}`}const Mt={apiKey:{"en-US":`API Key`,"zh-CN":`API Key`},console:{"en-US":`Console`,"zh-CN":`Console`},openapi:{"en-US":`AK/SK`,"zh-CN":`AK/SK`},none:{"en-US":`No Auth`,"zh-CN":`无需鉴权`}},Nt={high:{"en-US":`high`,"zh-CN":`高风险`}},I={usage:{"en-US":`Usage:`,"zh-CN":`用法:`},commands:{"en-US":`Commands:`,"zh-CN":`命令:`},authentication:{"en-US":`Authentication:`,"zh-CN":`鉴权方式:`},risk:{"en-US":`Risk:`,"zh-CN":`风险等级:`},riskMessage:{"en-US":`Risk message:`,"zh-CN":`风险说明:`},flags:{"en-US":`Flags:`,"zh-CN":`选项:`},globalFlags:{"en-US":`Global Flags:`,"zh-CN":`全局选项:`},modelAuthFlags:{"en-US":`Model Auth Flags:`,"zh-CN":`模型鉴权选项:`},modelAuthScope:{"en-US":`(model-domain commands)`,"zh-CN":`(模型域命令)`},consoleAuthFlags:{"en-US":`Console Auth Flags:`,"zh-CN":`控制台鉴权选项:`},consoleAuthScope:{"en-US":`(console-domain commands)`,"zh-CN":`(控制台域命令)`},openApiAuthFlags:{"en-US":`OpenAPI Auth Flags:`,"zh-CN":`OpenAPI 鉴权选项:`},openApiAuthScope:{"en-US":`(openapi-domain commands)`,"zh-CN":`(OpenAPI 域命令)`},gettingHelp:{"en-US":`Getting Help:`,"zh-CN":`获取帮助:`},gettingHelpDescription1:{"en-US":`Add --help after any command to see its full list of flags, defaults,`,"zh-CN":`在任意命令后添加 --help,查看完整的选项和默认值,`},gettingHelpDescription2:{"en-US":`and usage examples. For example:`,"zh-CN":`以及用法示例。例如:`},notes:{"en-US":`Notes:`,"zh-CN":`说明:`},examples:{"en-US":`Examples:`,"zh-CN":`示例:`},confirmedExample:{"en-US":`# Only after explicit confirmation:`,"zh-CN":`# 仅在明确确认后执行:`},minimalWorkflow:{"en-US":`Minimal workflow.yaml:`,"zh-CN":`最小 workflow.yaml:`},tryIt:{"en-US":`Try it:`,"zh-CN":`试一试:`}};var Pt=class{root={children:/* @__PURE__ */ new Map};cliName;translator;authRequirements=/* @__PURE__ */ new Set;constructor(e,t,n){this.cliName=t,this.translator=n;for(let[t,n]of Object.entries(e))this.register(t,n)}localize(e){return this.translator?.localize(e)??(typeof e==`string`?e:e[`en-US`])}register(e,t){let n={...l,...Ot(t),...w(t)};for(let r of Object.keys(t.flags??{}))if(r in n)throw Error(`Command "${e}" redeclares reserved flag "${r}".`);let r=e.split(` `),i=this.root;for(let e of r)i.children.has(e)||i.children.set(e,{children:/* @__PURE__ */ new Map}),i=i.children.get(e);i.command=t,this.authRequirements.add(t.auth)}getAllCommands(){let e=[],t=n=>{n.command&&e.push(n.command);for(let e of n.children.values())t(e)};return t(this.root),e}helpExample(){let e=(t,n)=>{for(let[r,i]of t.children){if(i.command)return[...n,r].join(` `);let t=e(i,[...n,r]);if(t)return t}return null};return e(this.root,[])??`<resource> <command>`}locate(e){let t=this.root,n=[];for(let r of e){let e=t.children.get(r);if(!e)break;t=e,n.push(r)}if(t.command){let r=e.slice(n.length);return r.length===0?{kind:`leaf`,command:t.command,matched:n}:{kind:`unknown`,error:new p(`Unexpected argument: ${r.join(` `)}`,`${this.cliName} ${n.join(` `)} --help`)}}if(n.length===e.length&&t.children.size>0)return{kind:`group`,matched:n};if(n.length>0&&t.children.size>0){let r=Array.from(t.children.entries()).map(([e,t])=>{if(t.command)return` ${n.join(` `)} ${e} ${this.localize(t.command.description)}`;let r=Array.from(t.children.keys()).join(`, `);return` ${n.join(` `)} ${e} [${r}]`}).join(`
5
- `);return{kind:`unknown`,error:new p(`Unknown command: ${this.cliName} ${e.join(` `)}\n\nAvailable commands:\n${r}`,`${this.cliName} ${n.join(` `)} --help`)}}return{kind:`unknown`,error:new p(`Unknown command: ${this.cliName} ${e.join(` `)}`,`${this.cliName} --help`)}}buildCommandLines(e,t,n){let r=Math.max(...e.map(e=>e.path.length)),i=Math.max(...e.map(e=>`[${this.localize(Mt[e.auth])}]`.length));return e.map(e=>{let a=`[${this.localize(Mt[e.auth])}]`;return` ${t(e.path.padEnd(r+2))} ${t(a.padEnd(i+2))} ${n(e.desc)}`}).join(`
6
- `)}buildResourceLines(e,t){let n=[],r=(e,t)=>{for(let[i,a]of e.children){let e=t?`${t} ${i}`:i;a.command&&n.push({path:e,auth:a.command.auth,desc:this.localize(a.command.description)}),a.children.size>0&&r(a,e)}};return r(this.root,``),this.buildCommandLines(n,e,t)}buildFlagLines(e,t,n){let r=Object.entries(e).map(([e,t])=>({flag:jt(e,t),desc:this.localize(t.description)})),i=Math.max(...r.map(e=>e.flag.length));return r.map(e=>` ${t(e.flag.padEnd(i+2))} ${n(e.desc)}`).join(`
7
- `)}buildAuthFlagSection(e,t,n,r,i,a,o){return this.authRequirements.has(e)?`${i(t)} ${o(n)}\n${this.buildFlagLines(r,a,o)}`:null}bold=(e,t)=>F(t).bold(e);accent=(e,t)=>F(t).accent(e);dim=(e,t)=>F(t).dim(e);printHelp(e,t=process.stdout){if(e.length===0){this.printRootHelp(t);return}let n=this.root;for(let r of e){let e=n.children.get(r);if(!e){this.printRootHelp(t);return}n=e}if(n.command){this.printCommandHelp(n.command,e,t);return}let r=e.join(` `);t.write(`\n${this.bold(this.localize(I.usage),t)} ${this.cliName} ${r} <command> [flags]\n\n`),t.write(`${this.bold(this.localize(I.commands),t)}\n`),this.printChildren(n,r,t),r===`pipeline`&&this.printPipelineQuickStart(t),t.write(`
8
- `)}printWelcome(){Tt(this.cliName,this.translator)}printQuickStart(e){Et(e,this.translator?.language)}printPipelineQuickStart(e){let t=t=>this.bold(t,e),n=t=>this.dim(t,e);e.write(`
9
- ${t(this.localize(I.minimalWorkflow))}
4
+ `)}const Et={yes:{type:`switch`,description:{"en-US":`Confirm this high-risk operation`,"zh-CN":`确认执行此高风险操作`}}};function Dt(e){return e.risk===void 0?{}:Et}function Ot(){return{"en-US":`This command performs a high-risk operation. To continue, add --yes to the original command and re-run it.`,"zh-CN":`此命令将执行高风险操作。如确认继续,请在原命令中添加 --yes 后重新执行。`}}var kt=class extends t{constructor(e){super(e.message,c.CONFIRMATION_REQUIRED,e.hint),this.name=`ConfirmationRequiredError`}toJSON(){return{error:{code:this.exitCode,type:`requires_confirmation`,message:this.message,hint:this.hint}}}};function At(e,t){let n=`--${gt(e)}`;return t.type===`switch`?n:`${n} ${t.choices?`<${t.choices.join(`|`)}>`:t.valueHint}`}const jt={apiKey:{"en-US":`API Key`,"zh-CN":`API Key`},console:{"en-US":`Console`,"zh-CN":`Console`},openapi:{"en-US":`AK/SK`,"zh-CN":`AK/SK`},none:{"en-US":`No Auth`,"zh-CN":`无需鉴权`}},Mt={high:{"en-US":`high`,"zh-CN":`高风险`}},L={usage:{"en-US":`Usage:`,"zh-CN":`用法:`},commands:{"en-US":`Commands:`,"zh-CN":`命令:`},authentication:{"en-US":`Authentication:`,"zh-CN":`鉴权方式:`},risk:{"en-US":`Risk:`,"zh-CN":`风险等级:`},riskMessage:{"en-US":`Risk message:`,"zh-CN":`风险说明:`},flags:{"en-US":`Flags:`,"zh-CN":`选项:`},globalFlags:{"en-US":`Global Flags:`,"zh-CN":`全局选项:`},modelAuthFlags:{"en-US":`Model Auth Flags:`,"zh-CN":`模型鉴权选项:`},modelAuthScope:{"en-US":`(model-domain commands)`,"zh-CN":`(模型域命令)`},consoleAuthFlags:{"en-US":`Console Auth Flags:`,"zh-CN":`控制台鉴权选项:`},consoleAuthScope:{"en-US":`(console-domain commands)`,"zh-CN":`(控制台域命令)`},openApiAuthFlags:{"en-US":`OpenAPI Auth Flags:`,"zh-CN":`OpenAPI 鉴权选项:`},openApiAuthScope:{"en-US":`(openapi-domain commands)`,"zh-CN":`(OpenAPI 域命令)`},gettingHelp:{"en-US":`Getting Help:`,"zh-CN":`获取帮助:`},gettingHelpDescription1:{"en-US":`Add --help after any command to see its full list of flags, defaults,`,"zh-CN":`在任意命令后添加 --help,查看完整的选项和默认值,`},gettingHelpDescription2:{"en-US":`and usage examples. For example:`,"zh-CN":`以及用法示例。例如:`},notes:{"en-US":`Notes:`,"zh-CN":`说明:`},examples:{"en-US":`Examples:`,"zh-CN":`示例:`},confirmedExample:{"en-US":`# Only after explicit confirmation:`,"zh-CN":`# 仅在明确确认后执行:`},minimalWorkflow:{"en-US":`Minimal workflow.yaml:`,"zh-CN":`最小 workflow.yaml:`},tryIt:{"en-US":`Try it:`,"zh-CN":`试一试:`}};var Nt=class{root={children:/* @__PURE__ */ new Map};cliName;translator;authRequirements=/* @__PURE__ */ new Set;constructor(e,t,n){this.cliName=t,this.translator=n;for(let[t,n]of Object.entries(e))this.register(t,n)}localize(e){return this.translator?.localize(e)??(typeof e==`string`?e:e[`en-US`])}register(e,t){let n={...l,...Dt(t),...w(t)};for(let r of Object.keys(t.flags??{}))if(r in n)throw Error(`Command "${e}" redeclares reserved flag "${r}".`);let r=e.split(` `),i=this.root;for(let e of r)i.children.has(e)||i.children.set(e,{children:/* @__PURE__ */ new Map}),i=i.children.get(e);i.command=t,this.authRequirements.add(t.auth)}getAllCommands(){let e=[],t=n=>{n.command&&e.push(n.command);for(let e of n.children.values())t(e)};return t(this.root),e}helpExample(){let e=(t,n)=>{for(let[r,i]of t.children){if(i.command)return[...n,r].join(` `);let t=e(i,[...n,r]);if(t)return t}return null};return e(this.root,[])??`<resource> <command>`}locate(e){let t=this.root,n=[];for(let r of e){let e=t.children.get(r);if(!e)break;t=e,n.push(r)}if(t.command){let r=e.slice(n.length);return r.length===0?{kind:`leaf`,command:t.command,matched:n}:{kind:`unknown`,error:new p(`Unexpected argument: ${r.join(` `)}`,`${this.cliName} ${n.join(` `)} --help`)}}if(n.length===e.length&&t.children.size>0)return{kind:`group`,matched:n};if(n.length>0&&t.children.size>0){let r=Array.from(t.children.entries()).map(([e,t])=>{if(t.command)return` ${n.join(` `)} ${e} ${this.localize(t.command.description)}`;let r=Array.from(t.children.keys()).join(`, `);return` ${n.join(` `)} ${e} [${r}]`}).join(`
5
+ `);return{kind:`unknown`,error:new p(`Unknown command: ${this.cliName} ${e.join(` `)}\n\nAvailable commands:\n${r}`,`${this.cliName} ${n.join(` `)} --help`)}}return{kind:`unknown`,error:new p(`Unknown command: ${this.cliName} ${e.join(` `)}`,`${this.cliName} --help`)}}buildCommandLines(e,t,n){let r=Math.max(...e.map(e=>e.path.length)),i=Math.max(...e.map(e=>`[${this.localize(jt[e.auth])}]`.length));return e.map(e=>{let a=`[${this.localize(jt[e.auth])}]`;return` ${t(e.path.padEnd(r+2))} ${t(a.padEnd(i+2))} ${n(e.desc)}`}).join(`
6
+ `)}buildResourceLines(e,t){let n=[],r=(e,t)=>{for(let[i,a]of e.children){let e=t?`${t} ${i}`:i;a.command&&n.push({path:e,auth:a.command.auth,desc:this.localize(a.command.description)}),a.children.size>0&&r(a,e)}};return r(this.root,``),this.buildCommandLines(n,e,t)}buildFlagLines(e,t,n){let r=Object.entries(e).map(([e,t])=>({flag:At(e,t),desc:this.localize(t.description)})),i=Math.max(...r.map(e=>e.flag.length));return r.map(e=>` ${t(e.flag.padEnd(i+2))} ${n(e.desc)}`).join(`
7
+ `)}buildAuthFlagSection(e,t,n,r,i,a,o){return this.authRequirements.has(e)?`${i(t)} ${o(n)}\n${this.buildFlagLines(r,a,o)}`:null}bold=(e,t)=>I(t).bold(e);accent=(e,t)=>I(t).accent(e);dim=(e,t)=>I(t).dim(e);printHelp(e,t=process.stdout){if(e.length===0){this.printRootHelp(t);return}let n=this.root;for(let r of e){let e=n.children.get(r);if(!e){this.printRootHelp(t);return}n=e}if(n.command){this.printCommandHelp(n.command,e,t);return}let r=e.join(` `);t.write(`\n${this.bold(this.localize(L.usage),t)} ${this.cliName} ${r} <command> [flags]\n\n`),t.write(`${this.bold(this.localize(L.commands),t)}\n`),this.printChildren(n,r,t),r===`pipeline`&&this.printPipelineQuickStart(t),t.write(`
8
+ `)}printWelcome(){wt(this.cliName,this.translator)}printQuickStart(e){Tt(e,this.translator?.language)}printPipelineQuickStart(e){let t=t=>this.bold(t,e),n=t=>this.dim(t,e);e.write(`
9
+ ${t(this.localize(L.minimalWorkflow))}
10
10
  ${n(` version: workflow/v1`)}
11
11
  ${n(` steps:`)}
12
12
  ${n(` - id: chat`)}
@@ -15,65 +15,65 @@ ${n(` input:`)}
15
15
  ${n(` message: "Who are you?"`)}
16
16
  ${n(` system: "You are a concise assistant."`)}
17
17
 
18
- ${t(this.localize(I.tryIt))}
18
+ ${t(this.localize(L.tryIt))}
19
19
  ${n(` ${this.cliName} pipeline validate workflow.yaml`)}
20
20
  ${n(` ${this.cliName} pipeline run workflow.yaml --dry-run --output json`)}
21
- `)}printRootHelp(e){let t=[`██████╗ █████╗ ██╗██╗ ██╗ █████╗ ███╗ ██╗`,`██╔══██╗██╔══██╗██║██║ ██║██╔══██╗████╗ ██║`,`██████╔╝███████║██║██║ ██║███████║██╔██╗ ██║`,`██╔══██╗██╔══██║██║██║ ██║██╔══██║██║╚██╗██║`,`██████╔╝██║ ██║██║███████╗██║██║ ██║██║ ╚████║`,`╚═════╝ ╚═╝ ╚═╝╚═╝╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝`],n=F(e);e.write(`
22
- `);for(let r of t)e.write(`${n.logo(r)}\n`);let i=t=>this.bold(t,e),a=t=>this.accent(t,e),o=t=>this.dim(t,e),s=this.buildResourceLines(a,o),c=this.buildFlagLines(l,a,o),f=[this.buildAuthFlagSection(`apiKey`,this.localize(I.modelAuthFlags),this.localize(I.modelAuthScope),u,i,a,o),this.buildAuthFlagSection(`console`,this.localize(I.consoleAuthFlags),this.localize(I.consoleAuthScope),r,i,a,o),this.buildAuthFlagSection(`openapi`,this.localize(I.openApiAuthFlags),this.localize(I.openApiAuthScope),d,i,a,o)].filter(e=>e!==null).join(`
21
+ `)}printRootHelp(e){let t=[`██████╗ █████╗ ██╗██╗ ██╗ █████╗ ███╗ ██╗`,`██╔══██╗██╔══██╗██║██║ ██║██╔══██╗████╗ ██║`,`██████╔╝███████║██║██║ ██║███████║██╔██╗ ██║`,`██╔══██╗██╔══██║██║██║ ██║██╔══██║██║╚██╗██║`,`██████╔╝██║ ██║██║███████╗██║██║ ██║██║ ╚████║`,`╚═════╝ ╚═╝ ╚═╝╚═╝╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝`],n=I(e);e.write(`
22
+ `);for(let r of t)e.write(`${n.logo(r)}\n`);let i=t=>this.bold(t,e),a=t=>this.accent(t,e),o=t=>this.dim(t,e),s=this.buildResourceLines(a,o),c=this.buildFlagLines(l,a,o),f=[this.buildAuthFlagSection(`apiKey`,this.localize(L.modelAuthFlags),this.localize(L.modelAuthScope),u,i,a,o),this.buildAuthFlagSection(`console`,this.localize(L.consoleAuthFlags),this.localize(L.consoleAuthScope),r,i,a,o),this.buildAuthFlagSection(`openapi`,this.localize(L.openApiAuthFlags),this.localize(L.openApiAuthScope),d,i,a,o)].filter(e=>e!==null).join(`
23
23
 
24
24
  `);e.write(`
25
- ${i(this.localize(I.usage))} ${this.cliName} <resource> <command> [flags]
25
+ ${i(this.localize(L.usage))} ${this.cliName} <resource> <command> [flags]
26
26
 
27
- ${i(this.localize(I.commands))}
27
+ ${i(this.localize(L.commands))}
28
28
  ${s}
29
29
 
30
- ${i(this.localize(I.globalFlags))}
30
+ ${i(this.localize(L.globalFlags))}
31
31
  ${c}
32
32
 
33
- ${f?`${f}\n\n`:``}${i(this.localize(I.gettingHelp))}
34
- ${o(this.localize(I.gettingHelpDescription1))}
35
- ${o(this.localize(I.gettingHelpDescription2))} ${this.cliName} ${this.helpExample()} --help
36
- `)}printCommandHelp(e,t,n){let r=e=>this.bold(e,n),i=e=>this.accent(e,n),a=e=>this.dim(e,n),o=[this.cliName,...t].join(` `);n.write(`\n${this.localize(e.description)}\n`),n.write(`${r(this.localize(I.usage))} ${o}${e.usageArgs?` ${e.usageArgs}`:``}\n`),n.write(`${r(this.localize(I.authentication))} ${i(this.localize(Mt[e.auth]))}\n`),e.risk!==void 0&&(n.write(`${r(this.localize(I.risk))} ${i(this.localize(Nt[e.risk.level]))}\n`),n.write(`${r(this.localize(I.riskMessage))} ${this.localize(e.risk.message)}\n`));let s=[...Object.entries(e.flags??{}),...Object.entries(Ot(e)),...Object.entries(w(e))];if(s.length>0){let e=s.map(([e,t])=>({flag:jt(e,t),desc:this.localize(t.description)})),t=Math.max(...e.map(e=>e.flag.length));n.write(`\n${r(this.localize(I.flags))}\n`);for(let r of e)n.write(` ${i(r.flag.padEnd(t+2))} ${a(r.desc)}\n`)}if(n.write(`\n${r(this.localize(I.globalFlags))}\n`),n.write(this.buildFlagLines(l,i,a)+`
37
- `),e.notes&&e.notes.length>0){n.write(`\n${r(this.localize(I.notes))}\n`);for(let t of e.notes)n.write(` ${this.localize(t)}\n`)}if(e.exampleArgs&&e.exampleArgs.length>0){n.write(`\n${r(this.localize(I.examples))}\n`);for(let t of e.exampleArgs){let r=this.localize(t);e.risk!==void 0&&/(?:^|\s)--yes(?:\s|$)/.test(r)&&n.write(` ${a(this.localize(I.confirmedExample))}\n`);let i=r.startsWith(`#`)?r:r?`${o} ${r}`:o;n.write(` ${a(i)}\n`)}}}printChildren(e,t,n){let r=[],i=(e,t)=>{for(let[n,a]of e.children)a.command&&r.push({path:`${t} ${n}`,auth:a.command.auth,desc:this.localize(a.command.description)}),a.children.size>0&&i(a,`${t} ${n}`)};i(e,t),n.write(this.buildCommandLines(r,e=>this.accent(e,n),e=>this.dim(e,n))+`
38
- `)}};function Ft(e,t){let{path:n,rest:r,hasHelpFlag:i,hasVersionFlag:a}=vt(e);if(a)return{kind:`version`};let o=t.locate(n);switch(o.kind){case`leaf`:return i?{kind:`help`,path:o.matched}:{kind:`run`,path:o.matched,command:o.command,rest:r};case`group`:return{kind:`help`,path:o.matched};case`unknown`:return{kind:`usageError`,error:o.error}}}function It(e){return e.startsWith(ke())?e.replace(ke(),`~`):e}function Lt(e,t,n){if(e.quiet||!xt(process.stderr))return;let r=e.configPath?It(e.configPath):`~/.bailian/config.json`,i=`${n.source} · api-key`,a=le(t),o=F(process.stderr);process.stderr.write(`${o.brandBlue(`BAILIAN`)} ${o.dim(r)} ${o.dim(`|`)} ${o.dim(`Auth:`)} ${o.keyPink(a)} ${o.dim(i)}\n`)}function Rt(e){return{language:e,localize(t){return typeof t==`string`?t:t[e]??t[s]}}}const zt=`https://registry.npmjs.org`,Bt=`bailian-cli`,Vt=()=>je(re(),`update-state.json`),Ht=3e3;function Ut(e){let t=String(e).split(`+`)[0].split(`-`)[0].trim().split(`.`).map(e=>{let t=Number(e);return Number.isFinite(t)?t:0});return[t[0]??0,t[1]??0,t[2]??0]}function Wt(e){let t=String(e).split(`+`)[0],n=t.indexOf(`-`);return n>=0?t.slice(n+1):``}function Gt(e){return Wt(e)!==``}function Kt(e){return e.length>0&&/^[0-9]+$/.test(e)}function qt(e,t){let n=e?e.split(`.`):[],r=t?t.split(`.`):[];if(n.length===0&&r.length===0)return 0;if(n.length===0)return 1;if(r.length===0)return-1;let i=Math.max(n.length,r.length);for(let e=0;e<i;e++){let t=n[e],i=r[e];if(t===void 0)return-1;if(i===void 0)return 1;let a=Kt(t),o=Kt(i);if(a&&o){let e=Number(t)-Number(i);if(e!==0)return e>0?1:-1}else if(a!==o)return a?-1:1;else if(t!==i)return t>i?1:-1}return 0}function Jt(e,t){let[n,r,i]=Ut(e),[a,o,s]=Ut(t);return n===a?r===o?i===s?qt(Wt(e),Wt(t)):i>s?1:-1:r>o?1:-1:n>a?1:-1}function Yt(e,t){return Jt(e,t)>0}function Xt(e,t){return nn(e,t)&&!Gt(e)}function Zt(){try{let e=Pe(Vt(),`utf-8`);return JSON.parse(e)}catch{return null}}function Qt(e){try{Ie(Vt(),JSON.stringify(e))}catch{}}async function $t(e=Ht,t=Bt){try{let n=t.replace(`/`,`%2f`),r=await fetch(`${zt}/${n}/latest`,{headers:{Accept:`application/json`},signal:AbortSignal.timeout(e)});return r.ok?(await r.json()).version??null:null}catch{return null}}let en=null;function tn(){return en}function nn(e,t){let[n,r]=Ut(e),[i,a]=Ut(t);return n>i||n===i&&r-a>3}function rn(e){return e instanceof Error?e.message:String(e)}async function an(e,t,n,r){try{process.stderr.write(` ${e}Syncing agent skill...${r}\n`);let{execSync:n}=await import(`child_process`);n(`bl skill update`,{stdio:`inherit`}),process.stderr.write(` ${t}\u2713 Agent skill updated.${r}\n\n`)}catch(e){process.stderr.write(` ${n}\u26a0 Agent skill sync failed: ${rn(e)}${r}\n`),process.stderr.write(` ${n} Run manually: bl skill update${r}\n\n`)}}async function on(e,n,r=Bt,i=Bt){let s=process.stderr.isTTY,c=s?`\x1B[32m`:``,l=s?`\x1B[33m`:``,u=s?`\x1B[36m`:``,d=s?`\x1B[2m`:``,f=s?`\x1B[0m`:``,p=ie({clientName:i,npmPackage:r});if(p===`brew`||p===`winget`)return!1;let[m]=Ut(n),[h]=Ut(e),g=m>h;if(process.stderr.write(`
39
- `),process.stderr.write(` ${l}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${f}\n`),g?process.stderr.write(` ${l}⚡ Major update detected: ${e} → ${n}${f}\n`):process.stderr.write(` ${l}⚡ Significant update detected: ${e} → ${n}${f}\n`),process.stderr.write(` ${d}Auto-updating to keep your CLI up to date...${f}\n`),process.stderr.write(` ${l}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${f}\n\n`),p===`binary`)try{let{performBinaryUpdate:t}=await Promise.resolve().then(()=>ti),r=await t(n);return Qt({lastChecked:Date.now(),latestVersion:r}),process.stderr.write(` ${c}✓ Update complete: ${e} → ${r}${f}\n`),process.stderr.write(` ${d}Run ${u}bl --version${f}${d} to verify.${f}\n\n`),await an(d,c,l,f),en=null,!0}catch(e){process.stderr.write(` ${l}⚠ Auto-update failed: ${rn(e)}${f}\n`);let n=e instanceof t&&e.hint?e.hint.replace(/^Re-run:\s*/i,``):process.platform===`win32`?`irm ${a} | iex`:`curl -fsSL ${o} | bash`;return process.stderr.write(` ${l} Re-run:${f} ${u}${n}${f}\n\n`),!1}let _=`npm install -g ${r}@latest`;try{let{execSync:t}=await import(`child_process`);t(_,{stdio:`inherit`});let i=null;try{let e=t(`npm root -g`,{encoding:`utf-8`}).trim(),n=je(e,r,`package.json`),a=Pe(n,`utf-8`);i=JSON.parse(a).version??null}catch(e){process.stderr.write(` ${l}⚠ Could not verify installed version: ${rn(e)}${f}\n`)}return Qt({lastChecked:Date.now(),latestVersion:i??n}),process.stderr.write(` ${c}✓ Update complete: ${e} → ${i??n}${f}\n`),process.stderr.write(` ${d}Run ${u}bl --version${f}${d} to verify.${f}\n\n`),await an(d,c,l,f),en=null,!0}catch(e){return process.stderr.write(` ${l}⚠ Auto-update failed: ${rn(e)}${f}\n`),process.stderr.write(` ${l} If this is a permissions error (EACCES), retry with sudo or fix npm perms.${f}\n`),process.stderr.write(` ${l} Run manually:${f} ${u}${_}${f}\n\n`),!1}}async function sn(e,t=Bt,n=Bt){let r=Zt(),i=Date.now();if(r&&i-r.lastChecked<864e5)return;let a=ie({clientName:n,npmPackage:t}),o=null;if(a===`binary`){try{let{fetchBinaryChannelVersion:e}=await Promise.resolve().then(()=>ti);o=await e(`latest`,Ht)}catch{o=null}o||=await $t(Ht,t)}else o=await $t(Ht,t);o&&(Qt({lastChecked:i,latestVersion:o}),o&&Yt(o,e)&&(en=o))}function cn(e,t,n){return Rt(e.sources.file.language??s).localize({"en-US":`Profile "${t}" does not support command "${n}"; API Key settings will be read from Profile "default" for this run.`,"zh-CN":`Profile "${t}" 不支持命令 "${n}",本次将从 Profile "default" 读取 API Key 配置。`})}function ln(e,t){let n=cn(e,t,e.path.join(` `));if(e.settings.output===`json`){process.stderr.write(JSON.stringify({warning:{code:`PROFILE_API_KEY_FALLBACK`,message:n,profile:t,command_path:e.path,fallback_profile:`default`,credential_fields:[`api_key`,`base_url`]}},null,2)+`
33
+ ${f?`${f}\n\n`:``}${i(this.localize(L.gettingHelp))}
34
+ ${o(this.localize(L.gettingHelpDescription1))}
35
+ ${o(this.localize(L.gettingHelpDescription2))} ${this.cliName} ${this.helpExample()} --help
36
+ `)}printCommandHelp(e,t,n){let r=e=>this.bold(e,n),i=e=>this.accent(e,n),a=e=>this.dim(e,n),o=[this.cliName,...t].join(` `);n.write(`\n${this.localize(e.description)}\n`),n.write(`${r(this.localize(L.usage))} ${o}${e.usageArgs?` ${e.usageArgs}`:``}\n`),n.write(`${r(this.localize(L.authentication))} ${i(this.localize(jt[e.auth]))}\n`),e.risk!==void 0&&(n.write(`${r(this.localize(L.risk))} ${i(this.localize(Mt[e.risk.level]))}\n`),n.write(`${r(this.localize(L.riskMessage))} ${this.localize(e.risk.message)}\n`));let s=[...Object.entries(e.flags??{}),...Object.entries(Dt(e)),...Object.entries(w(e))];if(s.length>0){let e=s.map(([e,t])=>({flag:At(e,t),desc:this.localize(t.description)})),t=Math.max(...e.map(e=>e.flag.length));n.write(`\n${r(this.localize(L.flags))}\n`);for(let r of e)n.write(` ${i(r.flag.padEnd(t+2))} ${a(r.desc)}\n`)}if(n.write(`\n${r(this.localize(L.globalFlags))}\n`),n.write(this.buildFlagLines(l,i,a)+`
37
+ `),e.notes&&e.notes.length>0){n.write(`\n${r(this.localize(L.notes))}\n`);for(let t of e.notes)n.write(` ${this.localize(t)}\n`)}if(e.exampleArgs&&e.exampleArgs.length>0){n.write(`\n${r(this.localize(L.examples))}\n`);for(let t of e.exampleArgs){let r=this.localize(t);e.risk!==void 0&&/(?:^|\s)--yes(?:\s|$)/.test(r)&&n.write(` ${a(this.localize(L.confirmedExample))}\n`);let i=r.startsWith(`#`)?r:r?`${o} ${r}`:o;n.write(` ${a(i)}\n`)}}}printChildren(e,t,n){let r=[],i=(e,t)=>{for(let[n,a]of e.children)a.command&&r.push({path:`${t} ${n}`,auth:a.command.auth,desc:this.localize(a.command.description)}),a.children.size>0&&i(a,`${t} ${n}`)};i(e,t),n.write(this.buildCommandLines(r,e=>this.accent(e,n),e=>this.dim(e,n))+`
38
+ `)}};function Pt(e,t){let{path:n,rest:r,hasHelpFlag:i,hasVersionFlag:a}=_t(e);if(a)return{kind:`version`};let o=t.locate(n);switch(o.kind){case`leaf`:return i?{kind:`help`,path:o.matched}:{kind:`run`,path:o.matched,command:o.command,rest:r};case`group`:return{kind:`help`,path:o.matched};case`unknown`:return{kind:`usageError`,error:o.error}}}function Ft(e){return e.startsWith(Oe())?e.replace(Oe(),`~`):e}function It(e,t,n){if(e.quiet||!bt(process.stderr))return;let r=e.configPath?Ft(e.configPath):`~/.bailian/config.json`,i=`${n.source} · api-key`,a=ce(t),o=I(process.stderr);process.stderr.write(`${o.brandBlue(`BAILIAN`)} ${o.dim(r)} ${o.dim(`|`)} ${o.dim(`Auth:`)} ${o.keyPink(a)} ${o.dim(i)}\n`)}function Lt(e){return{language:e,localize(t){return typeof t==`string`?t:t[e]??t[s]}}}const Rt=`https://registry.npmjs.org`,zt=`bailian-cli`,Bt=()=>Ae(ne(),`update-state.json`),Vt=3e3;function Ht(e){let t=String(e).split(`+`)[0].split(`-`)[0].trim().split(`.`).map(e=>{let t=Number(e);return Number.isFinite(t)?t:0});return[t[0]??0,t[1]??0,t[2]??0]}function Ut(e){let t=String(e).split(`+`)[0],n=t.indexOf(`-`);return n>=0?t.slice(n+1):``}function Wt(e){return Ut(e)!==``}function Gt(e){return e.length>0&&/^[0-9]+$/.test(e)}function Kt(e,t){let n=e?e.split(`.`):[],r=t?t.split(`.`):[];if(n.length===0&&r.length===0)return 0;if(n.length===0)return 1;if(r.length===0)return-1;let i=Math.max(n.length,r.length);for(let e=0;e<i;e++){let t=n[e],i=r[e];if(t===void 0)return-1;if(i===void 0)return 1;let a=Gt(t),o=Gt(i);if(a&&o){let e=Number(t)-Number(i);if(e!==0)return e>0?1:-1}else if(a!==o)return a?-1:1;else if(t!==i)return t>i?1:-1}return 0}function qt(e,t){let[n,r,i]=Ht(e),[a,o,s]=Ht(t);return n===a?r===o?i===s?Kt(Ut(e),Ut(t)):i>s?1:-1:r>o?1:-1:n>a?1:-1}function Jt(e,t){return qt(e,t)>0}function Yt(e,t){return tn(e,t)&&!Wt(e)}function Xt(){try{let e=Ne(Bt(),`utf-8`);return JSON.parse(e)}catch{return null}}function Zt(e){try{Fe(Bt(),JSON.stringify(e))}catch{}}async function Qt(e=Vt,t=zt){try{let n=t.replace(`/`,`%2f`),r=await fetch(`${Rt}/${n}/latest`,{headers:{Accept:`application/json`},signal:AbortSignal.timeout(e)});return r.ok?(await r.json()).version??null:null}catch{return null}}let $t=null;function en(){return $t}function tn(e,t){let[n,r]=Ht(e),[i,a]=Ht(t);return n>i||n===i&&r-a>3}function nn(e){return e instanceof Error?e.message:String(e)}async function rn(e,t,n,r){try{process.stderr.write(` ${e}Syncing agent skill...${r}\n`);let{execSync:n}=await import(`child_process`);n(`bl skill update`,{stdio:`inherit`}),process.stderr.write(` ${t}\u2713 Agent skill updated.${r}\n\n`)}catch(e){process.stderr.write(` ${n}\u26a0 Agent skill sync failed: ${nn(e)}${r}\n`),process.stderr.write(` ${n} Run manually: bl skill update${r}\n\n`)}}async function an(e,n,r=zt,i=zt){let s=process.stderr.isTTY,c=s?`\x1B[32m`:``,l=s?`\x1B[33m`:``,u=s?`\x1B[36m`:``,d=s?`\x1B[2m`:``,f=s?`\x1B[0m`:``,p=re({clientName:i,npmPackage:r});if(p===`brew`||p===`winget`)return!1;let[m]=Ht(n),[h]=Ht(e),g=m>h;if(process.stderr.write(`
39
+ `),process.stderr.write(` ${l}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${f}\n`),g?process.stderr.write(` ${l}⚡ Major update detected: ${e} → ${n}${f}\n`):process.stderr.write(` ${l}⚡ Significant update detected: ${e} → ${n}${f}\n`),process.stderr.write(` ${d}Auto-updating to keep your CLI up to date...${f}\n`),process.stderr.write(` ${l}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${f}\n\n`),p===`binary`)try{let{performBinaryUpdate:t}=await Promise.resolve().then(()=>ti),r=await t(n);return Zt({lastChecked:Date.now(),latestVersion:r}),process.stderr.write(` ${c}✓ Update complete: ${e} → ${r}${f}\n`),process.stderr.write(` ${d}Run ${u}bl --version${f}${d} to verify.${f}\n\n`),await rn(d,c,l,f),$t=null,!0}catch(e){process.stderr.write(` ${l}⚠ Auto-update failed: ${nn(e)}${f}\n`);let n=e instanceof t&&e.hint?e.hint.replace(/^Re-run:\s*/i,``):process.platform===`win32`?`irm ${a} | iex`:`curl -fsSL ${o} | bash`;return process.stderr.write(` ${l} Re-run:${f} ${u}${n}${f}\n\n`),!1}let _=`npm install -g ${r}@latest`;try{let{execSync:t}=await import(`child_process`);t(_,{stdio:`inherit`});let i=null;try{let e=t(`npm root -g`,{encoding:`utf-8`}).trim(),n=Ae(e,r,`package.json`),a=Ne(n,`utf-8`);i=JSON.parse(a).version??null}catch(e){process.stderr.write(` ${l}⚠ Could not verify installed version: ${nn(e)}${f}\n`)}return Zt({lastChecked:Date.now(),latestVersion:i??n}),process.stderr.write(` ${c}✓ Update complete: ${e} → ${i??n}${f}\n`),process.stderr.write(` ${d}Run ${u}bl --version${f}${d} to verify.${f}\n\n`),await rn(d,c,l,f),$t=null,!0}catch(e){return process.stderr.write(` ${l}⚠ Auto-update failed: ${nn(e)}${f}\n`),process.stderr.write(` ${l} If this is a permissions error (EACCES), retry with sudo or fix npm perms.${f}\n`),process.stderr.write(` ${l} Run manually:${f} ${u}${_}${f}\n\n`),!1}}async function on(e,t=zt,n=zt){let r=Xt(),i=Date.now();if(r&&i-r.lastChecked<864e5)return;let a=re({clientName:n,npmPackage:t}),o=null;if(a===`binary`){try{let{fetchBinaryChannelVersion:e}=await Promise.resolve().then(()=>ti);o=await e(`latest`,Vt)}catch{o=null}o||=await Qt(Vt,t)}else o=await Qt(Vt,t);o&&(Zt({lastChecked:i,latestVersion:o}),o&&Jt(o,e)&&($t=o))}function sn(e,t,n){return Lt(e.sources.file.language??s).localize({"en-US":`Profile "${t}" does not support command "${n}"; API Key settings will be read from Profile "default" for this run.`,"zh-CN":`Profile "${t}" 不支持命令 "${n}",本次将从 Profile "default" 读取 API Key 配置。`})}function cn(e,t){let n=sn(e,t,e.path.join(` `));if(e.settings.output===`json`){process.stderr.write(JSON.stringify({warning:{code:`PROFILE_API_KEY_FALLBACK`,message:n,profile:t,command_path:e.path,fallback_profile:`default`,credential_fields:[`api_key`,`base_url`]}},null,2)+`
40
40
 
41
- `);return}process.stderr.write(`${n}\n`)}function un(e){return t=>{let n=r=>{let i=e[r];return i?i(t,()=>n(r+1)):Promise.resolve()};return n(0)}}const dn=async(e,t)=>{let{command:n,settings:r,sources:a}=e,o={identity:e.identity,settings:r,...ve(a)};if(n.auth===`apiKey`){let t=e.path.join(`.`),n=xe(a,t),s=n.sources;n.fallbackFrom&&!r.quiet&&ln(e,n.fallbackFrom);let c;try{c=de(s)}catch(e){if(!r.dryRun)throw e}e.client=new i({...o,...ve(s),apiCred:c}),c&&Lt(r,c.token,c)}else if(n.auth===`console`){let t;try{t=me(a)}catch(e){if(!r.dryRun)throw e}t&&(e.client=new i({...o,consoleCred:t}))}else if(n.auth===`openapi`){let t;try{t=ye(a)}catch(e){if(!r.dryRun)throw e}e.client=new i({...o,openApiCred:t})}await t()},fn=(e,t)=>Ee({identity:e.identity,settings:e.settings,authMethod:e.command.auth},e.path,e.flags,t),pn=async(e,t)=>{let n=sn(e.identity.version,e.identity.npmPackage,e.identity.clientName).catch(()=>{});await t(),await n;let r=e.path.length===1&&e.path[0]===`update`,i=tn();if(i&&!e.settings.quiet&&!r){if(Xt(i,e.identity.version))await on(e.identity.version,i,e.identity.npmPackage,e.identity.clientName);else{let t=F(process.stderr);process.stderr.write(`\n ${t.yellow(`Update available: ${e.identity.version} → ${i}`)}\n`),process.stderr.write(` Run ${t.cyan(`${e.identity.binName} update`)} to upgrade\n\n`)}}},mn=async(e,t)=>{if(e.command.risk===void 0||e.confirmed||e.settings.dryRun){await t();return}throw new At({message:e.localize(e.command.risk.message),hint:e.localize(kt())})},hn=e=>e.command.run(e);function gn(e,t){return e[t]?.trim()||void 0}function _n(e=process.env){return{httpProxy:gn(e,`HTTP_PROXY`),httpsProxy:gn(e,`HTTPS_PROXY`),noProxy:gn(e,`NO_PROXY`)}}function vn(){let{httpProxy:e,httpsProxy:n,noProxy:r}=_n();if(e||n)try{Re(new Le({httpProxy:e,httpsProxy:n,noProxy:r}))}catch(e){throw new t(`Invalid proxy configuration: ${e instanceof Error?e.message:String(e)}`,c.USAGE,`Check HTTP_PROXY / HTTPS_PROXY values, e.g. export HTTPS_PROXY=http://127.0.0.1:7890`,{cause:e})}}const yn=`https://bailian.console.aliyun.com`,bn=`${yn}/cn-beijing`,xn=`${bn}/?tab=app#/api-key`,Sn=`${yn}/cn-beijing?tab=plan#/efm/subscription/overview`;function Cn(e){return`${bn}?tab=mcp#/mcp-market/detail/${e}`}const wn=Cn(`WebSearch`),Tn=`https://help.aliyun.com/zh/model-studio/cosyvoice-voice-list`;let L;function En(){return`If the DashScope host is wrong, check baseUrl (--base-url, ${L} config show, or DASHSCOPE_BASE_URL).`}function R(e){return e.padEnd(13)}function Dn(e){return e.split(`
41
+ `);return}process.stderr.write(`${n}\n`)}function ln(e){return t=>{let n=r=>{let i=e[r];return i?i(t,()=>n(r+1)):Promise.resolve()};return n(0)}}const un=async(e,t)=>{let{command:n,settings:r,sources:a}=e,o={identity:e.identity,settings:r,..._e(a)};if(n.auth===`apiKey`){let t=e.path.join(`.`),n=be(a,t),s=n.sources;n.fallbackFrom&&!r.quiet&&cn(e,n.fallbackFrom);let c;try{c=ue(s)}catch(e){if(!r.dryRun)throw e}e.client=new i({...o,..._e(s),apiCred:c}),c&&It(r,c.token,c)}else if(n.auth===`console`){let t;try{t=pe(a)}catch(e){if(!r.dryRun)throw e}t&&(e.client=new i({...o,consoleCred:t}))}else if(n.auth===`openapi`){let t;try{t=ve(a)}catch(e){if(!r.dryRun)throw e}e.client=new i({...o,openApiCred:t})}await t()},dn=(e,t)=>Te({identity:e.identity,settings:e.settings,authMethod:e.command.auth},e.path,e.flags,t),fn=async(e,t)=>{let n=on(e.identity.version,e.identity.npmPackage,e.identity.clientName).catch(()=>{});await t(),await n;let r=e.path.length===1&&e.path[0]===`update`,i=en();if(i&&!e.settings.quiet&&!r){if(Yt(i,e.identity.version))await an(e.identity.version,i,e.identity.npmPackage,e.identity.clientName);else{let t=I(process.stderr);process.stderr.write(`\n ${t.yellow(`Update available: ${e.identity.version} → ${i}`)}\n`),process.stderr.write(` Run ${t.cyan(`${e.identity.binName} update`)} to upgrade\n\n`)}}},pn=async(e,t)=>{if(e.command.risk===void 0||e.confirmed||e.settings.dryRun){await t();return}throw new kt({message:e.localize(e.command.risk.message),hint:e.localize(Ot())})},mn=e=>e.command.run(e);function hn(e,t){return e[t]?.trim()||void 0}function gn(e=process.env){return{httpProxy:hn(e,`HTTP_PROXY`),httpsProxy:hn(e,`HTTPS_PROXY`),noProxy:hn(e,`NO_PROXY`)}}function _n(){let{httpProxy:e,httpsProxy:n,noProxy:r}=gn();if(e||n)try{Le(new Ie({httpProxy:e,httpsProxy:n,noProxy:r}))}catch(e){throw new t(`Invalid proxy configuration: ${e instanceof Error?e.message:String(e)}`,c.USAGE,`Check HTTP_PROXY / HTTPS_PROXY values, e.g. export HTTPS_PROXY=http://127.0.0.1:7890`,{cause:e})}}const vn=`https://bailian.console.aliyun.com`,yn=`${vn}/cn-beijing`,bn=`${yn}/?tab=app#/api-key`,xn=`${vn}/cn-beijing?tab=plan#/efm/subscription/overview`;function Sn(e){return`${yn}?tab=mcp#/mcp-market/detail/${e}`}const Cn=Sn(`WebSearch`),wn=`https://help.aliyun.com/zh/model-studio/cosyvoice-voice-list`;function Tn(e){return`https://billing-cost.console.aliyun.com/refund/refund?instanceId=${encodeURIComponent(e)}`}let R;function En(){return`If the DashScope host is wrong, check baseUrl (--base-url, ${R} config show, or DASHSCOPE_BASE_URL).`}function z(e){return e.padEnd(13)}function Dn(e){return e.split(`
42
42
  `).map((e,t)=>t===0?e:` `.repeat(13)+e).join(`
43
- `)}function On(e){return e.exitCode===c.AUTH?kn(e.hint)?e.hint:[e.hint,``,`${L} auth login --api-key <your-key>`,`${L} auth status`,`Get API Key: ${xn}`].filter(e=>e!==void 0).join(`
43
+ `)}function On(e){return e.exitCode===c.AUTH?kn(e.hint)?e.hint:[e.hint,``,`${R} auth login --api-key <your-key>`,`${R} auth status`,`Get API Key: ${bn}`].filter(e=>e!==void 0).join(`
44
44
  `):e.hint}function kn(e){return e?e.includes(`auth login --console`)||e.includes(`auth login --open-api`)||e.includes(`--access-key-id`)||e.includes(`ALIBABA_CLOUD_ACCESS_KEY_`):!1}function An(e=process.argv.slice(2),t=process.env.DASHSCOPE_OUTPUT){for(let n=0;n<e.length;n++){let r=e[n];if(r===`--output`)return E(e[n+1]||t);if(r?.startsWith(`--output=`))return E(r.slice(9))}return E(t)}function jn(e){let n=e.cause,r=n?.code,i=n?.message,a=[];r&&a.push(r),i&&i!==r&&a.push(i);let o=a.length>0?a.join(`: `):`unknown cause`;return new t(`Network request failed: ${o}`,c.NETWORK,Mn(r),{cause:n??e})}function Mn(e){switch(e){case`ENOTFOUND`:case`EAI_AGAIN`:return`DNS resolution failed. Check DNS / network. ${En()}`;case`ECONNREFUSED`:return`Connection refused. Check the target host/port and proxy settings.`;case`ECONNRESET`:return`Connection reset by peer. Retry, or check proxy / firewall.
45
- If you are behind a VPN or corporate proxy, route ${L} through it:\nexport HTTPS_PROXY=http://127.0.0.1:<proxy-port>`;case`ETIMEDOUT`:return`Connection timed out. Check your network. ${En()}`;case`CERT_HAS_EXPIRED`:case`UNABLE_TO_VERIFY_LEAF_SIGNATURE`:case`DEPTH_ZERO_SELF_SIGNED_CERT`:return`TLS certificate error. Check system clock and CA bundle.`;default:return`Check network and proxy (HTTP_PROXY / HTTPS_PROXY). ${En()}`}}function Nn(e){let n=e.code,r=`Check the file path and permissions.`;return n===`ENOENT`?r=`File or directory not found.`:n===`EACCES`||n===`EPERM`?r=`Permission denied — check file or directory permissions.`:n===`ENOSPC`&&(r=`Disk full — free up space and try again.`),new t(`File system error: ${e.message}`,c.GENERAL,r,{cause:e})}function Pn(e){let t=e.cause,n=0;for(;t instanceof Error&&n<5;)process.stderr.write(`${R(`Caused by:`)}${t.message}\n`),t=t.cause,n++}function Fn(e){process.stderr.write(`\n${R(`Error:`)}${e.message}\n`);let t=On(e);t&&process.stderr.write(`${R(`Hint:`)}${Dn(t)}\n`);let n=e.api;if(n){if(n.httpStatus!==void 0){let e=n.apiCode?` (${n.apiCode})`:``;process.stderr.write(`${R(`Status:`)}HTTP ${n.httpStatus}${e}\n`)}else n.apiCode&&process.stderr.write(`${R(`Code:`)}${n.apiCode}\n`);n.requestId&&process.stderr.write(`${R(`Request ID:`)}${n.requestId}\n`)}Pn(e),process.stderr.write(`${R(`Exit code:`)}${e.exitCode}\n`)}function z(e,n){if(L=n,e instanceof t&&(An()===`json`?process.stderr.write(JSON.stringify(e.toJSON(),null,2)+`
46
- `):Fn(e),process.exit(e.exitCode)),e instanceof Error){if(e.name===`AbortError`||e.name===`TimeoutError`||e.message.includes(`timed out`))return z(new t(`Request timed out.`,c.TIMEOUT,`Try increasing --timeout (e.g. --timeout 60).
47
- ${En()}\nRun: ${L} auth status — to check credentials.`,{cause:e}),L);if(e instanceof TypeError&&e.message===`fetch failed`)return z(jn(e),L);let n=e.code;if(typeof n==`string`&&n.startsWith(`E`))return z(Nn(e),L);process.stderr.write(`\n${R(`Error:`)}${e.message}\n`),Pn(e),process.env.DASHSCOPE_VERBOSE===`1`&&process.stderr.write(`${e.stack}\n`)}else process.stderr.write(`\n${R(`Error:`)}${String(e)}\n`);process.exit(c.GENERAL)}function In(e){return M(re(),`plugins`,e.npmPackage)}function Ln(e){return M(In(e),`package.json`)}function Rn(e,t){return M(In(e),`node_modules`,...t.split(`/`))}async function zn(e){try{return JSON.parse(await Ge(e,`utf8`))}catch(n){throw new t(`Could not parse JSON file: ${e}`,c.GENERAL,`Repair or remove the invalid file and try again.`,{cause:n})}}async function Bn(e){let t=Ln(e);return ze(t)?zn(t):{dependencies:{}}}async function Vn(e,t){return Hn(Rn(e,t))}async function Hn(e){return zn(M(e,`package.json`))}const Un=/* @__PURE__ */ new Set([`none`,`apiKey`,`console`,`openapi`]),Wn=/^[a-z0-9][a-z0-9-]*$/;function Gn(e,t,r){if(t.name!==e)throw Error(`Package name mismatch: expected "${e}", received "${t.name??``}".`);let i=t.bailianCli;if(!i||i.type!==`command-pack`)throw Error(`Package "${e}" is missing bailianCli.type="command-pack".`);if(i.apiVersion!==n)throw Error(`Command Pack API ${i.apiVersion} is not supported; this CLI supports API ${n}.`);if(i.minCliVersion&&Jt(r.version,i.minCliVersion)<0)throw Error(`Command Pack requires ${r.npmPackage} ${i.minCliVersion} or newer; current version is ${r.version}.`);if(!i.entry||$e(i.entry))throw Error(`Command Pack "${e}" must declare a relative bailianCli.entry.`);return i}function Kn(e,t){let n=e.split(/\s+/).filter(Boolean).join(` `);if(!e||e!==n||!e.split(` `).every(e=>Wn.test(e)))throw Error(`Invalid command path "${e}".`);if(!t.commandPrefixes.some(t=>e===t||e.startsWith(`${t} `)))throw Error(`Command "${e}" is outside the allowed prefixes: ${t.commandPrefixes.join(`, `)}.`)}function qn(e){if(typeof e==`string`)return e.length>0;if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return f.every(e=>typeof t[e]==`string`&&t[e].length>0)}function Jn(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.level===`high`&&qn(t.message)}function Yn(e,t){if(!t||typeof t!=`object`)throw Error(`Command "${e}" must export an object.`);let n=t;if(!qn(n.description))throw Error(`Command "${e}" is missing a description.`);if(!n.auth||!Un.has(n.auth))throw Error(`Command "${e}" has an invalid auth requirement.`);if(n.risk!==void 0&&!Jn(n.risk))throw Error(`Command "${e}" has invalid risk metadata.`);if(typeof n.run!=`function`)throw Error(`Command "${e}" is missing run(ctx).`)}function Xn(e,n,r){return Object.fromEntries(Object.entries(n).map(([n,i])=>[n,{description:i.description,auth:i.auth,risk:i.risk,usageArgs:i.usageArgs,exampleArgs:i.exampleArgs,notes:i.notes,flags:i.flags,validate:i.validate,run:a=>{let o={identity:a.identity,settings:a.settings,flags:a.flags,client:a.client,output:{result(e,t){let n=a.settings.output===`text`&&t?.text!==void 0?t.text:ne(e,a.settings.output);process.stdout.write(`${n}\n`)},line(e){process.stdout.write(`${e}\n`)},write(e){process.stdout.write(e)}},errors:{general(e,n){return new t(e,c.GENERAL,n?.hint,{cause:n?.cause})},usage(e,t){return new p(e,t)},timeout(e=`Request timed out.`,n){return new t(e,c.TIMEOUT,n?.hint,{cause:n?.cause})}},credentials:{apiKey(){if(!r.credentialAccess?.includes(`apiKey`))throw new t(`Command Pack "${e}" is not allowed to access API-key credentials.`,c.GENERAL);if(i.auth!==`apiKey`)throw new t(`Command "${n}" must declare auth="apiKey" before accessing API-key credentials.`,c.GENERAL);let o=a.client.exportApiCredential();if(!o)throw new t(`No API key available to the Command Pack.`,c.AUTH);return o}}};return i.run(o)}}]))}async function Zn(e,t,n,r,i=Rn(r,e)){let a=Gn(e,t,r),o=await Je(i),s=await Je(tt(o,a.entry)),c=et(o,s);if(!c||c.startsWith(`..`)||$e(c))throw Error(`Command Pack entry must stay inside the package root: ${a.entry}`);let l=(await import(nt(s).href)).default;if(!l||typeof l!=`object`||Array.isArray(l))throw Error(`Command Pack "${e}" must default-export a command map.`);let u=Object.entries(l);if(u.length===0)throw Error(`Command Pack "${e}" does not export any commands.`);for(let[e,t]of u)Kn(e,n),Yn(e,t);let d=Xn(e,l,n);return new Pt(d,r.binName),d}function Qn(e){return e.startsWith(`file:`)?`linked`:`installed`}async function $n(e,t,n){let r={...e},i=[],a;try{a=await Bn(t)}catch(e){return{commands:r,reports:[{name:`(plugin sandbox)`,source:`installed`,status:`failed`,commands:[],error:e instanceof Error?e.message:String(e)}]}}for(let[e,o]of Object.entries(a.dependencies??{}).sort(([e],[t])=>e.localeCompare(t))){let a=Qn(o),s=n.supported[e];if(!s){i.push({name:e,source:a,status:`failed`,commands:[],error:`Command Pack "${e}" is not supported by ${t.binName}.`});continue}try{let n=await Vn(t,e),o=await Zn(e,n,s,t),c=Object.keys(o).filter(e=>e in r);if(c.length>0)throw Error(`Command conflicts: ${c.join(`, `)}.`);Object.assign(r,o),i.push({name:e,version:n.version,source:a,status:`loaded`,commands:Object.keys(o).sort()})}catch(t){i.push({name:e,source:a,status:`failed`,commands:[],error:t instanceof Error?t.message:String(t)})}}return{commands:r,reports:i}}const er={name:`bailian-cli-command-packs`,private:!0,dependencies:{}},tr=/* @__PURE__ */ new Set(/* @__PURE__ */ `PATH.HOME.USER.LOGNAME.SHELL.TMPDIR.TEMP.TMP.LANG.TERM.NODE.NODE_PATH.NODE_OPTIONS.FORCE_COLOR.NO_COLOR.NPM_TOKEN.NODE_AUTH_TOKEN.HTTP_PROXY.HTTPS_PROXY.NO_PROXY.http_proxy.https_proxy.no_proxy.SystemRoot.ComSpec.APPDATA.PATHEXT`.split(`.`)),nr=/* @__PURE__ */ new Set([`registry`,`userconfig`,`globalconfig`,`cache`,`proxy`,`https_proxy`,`noproxy`,`strict_ssl`,`ca`,`cafile`]);function rr(e){let t=/^(?:npm_config_|NPM_CONFIG_)(.+)$/.exec(e);return!!t&&nr.has(t[1].toLowerCase())}function ir(e,t){let n=Object.keys(t.supported);return n.length>0?`Allowed packages: ${n.join(`, `)}`:`${e.binName} does not currently support any Command Packs.`}function ar(e=process.env){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(tr.has(n)||n.startsWith(`LC_`)||rr(n))&&(t[n]=r);return t}async function or(e){await k(e,{recursive:!0,mode:448});let t=M(e,`package.json`);ze(t)||await Ze(t,`${JSON.stringify(er,null,2)}\n`,{mode:384})}async function sr(e,n){if(it(`npm`,[`--version`],{encoding:`utf-8`}).status!==0){let e=ae()?"Command Packs need a local npm. Install Node.js, or use `npm install -g bailian-cli` instead of the binary install.":`Install Node.js / npm and retry.`;throw new t(`npm is required to install, link, or remove Command Packs, but was not found on PATH.`,c.GENERAL,e)}await new Promise((r,i)=>{let a=rt(`npm`,e,{cwd:n,env:ar(),stdio:[`inherit`,`pipe`,`pipe`]});a.stdout.on(`data`,e=>process.stderr.write(e)),a.stderr.on(`data`,e=>process.stderr.write(e)),a.once(`error`,i),a.once(`close`,(n,a)=>{if(n===0){r();return}i(new t(`npm ${e[0]} failed${a?` with signal ${a}`:` with exit code ${n}`}.`,c.GENERAL))})})}async function cr(e){let n=In(e);await or(n);let r=M(n,`.lock`);for(let e=0;e<2;e++)try{let e=await We(r,`wx`,384);return await e.writeFile(`${process.pid} ${Date.now()}\n`),await e.close(),async()=>{try{await j(r)}catch{}}}catch(e){if(e.code!==`EEXIST`)throw e;try{let e=await Xe(r);if(Date.now()-e.mtimeMs>6e5){await j(r);continue}}catch{continue}throw new t(`Another Command Pack install, link, or remove operation is already running.`,c.GENERAL,`Wait for it to finish and try again.`)}throw new t(`Could not acquire the Command Pack operation lock.`,c.GENERAL)}async function lr(e,t){let n=await cr(e);try{return await t()}finally{await n()}}function ur(e,n,r){let i=e.trim(),a=/^(@[^/\s]+\/[^@/\s]+)(?:@([a-zA-Z0-9][a-zA-Z0-9._-]*))?$/.exec(i);if(!a)throw new t(`Unsupported Command Pack package spec: "${e}".`,c.USAGE,`Use an allowlisted scoped package name with an optional version or tag.`);let o=a[1];if(!r.supported[o])throw new t(`Command Pack "${o}" is not allowlisted for ${n.binName}.`,c.USAGE,ir(n,r));return{name:o,requested:i}}async function dr(e,t,n,r){let i=r.supported[e],a=await Hn(t);return{pjson:a,commands:await Zn(e,a,i,n,t)}}function fr(e,t){return t.startsWith(`file:`)?t:`${e}@${t}`}async function pr(e,t,n){if(t){await sr([`install`,fr(e,t),`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],n);return}await sr([`uninstall`,e,`--ignore-scripts`,`--no-fund`,`--no-audit`],n)}async function mr(e,n,r){let{name:i,requested:a}=ur(e,n,r);return lr(n,async()=>{let e=In(n),o=(await Bn(n)).dependencies?.[i];try{await sr([`install`,a,`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],e);let o=await dr(i,Rn(n,i),n,r);if(!o.pjson.version)throw new t(`Command Pack "${i}" has no package version.`,c.USAGE);return{name:i,version:o.pjson.version,commands:Object.keys(o.commands).sort()}}catch(t){try{await pr(i,o,e)}catch{}throw t}})}async function hr(e,n,r){let i=tt(e);if(!ze(M(i,`package.json`)))throw new t(`Command Pack path does not exist: ${i}`,c.USAGE);let a=(await Hn(i)).name;if(!a||!r.supported[a])throw new t(`Local package "${a??`(unnamed)`}" is not an allowlisted Command Pack for ${n.binName}.`,c.USAGE,ir(n,r));let o=await dr(a,i,n,r);return lr(n,async()=>{await sr([`install`,`file:${i}`,`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],In(n));let e=await dr(a,Rn(n,a),n,r);return{name:a,version:e.pjson.version??o.pjson.version,commands:Object.keys(e.commands).sort()}})}async function gr(e,n,r){if(!r.supported[e])throw new t(`Command Pack "${e}" is not allowlisted for ${n.binName}.`,c.USAGE,ir(n,r));if(!(e in((await Bn(n)).dependencies??{})))throw new t(`Command Pack "${e}" is not installed.`,c.USAGE);await lr(n,()=>sr([`uninstall`,e,`--ignore-scripts`,`--no-fund`,`--no-audit`],In(n)))}async function _r(e,t){return(await $n({},e,t)).reports}function vr(e,t){return{install:n=>mr(n,e,t),link:n=>hr(n,e,t),list:()=>_r(e,t),remove:n=>gr(n,e,t)}}function yr(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function br(e){for(let t=0;t<e.length;t++){let n=e[t];if(n===`--config`)return{config:e[t+1]};if(n?.startsWith(`--config=`))return{config:n.slice(9)}}return{}}function xr(e){try{vn()}catch(t){z(t,e)}process.on(`SIGINT`,()=>{process.stderr.write(`
45
+ If you are behind a VPN or corporate proxy, route ${R} through it:\nexport HTTPS_PROXY=http://127.0.0.1:<proxy-port>`;case`ETIMEDOUT`:return`Connection timed out. Check your network. ${En()}`;case`CERT_HAS_EXPIRED`:case`UNABLE_TO_VERIFY_LEAF_SIGNATURE`:case`DEPTH_ZERO_SELF_SIGNED_CERT`:return`TLS certificate error. Check system clock and CA bundle.`;default:return`Check network and proxy (HTTP_PROXY / HTTPS_PROXY). ${En()}`}}function Nn(e){let n=e.code,r=`Check the file path and permissions.`;return n===`ENOENT`?r=`File or directory not found.`:n===`EACCES`||n===`EPERM`?r=`Permission denied — check file or directory permissions.`:n===`ENOSPC`&&(r=`Disk full — free up space and try again.`),new t(`File system error: ${e.message}`,c.GENERAL,r,{cause:e})}function Pn(e){let t=e.cause,n=0;for(;t instanceof Error&&n<5;)process.stderr.write(`${z(`Caused by:`)}${t.message}\n`),t=t.cause,n++}function Fn(e){process.stderr.write(`\n${z(`Error:`)}${e.message}\n`);let t=On(e);t&&process.stderr.write(`${z(`Hint:`)}${Dn(t)}\n`);let n=e.api;if(n){if(n.httpStatus!==void 0){let e=n.apiCode?` (${n.apiCode})`:``;process.stderr.write(`${z(`Status:`)}HTTP ${n.httpStatus}${e}\n`)}else n.apiCode&&process.stderr.write(`${z(`Code:`)}${n.apiCode}\n`);n.requestId&&process.stderr.write(`${z(`Request ID:`)}${n.requestId}\n`)}Pn(e),process.stderr.write(`${z(`Exit code:`)}${e.exitCode}\n`)}function B(e,n){if(R=n,e instanceof t&&(An()===`json`?process.stderr.write(JSON.stringify(e.toJSON(),null,2)+`
46
+ `):Fn(e),process.exit(e.exitCode)),e instanceof Error){if(e.name===`AbortError`||e.name===`TimeoutError`||e.message.includes(`timed out`))return B(new t(`Request timed out.`,c.TIMEOUT,`Try increasing --timeout (e.g. --timeout 60).
47
+ ${En()}\nRun: ${R} auth status — to check credentials.`,{cause:e}),R);if(e instanceof TypeError&&e.message===`fetch failed`)return B(jn(e),R);let n=e.code;if(typeof n==`string`&&n.startsWith(`E`))return B(Nn(e),R);process.stderr.write(`\n${z(`Error:`)}${e.message}\n`),Pn(e),process.env.DASHSCOPE_VERBOSE===`1`&&process.stderr.write(`${e.stack}\n`)}else process.stderr.write(`\n${z(`Error:`)}${String(e)}\n`);process.exit(c.GENERAL)}function In(e){return N(ne(),`plugins`,e.npmPackage)}function Ln(e){return N(In(e),`package.json`)}function Rn(e,t){return N(In(e),`node_modules`,...t.split(`/`))}async function zn(e){try{return JSON.parse(await We(e,`utf8`))}catch(n){throw new t(`Could not parse JSON file: ${e}`,c.GENERAL,`Repair or remove the invalid file and try again.`,{cause:n})}}async function Bn(e){let t=Ln(e);return Re(t)?zn(t):{dependencies:{}}}async function Vn(e,t){return Hn(Rn(e,t))}async function Hn(e){return zn(N(e,`package.json`))}const Un=/* @__PURE__ */ new Set([`none`,`apiKey`,`console`,`openapi`]),Wn=/^[a-z0-9][a-z0-9-]*$/;function Gn(e,t,r){if(t.name!==e)throw Error(`Package name mismatch: expected "${e}", received "${t.name??``}".`);let i=t.bailianCli;if(!i||i.type!==`command-pack`)throw Error(`Package "${e}" is missing bailianCli.type="command-pack".`);if(i.apiVersion!==n)throw Error(`Command Pack API ${i.apiVersion} is not supported; this CLI supports API ${n}.`);if(i.minCliVersion&&qt(r.version,i.minCliVersion)<0)throw Error(`Command Pack requires ${r.npmPackage} ${i.minCliVersion} or newer; current version is ${r.version}.`);if(!i.entry||Qe(i.entry))throw Error(`Command Pack "${e}" must declare a relative bailianCli.entry.`);return i}function Kn(e,t){let n=e.split(/\s+/).filter(Boolean).join(` `);if(!e||e!==n||!e.split(` `).every(e=>Wn.test(e)))throw Error(`Invalid command path "${e}".`);if(!t.commandPrefixes.some(t=>e===t||e.startsWith(`${t} `)))throw Error(`Command "${e}" is outside the allowed prefixes: ${t.commandPrefixes.join(`, `)}.`)}function qn(e){if(typeof e==`string`)return e.length>0;if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return f.every(e=>typeof t[e]==`string`&&t[e].length>0)}function Jn(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.level===`high`&&qn(t.message)}function Yn(e,t){if(!t||typeof t!=`object`)throw Error(`Command "${e}" must export an object.`);let n=t;if(!qn(n.description))throw Error(`Command "${e}" is missing a description.`);if(!n.auth||!Un.has(n.auth))throw Error(`Command "${e}" has an invalid auth requirement.`);if(n.risk!==void 0&&!Jn(n.risk))throw Error(`Command "${e}" has invalid risk metadata.`);if(typeof n.run!=`function`)throw Error(`Command "${e}" is missing run(ctx).`)}function Xn(e,n,r){return Object.fromEntries(Object.entries(n).map(([n,i])=>[n,{description:i.description,auth:i.auth,risk:i.risk,usageArgs:i.usageArgs,exampleArgs:i.exampleArgs,notes:i.notes,flags:i.flags,validate:i.validate,run:a=>{let o={identity:a.identity,settings:a.settings,flags:a.flags,client:a.client,output:{result(e,t){let n=a.settings.output===`text`&&t?.text!==void 0?t.text:te(e,a.settings.output);process.stdout.write(`${n}\n`)},line(e){process.stdout.write(`${e}\n`)},write(e){process.stdout.write(e)}},errors:{general(e,n){return new t(e,c.GENERAL,n?.hint,{cause:n?.cause})},usage(e,t){return new p(e,t)},timeout(e=`Request timed out.`,n){return new t(e,c.TIMEOUT,n?.hint,{cause:n?.cause})}},credentials:{apiKey(){if(!r.credentialAccess?.includes(`apiKey`))throw new t(`Command Pack "${e}" is not allowed to access API-key credentials.`,c.GENERAL);if(i.auth!==`apiKey`)throw new t(`Command "${n}" must declare auth="apiKey" before accessing API-key credentials.`,c.GENERAL);let o=a.client.exportApiCredential();if(!o)throw new t(`No API key available to the Command Pack.`,c.AUTH);return o}}};return i.run(o)}}]))}async function Zn(e,t,n,r,i=Rn(r,e)){let a=Gn(e,t,r),o=await qe(i),s=await qe(et(o,a.entry)),c=$e(o,s);if(!c||c.startsWith(`..`)||Qe(c))throw Error(`Command Pack entry must stay inside the package root: ${a.entry}`);let l=(await import(tt(s).href)).default;if(!l||typeof l!=`object`||Array.isArray(l))throw Error(`Command Pack "${e}" must default-export a command map.`);let u=Object.entries(l);if(u.length===0)throw Error(`Command Pack "${e}" does not export any commands.`);for(let[e,t]of u)Kn(e,n),Yn(e,t);let d=Xn(e,l,n);return new Nt(d,r.binName),d}function Qn(e){return e.startsWith(`file:`)?`linked`:`installed`}async function $n(e,t,n){let r={...e},i=[],a;try{a=await Bn(t)}catch(e){return{commands:r,reports:[{name:`(plugin sandbox)`,source:`installed`,status:`failed`,commands:[],error:e instanceof Error?e.message:String(e)}]}}for(let[e,o]of Object.entries(a.dependencies??{}).sort(([e],[t])=>e.localeCompare(t))){let a=Qn(o),s=n.supported[e];if(!s){i.push({name:e,source:a,status:`failed`,commands:[],error:`Command Pack "${e}" is not supported by ${t.binName}.`});continue}try{let n=await Vn(t,e),o=await Zn(e,n,s,t),c=Object.keys(o).filter(e=>e in r);if(c.length>0)throw Error(`Command conflicts: ${c.join(`, `)}.`);Object.assign(r,o),i.push({name:e,version:n.version,source:a,status:`loaded`,commands:Object.keys(o).sort()})}catch(t){i.push({name:e,source:a,status:`failed`,commands:[],error:t instanceof Error?t.message:String(t)})}}return{commands:r,reports:i}}const er={name:`bailian-cli-command-packs`,private:!0,dependencies:{}},tr=/* @__PURE__ */ new Set(/* @__PURE__ */ `PATH.HOME.USER.LOGNAME.SHELL.TMPDIR.TEMP.TMP.LANG.TERM.NODE.NODE_PATH.NODE_OPTIONS.FORCE_COLOR.NO_COLOR.NPM_TOKEN.NODE_AUTH_TOKEN.HTTP_PROXY.HTTPS_PROXY.NO_PROXY.http_proxy.https_proxy.no_proxy.SystemRoot.ComSpec.APPDATA.PATHEXT`.split(`.`)),nr=/* @__PURE__ */ new Set([`registry`,`userconfig`,`globalconfig`,`cache`,`proxy`,`https_proxy`,`noproxy`,`strict_ssl`,`ca`,`cafile`]);function rr(e){let t=/^(?:npm_config_|NPM_CONFIG_)(.+)$/.exec(e);return!!t&&nr.has(t[1].toLowerCase())}function ir(e,t){let n=Object.keys(t.supported);return n.length>0?`Allowed packages: ${n.join(`, `)}`:`${e.binName} does not currently support any Command Packs.`}function ar(e=process.env){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(tr.has(n)||n.startsWith(`LC_`)||rr(n))&&(t[n]=r);return t}async function or(e){await A(e,{recursive:!0,mode:448});let t=N(e,`package.json`);Re(t)||await Xe(t,`${JSON.stringify(er,null,2)}\n`,{mode:384})}async function sr(e,n){if(rt(`npm`,[`--version`],{encoding:`utf-8`}).status!==0){let e=ie()?"Command Packs need a local npm. Install Node.js, or use `npm install -g bailian-cli` instead of the binary install.":`Install Node.js / npm and retry.`;throw new t(`npm is required to install, link, or remove Command Packs, but was not found on PATH.`,c.GENERAL,e)}await new Promise((r,i)=>{let a=nt(`npm`,e,{cwd:n,env:ar(),stdio:[`inherit`,`pipe`,`pipe`]});a.stdout.on(`data`,e=>process.stderr.write(e)),a.stderr.on(`data`,e=>process.stderr.write(e)),a.once(`error`,i),a.once(`close`,(n,a)=>{if(n===0){r();return}i(new t(`npm ${e[0]} failed${a?` with signal ${a}`:` with exit code ${n}`}.`,c.GENERAL))})})}async function cr(e){let n=In(e);await or(n);let r=N(n,`.lock`);for(let e=0;e<2;e++)try{let e=await Ue(r,`wx`,384);return await e.writeFile(`${process.pid} ${Date.now()}\n`),await e.close(),async()=>{try{await M(r)}catch{}}}catch(e){if(e.code!==`EEXIST`)throw e;try{let e=await Ye(r);if(Date.now()-e.mtimeMs>6e5){await M(r);continue}}catch{continue}throw new t(`Another Command Pack install, link, or remove operation is already running.`,c.GENERAL,`Wait for it to finish and try again.`)}throw new t(`Could not acquire the Command Pack operation lock.`,c.GENERAL)}async function lr(e,t){let n=await cr(e);try{return await t()}finally{await n()}}function ur(e,n,r){let i=e.trim(),a=/^(@[^/\s]+\/[^@/\s]+)(?:@([a-zA-Z0-9][a-zA-Z0-9._-]*))?$/.exec(i);if(!a)throw new t(`Unsupported Command Pack package spec: "${e}".`,c.USAGE,`Use an allowlisted scoped package name with an optional version or tag.`);let o=a[1];if(!r.supported[o])throw new t(`Command Pack "${o}" is not allowlisted for ${n.binName}.`,c.USAGE,ir(n,r));return{name:o,requested:i}}async function dr(e,t,n,r){let i=r.supported[e],a=await Hn(t);return{pjson:a,commands:await Zn(e,a,i,n,t)}}function fr(e,t){return t.startsWith(`file:`)?t:`${e}@${t}`}async function pr(e,t,n){if(t){await sr([`install`,fr(e,t),`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],n);return}await sr([`uninstall`,e,`--ignore-scripts`,`--no-fund`,`--no-audit`],n)}async function mr(e,n,r){let{name:i,requested:a}=ur(e,n,r);return lr(n,async()=>{let e=In(n),o=(await Bn(n)).dependencies?.[i];try{await sr([`install`,a,`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],e);let o=await dr(i,Rn(n,i),n,r);if(!o.pjson.version)throw new t(`Command Pack "${i}" has no package version.`,c.USAGE);return{name:i,version:o.pjson.version,commands:Object.keys(o.commands).sort()}}catch(t){try{await pr(i,o,e)}catch{}throw t}})}async function hr(e,n,r){let i=et(e);if(!Re(N(i,`package.json`)))throw new t(`Command Pack path does not exist: ${i}`,c.USAGE);let a=(await Hn(i)).name;if(!a||!r.supported[a])throw new t(`Local package "${a??`(unnamed)`}" is not an allowlisted Command Pack for ${n.binName}.`,c.USAGE,ir(n,r));let o=await dr(a,i,n,r);return lr(n,async()=>{await sr([`install`,`file:${i}`,`--save-exact`,`--ignore-scripts`,`--no-fund`,`--no-audit`],In(n));let e=await dr(a,Rn(n,a),n,r);return{name:a,version:e.pjson.version??o.pjson.version,commands:Object.keys(e.commands).sort()}})}async function gr(e,n,r){if(!r.supported[e])throw new t(`Command Pack "${e}" is not allowlisted for ${n.binName}.`,c.USAGE,ir(n,r));if(!(e in((await Bn(n)).dependencies??{})))throw new t(`Command Pack "${e}" is not installed.`,c.USAGE);await lr(n,()=>sr([`uninstall`,e,`--ignore-scripts`,`--no-fund`,`--no-audit`],In(n)))}async function _r(e,t){return(await $n({},e,t)).reports}function vr(e,t){return{install:n=>mr(n,e,t),link:n=>hr(n,e,t),list:()=>_r(e,t),remove:n=>gr(n,e,t)}}function yr(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function br(e){for(let t=0;t<e.length;t++){let n=e[t];if(n===`--config`)return{config:e[t+1]};if(n?.startsWith(`--config=`))return{config:n.slice(9)}}return{}}function xr(e){try{_n()}catch(t){B(t,e)}process.on(`SIGINT`,()=>{process.stderr.write(`
48
48
  Interrupted. Exiting.
49
- `),O(500).finally(()=>process.exit(130))}),process.stdout.on(`error`,e=>{if(e.code===`EPIPE`)process.exit(0);else throw e})}function Sr(e,t){let{binName:n,version:a,npmPackage:o,clientName:c}=t,f={binName:n,version:a,npmPackage:o,clientName:c},m=t.commandPacks??{supported:{}},h=vr(f,m),g;xr(n);let _=un([fn,mn,pn,dn,hn]);function v(){return g||=$n(e,f,m),g}async function x(e){let t=Rt(b(br(e)).file.language??s);return{registry:new Pt((await v()).commands,n,t),localize:e=>t.localize(e)}}function S(e,n,i){if(e.printHelp(n,process.stderr),n.length>0)return;let a=!1;try{let e=T(b(yt(i,{...l,...u,...r,...d})));a=!!(e.apiKey||e.console)}catch{}a?t.quickStartTasks?.length&&e.printQuickStart(t.quickStartTasks):e.printWelcome()}async function C(e,t,r){let o=Ft(t,e);switch(o.kind){case`version`:process.stdout.write(`${n} ${a}\n`);return;case`help`:S(e,o.path,t);return;case`usageError`:z(o.error,n);return;case`run`:try{let e=w(o.command),t=Ot(o.command),n=yt(o.rest,{...l,...e,...t,...o.command.flags}),a=yr(n,[...Object.keys(l),...Object.keys(e)]),s=yr(n,Object.keys(o.command.flags??{})),c=await o.command.validate?.(s);if(c)throw new p(c);let u=b(a),d=y(u),m={identity:f,path:o.path,command:o.command,flags:s,confirmed:n.yes===!0,localize:r,settings:d,sources:u,configStore:ce(u.configName),authStore:se(u),commandPacks:h,client:new i({identity:f,settings:d,...ve(u)})};await _(m),await O(1e3)}catch(t){if(t instanceof p&&o.rest.length===0){e.printHelp(o.path,process.stderr);return}await O(1e3),z(t,n)}return}}return{run(e=process.argv.slice(2)){return Promise.resolve().then(()=>x(e)).then(({registry:t,localize:n})=>C(t,e,n)).catch(e=>O(1e3).finally(()=>z(e,n)))}}}const Cr=`2.0.0`;function wr(e,t){process.stdout.write(ne(e,t)+`
49
+ `),k(500).finally(()=>process.exit(130))}),process.stdout.on(`error`,e=>{if(e.code===`EPIPE`)process.exit(0);else throw e})}function Sr(e,t){let{binName:n,version:a,npmPackage:o,clientName:c}=t,f={binName:n,version:a,npmPackage:o,clientName:c},m=t.commandPacks??{supported:{}},h=vr(f,m),g;xr(n);let _=ln([dn,pn,fn,un,mn]);function v(){return g||=$n(e,f,m),g}async function x(e){let t=Lt(b(br(e)).file.language??s);return{registry:new Nt((await v()).commands,n,t),localize:e=>t.localize(e)}}function S(e,n,i){if(e.printHelp(n,process.stderr),n.length>0)return;let a=!1;try{let e=T(b(vt(i,{...l,...u,...r,...d})));a=!!(e.apiKey||e.console)}catch{}a?t.quickStartTasks?.length&&e.printQuickStart(t.quickStartTasks):e.printWelcome()}async function C(e,t,r){let o=Pt(t,e);switch(o.kind){case`version`:process.stdout.write(`${n} ${a}\n`);return;case`help`:S(e,o.path,t);return;case`usageError`:B(o.error,n);return;case`run`:try{let e=w(o.command),t=Dt(o.command),n=vt(o.rest,{...l,...e,...t,...o.command.flags}),a=yr(n,[...Object.keys(l),...Object.keys(e)]),s=yr(n,Object.keys(o.command.flags??{})),c=await o.command.validate?.(s);if(c)throw new p(c);let u=b(a),d=y(u),m={identity:f,path:o.path,command:o.command,flags:s,confirmed:n.yes===!0,localize:r,settings:d,sources:u,configStore:se(u.configName),authStore:oe(u),commandPacks:h,client:new i({identity:f,settings:d,..._e(u)})};await _(m),await k(1e3)}catch(t){if(t instanceof p&&o.rest.length===0){e.printHelp(o.path,process.stderr);return}await k(1e3),B(t,n)}return}}return{run(e=process.argv.slice(2)){return Promise.resolve().then(()=>x(e)).then(({registry:t,localize:n})=>C(t,e,n)).catch(e=>k(1e3).finally(()=>B(e,n)))}}}const Cr=`2.1.0`;function wr(e,t){process.stdout.write(te(e,t)+`
50
50
  `)}function Tr(e){process.stdout.write(e+`
51
- `)}function Er(e,t){e&&!t&&process.stderr.write(`request_id: ${e}\n`)}function Dr(e,t,{gap:n=2}={}){let r=e.map((e,n)=>{let r=e.length;for(let e of t){let t=e[n]??``;t.length>r&&(r=t.length)}return r}),i=` `.repeat(n),a=e=>e.map((e,t)=>(e??``).padEnd(r[t])).join(i),o=[];o.push(a(e));for(let e of t)o.push(a(e));return o}function Or(e){return e>=11904&&e<=40959||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=195103}function B(e){let t=0;for(let n of e){let e=n.codePointAt(0)??0;t+=Or(e)?2:1}return t}function kr(e,t){let n=t-B(e);return n>0?e+` `.repeat(n):e}const Ar=` │ `,jr=[0,150,160],Mr=[176,205,250],Nr=[160,160,170];function Pr(e){if(`NO_COLOR`in process.env)return 0;let t=process.env.FORCE_COLOR;if(t!=null){if(t===`0`||t===`false`)return 0;if(t===`3`||t===`truecolor`)return 3;if(t===`2`)return 2;if(t===`1`||t===`true`||t===``)return 1}if(!xt(e))return 0;let n=process.env.COLORTERM;if(n===`truecolor`||n===`24bit`)return 3;let r=process.env.TERM??``;return r===`dumb`?1:/-256(color)?$/i.test(r)?2:1}function Fr(e,t,n){return e===t&&t===n?e<8?16:e>248?231:232+Math.round((e-8)/247*24):16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)}function Ir(e,t,n,r){let i=Math.max(e,t,n)>127,a=i?128:64;return(r===48?i?100:40:i?90:30)+(e>=a|(t>=a?2:0)|(n>=a?4:0))}function Lr(e,t,n,r,i=38){return e>=3?`${i};2;${t};${n};${r}`:e===2?`${i};5;${Fr(t,n,r)}`:String(Ir(t,n,r,i))}function Rr(e,[t,n,r],i){return e<=0?i:`\x1b[${Lr(e,t,n,r)}m${i}\x1b[0m`}function zr(e,t,n){return t<=0?e:`\x1b[1;${Lr(t,255,255,255,38)};${Lr(t,n[0],n[1],n[2],48)}m${e}\x1b[0m`}function Br(e,t){let n=t-B(e);return n>0?` `.repeat(n)+e:e}function Vr(e,t,n=20,r=process.stdout){return Hr(e,t,n,Pr(r))}function Hr(e,t,n,r){let i=e==null?0:Math.max(0,Math.min(100,e)),a=e!=null,o=a?Math.round(i/100*n):0,s=``,c=``;for(let e=0;e<n;e++)a&&e<o?(s+=`█`,c+=Rr(r,jr,`█`)):(s+=` `,c+=` `);let l=a?Mr:Nr;return s+=` ${t}`,c+=` ${Rr(r,l,t)}`,{plain:s,colored:c}}function Ur(e){let t=Pr(e.out??process.stdout),n=e.align??[],r=e.barColumns??[],i=e.headers.length,a={};for(let n of r){let r=n.width??20,i=[];for(let a=0;a<e.rows.length;a++){let e=n.percents[a]??null,o=n.labels?.[a]??(e==null?`-`:`${Number.isInteger(e)?e:e.toFixed(1)}%`);i.push(Hr(e,o,r,t))}a[n.index]=i}let o=(t,n)=>a[n]?a[n][t].plain:e.rows[t][n]??``,s=e.headers.map((t,n)=>{let r=B(t);for(let t=0;t<e.rows.length;t++){let e=B(o(t,n));e>r&&(r=e)}return r}),c=[],l=e.headers.map((e,t)=>n[t]===`right`?Br(e,s[t]):kr(e,s[t])).join(Ar),u=Math.max(B(l),...e.rows.map((e,t)=>B(Array.from({length:i},(e,n)=>o(t,n)).join(Ar))));c.push(zr(` ${kr(l,u)} `,t,jr));let d=` ${Rr(t,jr,`│`)} `;for(let t=0;t<e.rows.length;t++){let r=[];for(let o=0;o<i;o++){let i=s[o];if(a[o]){let e=a[o][t],n=i-B(e.plain);r.push(n>0?e.colored+` `.repeat(n):e.colored);continue}let c=e.rows[t][o]??``,l=e.cellColor?.(t,o,c),u=n[o]===`right`?Br(c,i):kr(c,i);l?r.push(n[o]===`right`?u.slice(0,u.length-c.length)+l:l+u.slice(c.length)):r.push(u)}let o=` `;for(let e=0;e<i;e++)o+=r[e],e<i-1&&(o+=d);c.push(o)}return c}const Wr=[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`];function Gr(e){let t=process.stderr.isTTY,n=0,r=null,i=e;return{start(){t&&(r=setInterval(()=>{process.stderr.write(`\r${Wr[n%Wr.length]} ${i}`),n++},80))},update(e){i=e},stop(e){r&&=(clearInterval(r),null),t&&(process.stderr.write(`\r\x1B[K`),e&&process.stderr.write(`${e}\n`))}}}function Kr(e,t=``){let n=process.stderr.isTTY;return{update(r){if(!n)return;let i=Math.min(1,r/e),a=Math.round(30*i),o=30-a,s=`█`.repeat(a)+`░`.repeat(o),c=`${Math.round(i*100)}%`;process.stderr.write(`\r${t} ${s} ${c}`)},finish(){n&&process.stderr.write(`
52
- `)}}}async function qr(e,n,r){let i=Date.now()+r.timeoutSec*1e3,a=Gr(`Polling...`);n.quiet||a.start();try{for(;Date.now()<i;){let i=await e.requestJson({path:r.url});if(r.getStatus&&!n.quiet&&a.update(`Status: ${r.getStatus(i)}`),r.isComplete(i))return a.stop(`Done.`),i;if(r.isFailed(i)){a.stop(`Failed.`),n.verbose&&process.stderr.write(`[verbose] Task response: ${JSON.stringify(i,null,2)}\n`);let e=r.getErrorMessage?.(i);throw new t(e?`Task failed: ${e}`:`Task failed.`,c.GENERAL,e?void 0:`Use --verbose to see full API response details.`)}await new Promise(e=>setTimeout(e,r.intervalSec*1e3))}}finally{a.stop()}throw new t(`Polling timed out.`,c.TIMEOUT,`Try increasing --timeout or check task status manually.`)}async function Jr(e,n,r){let i=await fetch(e);if(!i.ok)throw new t(`Download failed: HTTP ${i.status}`,c.GENERAL);let a=Number(i.headers.get(`content-length`)||0),o=i.body?.getReader();if(!o)throw new t(`No response body`,c.GENERAL);Ne(Ae(n),{recursive:!0});let s=Me(n),l=a>0&&!r?.quiet?Kr(a,`Downloading`):null,u=0,d=!1;try{let e=new Promise((e,t)=>{s.on(`error`,t)});for(;;){let{done:t,value:n}=await Promise.race([o.read(),e]);if(t)break;s.write(n)||await new Promise(e=>s.once(`drain`,()=>e())),u+=n.byteLength,l?.update(u)}d=!0}finally{if(o.releaseLock(),l?.finish(),await new Promise((e,t)=>{s.on(`finish`,e),s.on(`error`,t),s.end()}),!d)try{Fe(n)}catch{}}return{size:u}}function Yr(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:e<1073741824?`${(e/1048576).toFixed(1)} MB`:`${(e/1073741824).toFixed(1)} GB`}function Xr(e){return Math.max(1,e.concurrent??1)}async function Zr(e,t,n,r=`requests`){if(e<=1)return[await n(0)];t.quiet||process.stderr.write(`[Concurrent: ${e} ${r}]\n`);let i=Array.from({length:e},(e,t)=>n(t));return Promise.all(i)}async function Qr(e,t,n){return Promise.all(e.map(({url:e,destPath:r})=>t(e,r,n).then(()=>r)))}const $r={"qwen-image-2.0":{"16:9":`2688*1536`,"9:16":`1536*2688`,"1:1":`2048*2048`,"4:3":`2368*1728`,"3:4":`1728*2368`},"qwen-image-fixed":{"16:9":`1664*928`,"4:3":`1472*1104`,"1:1":`1328*1328`,"3:4":`1104*1472`,"9:16":`928*1664`},wan27:{"16:9":`2688*1536`,"9:16":`1536*2688`,"1:1":`2048*2048`,"4:3":`2368*1728`,"3:4":`1728*2368`},"z-image":{"1:1":`1024*1024`,"16:9":`1280*720`,"9:16":`720*1280`,"4:3":`1152*864`,"3:4":`864*1152`,"3:2":`1248*832`,"2:3":`832*1248`},wan26:{"1:1":`1280*1280`,"16:9":`1696*960`,"9:16":`960*1696`,"4:3":`1472*1104`,"3:4":`1104*1472`},"wan-legacy":{"1:1":`1024*1024`,"16:9":`1280*720`,"9:16":`720*1280`,"3:4":`768*1152`,"4:3":`1152*768`},"wanx-v1":{"1:1":`1024*1024`,"9:16":`720*1280`,"3:4":`768*1152`,"16:9":`1280*720`},"wan25-i2i":{"1:1":`1280*1280`,"16:9":`1280*720`,"9:16":`720*1280`,"4:3":`1152*864`,"3:4":`864*1152`}};function ei(e,t){if(e)return $r[typeof t==`boolean`?t?`qwen-image-2.0`:`qwen-image-fixed`:t][e]??e}var ti=/* @__PURE__ */ pt({ensureBinaryPathEntries:()=>vi,ensureWindowsBinJunction:()=>bi,fetchBinaryChannelManifest:()=>ai,fetchBinaryChannelVersion:()=>ii,getBinaryBinRoot:()=>ni,getBinaryCurrentPath:()=>ri,getBinaryShareRoot:()=>V,getBinaryVersionsDir:()=>H,isValidUpdateTargetVersion:()=>ci,normalizeBinaryVersion:()=>oi,performBinaryUpdate:()=>Si,pruneBinaryVersions:()=>xi,readCurrentVersionDir:()=>hi,resolveBinaryDownloadSpec:()=>ui,switchCurrentToVersion:()=>_i});function V(){return process.env.BAILIAN_SHARE_DIR?process.env.BAILIAN_SHARE_DIR:process.platform===`win32`?M(process.env.LOCALAPPDATA||M(at(),`AppData`,`Local`),`bailian-cli`):M(at(),`.local`,`share`,`bailian-cli`)}function ni(){return process.env.BAILIAN_BIN_DIR?process.env.BAILIAN_BIN_DIR:process.platform===`win32`?M(V(),`bin`):M(at(),`.local`,`bin`)}function H(){return M(V(),`versions`)}function ri(){return M(V(),`current`)}async function ii(e=`latest`,t=5e3){try{let n=await fetch(x(e),{signal:AbortSignal.timeout(t)});return n.ok?(await n.json()).version??null:null}catch{return null}}async function ai(e=`latest`,t=8e3){try{let n=await fetch(x(e),{signal:AbortSignal.timeout(t)});return n.ok?await n.json():null}catch{return null}}function oi(e){let t=e.trim();return/^v\d/i.test(t)?t.slice(1):t}const si=/^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function ci(e){let t=e.trim();return t?si.test(t):!1}async function li(e,t,n=8e3){try{let r=await fetch(ue(e,`SHA256SUMS`),{signal:AbortSignal.timeout(n)});if(!r.ok)return;let i=await r.text();for(let e of i.split(`
53
- `)){let n=e.trim().match(/^([a-fA-F0-9]{64})\s+(\S+)$/);if(n?.[2]===t)return n[1].toLowerCase()}}catch{}}async function ui(e){let t=oi(e),{os:n,arch:r,fileSuffix:i}=ee(),a=i===`.exe`,o=m(t,n,r,a),s=h(t,n,r,a),c=ue(t,o),l=await li(t,o);if(!l){let e=await ai(`latest`);e?.version===t&&(l=e.assets?.[`${n}-${r}`]?.sha256)}return{zipName:o,innerName:s,url:c,expectedSha:l}}async function di(e,t){let n=await fetch(e,{signal:AbortSignal.timeout(12e4)});if(!n.ok||!n.body)throw Error(`Download failed (${n.status}): ${e}`);let r=await n.arrayBuffer(),i=Buffer.from(r);return await k(Qe(t),{recursive:!0}),await Ze(t,i),i}function fi(e){return ot(`sha256`).update(e).digest(`hex`)}function pi(){return process.platform===`win32`?`bl.exe`:`bl`}function mi(){return process.platform===`win32`?`bailian.exe`:`bailian`}async function hi(){let e=ri();try{let t=await qe(e);return t.startsWith(`/`)||/^[A-Za-z]:[\\/]/.test(t)?t:M(Qe(e),t)}catch{return null}}function gi(e){let t=H(),n=e.replaceAll(`\\`,`/`),r=t.replaceAll(`\\`,`/`).replace(/\/$/,``);if(!n.startsWith(`${r}/`)&&n!==r){let t=e.replaceAll(`\\`,`/`).split(`/`).pop();return t&&t!==`versions`?t:null}return n.slice(r.length+1).split(`/`)[0]??null}async function _i(e){let t=M(H(),e),n=ri();await k(V(),{recursive:!0});try{await j(n)}catch{try{await A(n,{recursive:!0,force:!0})}catch{}}let{symlink:r}=await import(`node:fs/promises`);return process.platform===`win32`?await r(t,n,`junction`):await r(t,n),t}async function vi(e){let t=M(H(),e),n=pi(),r=M(ri(),n),i=ni();if(process.platform===`win32`){await bi(i);let e=M(t,n),r=M(t,mi());try{await Ue(r)}catch{try{let{link:t}=await import(`node:fs/promises`);await t(e,r)}catch{await He(e,r)}}return}await k(i,{recursive:!0});let{symlink:a}=await import(`node:fs/promises`);for(let e of[`bl`,`bailian`]){let t=M(i,e);try{await j(t)}catch{}await a(r,t)}}function yi(e){return e&&typeof e==`object`&&`code`in e?String(e.code??``):``}async function bi(e){let t=ri(),{symlink:n,rename:r}=await import(`node:fs/promises`),i=null;try{let n=await Ue(e);if(n.isSymbolicLink()){let n=await qe(e);if((n.startsWith(`/`)||/^[A-Za-z]:[\\/]/.test(n)?n:M(Qe(e),n)).replaceAll(`\\`,`/`).toLowerCase()===t.replaceAll(`\\`,`/`).toLowerCase())return;await j(e)}else if(n.isDirectory()){i=`${e}.migrating.${process.pid}`;try{await r(e,i)}catch(t){try{await A(e,{recursive:!0,force:!0}),i=null}catch(n){let r=yi(t)||yi(n)||`EACCES`;throw Error(`Failed to migrate ${e} to a junction pointing at current (${r}). Close other bl sessions and re-run update, or re-run the install script once.`,{cause:n})}}}else await j(e).catch(()=>A(e,{recursive:!0,force:!0}))}catch(t){let n=yi(t);if(n&&n!==`ENOENT`)throw t instanceof Error&&t.message.includes(`Failed to migrate`)?t:Error(`Failed to migrate ${e} to a junction pointing at current (${n}). Close other bl sessions and re-run update, or re-run the install script once.`,{cause:t})}await k(Qe(e),{recursive:!0}),await n(t,e,`junction`),i&&await A(i,{recursive:!0,force:!0}).catch(()=>{})}async function xi(e){let t=H(),n=new Set(e.filter(Boolean)),r=await hi(),i=r?gi(r):null;i&&n.add(i);let a;try{a=await Ke(t)}catch{return}for(let e of a){if(e.startsWith(`.`)){await A(M(t,e),{recursive:!0,force:!0}).catch(()=>{});continue}n.has(e)||await A(M(t,e),{recursive:!0,force:!0}).catch(()=>{})}}async function Si(t){let n=oi(t),{zipName:r,innerName:i,url:a,expectedSha:o}=await ui(n),s=V(),c=H();await k(M(s,`.tmp`),{recursive:!0}),await k(c,{recursive:!0});let l=await hi(),u=l?gi(l):null,d=M(s,`.tmp`,r),f=fi(await di(a,d));if(o&&o!==f)throw await j(d).catch(()=>{}),Error(`Checksum mismatch for ${r}`);let p=M(c,`.staging.${n}.${process.pid}`);await A(p,{recursive:!0,force:!0}).catch(()=>{}),await k(p,{recursive:!0});let m=pi(),h=M(p,m),g=M(s,`.tmp`,`${m}.${process.pid}`);if(await D(d,g,i),await j(d).catch(()=>{}),await Ye(g,h),process.platform!==`win32`)await Ve(h,493);else{let e=M(p,mi());try{let{link:t}=await import(`node:fs/promises`);await t(h,e)}catch{await He(h,e)}}let _=M(c,n);await A(_,{recursive:!0,force:!0}).catch(()=>{}),await Ye(p,_),await _i(n),await vi(n);let v=[n];return u&&u!==n&&v.push(u),await xi(v),Oe(`binary`,{clientName:e}),await k(re(),{recursive:!0}),n}const Ci={"en-US":`Enable watermark (true/false). Omit flag to use the Profile setting or CLI default (true).`,"zh-CN":`是否启用水印(true/false)。不传时使用 Profile 配置或 CLI 默认值 true。`},wi={"en-US":`Enable prompt extend (true/false). Omit flag to use CLI default (true).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时使用 CLI 默认值 true。`},Ti={"en-US":`Enable prompt extend (true/false). Omit flag: true for qwen-image sync; parameter omitted on async models (API default).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时:qwen-image 同步调用默认为 true;异步模型不传该参数(使用 API 默认值)。`},Ei={"en-US":`Enable prompt extend (true/false). Omit flag to omit the parameter (DashScope default).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时省略该参数(使用 DashScope 默认值)。`};var U=class extends Error{code;step;details;constructor(e,t,n){super(t),this.name=`PipelineError`,this.code=e,this.step=n?.step,this.details=n?.details}toJSON(){return{code:this.code,message:this.message,...this.step?{step:this.step}:{},...this.details?{details:this.details}:{}}}};function Di(e,t){return e instanceof U?e:new U(`step_execution_error`,e instanceof Error?e.message:String(e),{step:t})}var Oi=class{handlers=/* @__PURE__ */ new Map;outputSchemas=/* @__PURE__ */ new Map;registerStep(e,t,n){this.handlers.set(e,t),n&&this.outputSchemas.set(e,n)}executeStep(e,t,n){let r=this.handlers.get(e);if(!r)throw new U(`unknown_step`,`Unknown step type: ${e}`,{details:{available:this.listSteps()}});return r(t,n)}hasStep(e){return this.handlers.has(e)}listSteps(){return Array.from(this.handlers.keys()).sort()}getOutputSchema(e){return this.outputSchemas.get(e)}};const ki=new Oi;function Ai(){return ki}function ji(e,t,n,r){let i,a;n instanceof Oi?(i=n,a=r):(i=ki,a=n??r),i.registerStep(e,t,a)}const Mi=/* @__PURE__ */ new Set([`image/generate`,`image/edit`,`video/generate`]);function Ni(e,t,n){return!Mi.has(e)||t.watermark!==void 0?t:{...t,watermark:n.watermark}}function Pi(){let e=b({}),t={...y(e),output:`json`,outputExplicit:!0,quiet:!0},n={binName:`bl`,version:`0.0.0-dev`,npmPackage:`bailian-cli`,clientName:`bailian-cli`},r;try{r=de(e)}catch{}return{client:new i({identity:n,settings:t,baseUrl:_e(e),apiCred:r}),settings:t}}const Fi=[`download`,`out-dir`,`output`];function Ii(e){return e.startsWith(`./`)||e.startsWith(`../`)}function Li(e,t){let n={},r=[];for(let[i,a]of Object.entries(e))typeof a==`string`&&Ii(a)?(n[i]=tt(t,a),r.push(i)):n[i]=a;return{input:n,resolvedKeys:r}}async function Ri(e,t,n){let r=[];for(let i of t){let t=e[i];typeof t==`string`&&(await Be(t).then(()=>!0,()=>!1)||r.push(`Step "${n}" input "${i}" references file that does not exist: ${t}`))}return r}function zi(e){if(e===void 0)return;if(typeof e==`number`)return Number.isFinite(e)&&e>0?e:void 0;let t=e.match(/^(\d+(?:\.\d+)?)(ms|s|m)?$/);if(!t)return;let n=Number(t[1]);if(!Number.isFinite(n)||n<=0)return;let r=t[2]??`s`;return r===`ms`?n/1e3:r===`m`?n*60:n}function W(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function Bi(e,t){if(Array.isArray(e)){e.forEach(e=>Bi(e,t));return}if(W(e)){`$from`in e&&typeof e.$from==`string`&&t.add(e.$from);for(let n of Object.values(e))Bi(n,t)}}async function Vi(e,t){let n=[];for(let r of e)for(let[e,i]of Object.entries(r.input)){if(Fi.includes(e)||typeof i!=`string`||!Ii(i))continue;let a=tt(t,i);await Be(a).then(()=>!0,()=>!1)||n.push(`Step "${r.id}" input "${e}" references file that does not exist: ${a}`)}return n}async function Hi(e,t,n){if(!t.message)throw new U(`missing_input`,`text/chat requires 'message' input`,{step:`text/chat`});let r=t.model||`qwen3.8-max`,i=[];t.system&&i.push({role:`system`,content:t.system}),i.push({role:`user`,content:t.message});let a={model:r,messages:i,max_tokens:t[`max-tokens`]??4096,stream:!1};t.temperature!==void 0&&(a.temperature=t.temperature),t[`top-p`]!==void 0&&(a.top_p=t[`top-p`]),t[`enable-thinking`]&&(a.enable_thinking=!0,t[`thinking-budget`]!==void 0&&(a.thinking_budget=t[`thinking-budget`]));let o=S();return await e.client.requestJson({path:o,method:`POST`,body:a,timeout:n.blRequestTimeoutSeconds,signal:n.signal})}async function Ui(e,t,n){let r=t.model||`qwen3-vl-plus`,i=Array.isArray(t.image)?t.image:t.image?[t.image]:[],a=t.video?`Describe the video.`:`Describe the image.`,o=t.prompt||a,s=[];if(t.video){let i=t.video;oe(i)&&(i=await e.client.uploadFile(i,r,{signal:n.signal})),s.push({type:`video_url`,video_url:{url:i}})}for(let t of i){let i=t;oe(t)&&(i=await e.client.uploadFile(t,r,{signal:n.signal})),s.push({type:`image_url`,image_url:{url:i}})}s.push({type:`text`,text:o});let c={model:r,messages:[{role:`user`,content:s}]},l=S();return await e.client.requestJson({path:l,method:`POST`,body:c,signal:n.signal})}async function Wi(e,t,n){if(!t.prompt)throw new U(`missing_input`,`image/generate requires 'prompt' input`,{step:`image/generate`});let r=t.model||`qwen-image-3.0`,i=ge(r),a=t.n??1,o=pe(t[`prompt-extend`],i.promptExtendDefault,`prompt-extend`),s={size:ei(t.size,i.sizeProfile),n:a,seed:t.seed,prompt_extend:o,watermark:be(t.watermark,e.settings.watermark)},c=i.inputStyle===`prompt`?{model:r,input:{prompt:t.prompt,negative_prompt:t[`negative-prompt`]||void 0},parameters:s}:{model:r,input:{messages:[{role:`user`,content:[{text:t.prompt}]}]},parameters:{...s,negative_prompt:t[`negative-prompt`]||void 0}};if(i.useSync){let r=await e.client.requestJson({path:i.path,method:`POST`,body:c,signal:n.signal}),a=r.output.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean),o=await Ki(a,t[`out-dir`],t[`out-prefix`]);return{urls:a,request_id:r.request_id,...o?{saved:o}:{}}}let l=(await e.client.requestJson({path:i.path,method:`POST`,body:c,async:!0,signal:n.signal})).output.task_id,u=await Zi(e,l,n),d=await Ki(Array.isArray(u.urls)?u.urls:[],t[`out-dir`],t[`out-prefix`]);return d&&(u.saved=d),u}async function Gi(e,t,n){if(!t.prompt)throw new U(`missing_input`,`image/edit requires 'prompt' input`,{step:`image/edit`});let r=Array.isArray(t.image)?t.image:t.image?[t.image]:[],i=t.model||`qwen-image-3.0`,a=he(i),o=t.n??1,s=pe(t[`prompt-extend`],a.promptExtendDefault,`prompt-extend`),c=[];for(let t of r){let r=t;oe(t)&&(r=await e.client.uploadFile(t,i,{signal:n.signal})),c.push(r)}let l={size:ei(t.size,a.sizeProfile),n:o,seed:t.seed,prompt_extend:s,watermark:be(t.watermark,e.settings.watermark)},u;if(a.inputStyle===`function-base-image`){let e=c[0];if(!e)throw new U(`missing_input`,`image/edit with wanx*-imageedit requires at least one image`,{step:`image/edit`});u={model:i,input:{function:t.function||`description_edit`,prompt:t.prompt,base_image_url:e},parameters:l}}else if(a.inputStyle===`prompt-images`)u={model:i,input:{prompt:t.prompt,images:c,negative_prompt:t[`negative-prompt`]||void 0},parameters:l};else{let e=c.map(e=>({image:e}));e.push({text:t.prompt}),u={model:i,input:{messages:[{role:`user`,content:e}]},parameters:{...l,negative_prompt:t[`negative-prompt`]||void 0}}}if(a.useSync){let r=await e.client.requestJson({path:a.path,method:`POST`,body:u,signal:n.signal}),i=r.output.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean),o=await Ki(i,t[`out-dir`],t[`out-prefix`]);return{urls:i,request_id:r.request_id,...o?{saved:o}:{}}}let d=(await e.client.requestJson({path:a.path,method:`POST`,body:u,async:!0,signal:n.signal})).output.task_id,f=await Zi(e,d,n),p=await Ki(Array.isArray(f.urls)?f.urls:[],t[`out-dir`],t[`out-prefix`]);return p&&(f.saved=p),f}async function Ki(e,t,n){if(!t||e.length===0)return;await k(t,{recursive:!0});let r=n&&n.length>0?n:`image`,i=e.length===1?[{url:e[0],destPath:M(t,`${r}.png`)}]:e.map((e,n)=>({url:e,destPath:M(t,`${r}_${String(n+1).padStart(3,`0`)}.png`)})),a=[];for(let{url:e,destPath:t}of i)await Jr(e,t,{quiet:!0}),a.push(t);return a}async function qi(e,t,n){if(!t.prompt)throw new U(`missing_input`,`video/generate requires 'prompt' input`,{step:`video/generate`});let r=t.model||`wan3.0-video`,i;t.image&&(i=oe(t.image)?await e.client.uploadFile(t.image,r,{signal:n.signal}):t.image);let a={model:r,input:{prompt:t.prompt,negative_prompt:t[`negative-prompt`]||void 0,...i?{media:[{type:`first_frame`,url:i}]}:{}},parameters:{resolution:t.resolution||void 0,ratio:t.ratio||void 0,duration:t.duration,prompt_extend:pe(t[`prompt-extend`],void 0,`prompt-extend`),watermark:be(t.watermark,e.settings.watermark),seed:t.seed}};we(a.parameters);let o=De(),s=(await e.client.requestJson({path:o,method:`POST`,body:a,async:!0,signal:n.signal})).output.task_id;return await $i(e,s,(t[`poll-interval`]??10)*1e3,(n.timeoutSeconds??900)*1e3,n)}async function Ji(e,t,n){let r=t.text;if(!r&&t[`text-file`]){let{readFileSync:e}=await import(`node:fs`);r=e(t[`text-file`],`utf-8`).trim()}if(!r)throw new U(`missing_input`,`speech/synthesize requires 'text' input`,{step:`speech/synthesize`});let i=t.model||`cosyvoice-v3-flash`,a={model:i,input:{text:r,voice:t.voice,format:t.format,sample_rate:t[`sample-rate`],volume:t.volume,rate:t.rate,pitch:t.pitch,seed:t.seed,language_hints:t.language?[t.language]:void 0,instruction:t.instruction,enable_ssml:t[`enable-ssml`]}};we(a.input);let o=Ce(),s=await e.client.requestJson({path:o,method:`POST`,body:a,signal:n.signal});return{audio_url:s.output.audio.url,url_expires_at:s.output.audio.expires_at,model:i,voice:t.voice,request_id:s.request_id}}async function Yi(e,t,n){let r=Array.isArray(t.url)?t.url:t.url?[t.url]:[];if(r.length===0)throw new U(`missing_input`,`speech/recognize requires 'url' input`,{step:`speech/recognize`});let i=t.model||`fun-asr`,a=fe(i);if(a.kind===`unsupported`)throw new U(`invalid_input`,a.unsupportedReason??`Unsupported ASR model: ${i}`,{step:`speech/recognize`});if(a.kind===`sync-flash`){if(r.length!==1)throw new U(`invalid_input`,`Model "${i}" is a sync Flash ASR model and accepts exactly one url (got ${r.length})`,{step:`speech/recognize`});let e=[];if(t.diarization&&e.push(`diarization`),t[`speaker-count`]!==void 0&&e.push(`speaker-count`),a.flashFamily===`qwen3`&&(t[`vocabulary-id`]!==void 0&&e.push(`vocabulary-id`),t.vocabulary!==void 0&&e.push(`vocabulary`),t.context!==void 0&&e.push(`context`)),t[`channel-id`]!==void 0&&e.push(`channel-id`),e.length>0)throw new U(`invalid_input`,`Model "${i}" uses sync Flash ASR and does not support: ${e.join(`, `)}`,{step:`speech/recognize`})}if(a.kind===`async-filetrans`&&a.asyncInputStyle===`file_url`&&r.length!==1)throw new U(`invalid_input`,`Model "${i}" accepts exactly one url (got ${r.length})`,{step:`speech/recognize`});let o=[];for(let t of r)oe(t)?o.push(await e.client.uploadFile(t,i,{signal:n.signal})):o.push(t);if(a.kind===`sync-flash`){let r=a.flashFamily,s=_({model:i,audioUrl:o[0],language:t.language,vocabularyId:t[`vocabulary-id`],vocabulary:t.vocabulary,context:t.context,flashFamily:r}),c=await e.client.requestJson({path:a.path,method:`POST`,headers:{"X-DashScope-SSE":`disable`},body:s,signal:n.signal});return{text:te(c,r),model:i,mode:`sync`,raw:c}}let s=v(a.asyncLanguageStyle??`language_hints`,t.language),c={model:i,input:{...a.asyncInputStyle===`file_url`?{file_url:o[0]}:{file_urls:o},...t.context?{context:g(t.context)}:{}},parameters:{channel_id:t[`channel-id`]===void 0?void 0:[t[`channel-id`]],...s,diarization_enabled:t.diarization,speaker_count:t[`speaker-count`],vocabulary_id:t[`vocabulary-id`],vocabulary:t.vocabulary}};we(c.parameters);let l=(await e.client.requestJson({path:Se(),method:`POST`,body:c,async:!0,signal:n.signal})).output.task_id,u=await ea(e,l,(t[`poll-interval`]??2)*1e3,(n.timeoutSeconds??300)*1e3,n),d=C(u.output),f={task_id:u.output.task_id,task_status:u.output.task_status,request_id:u.request_id,mode:`async`,model:i};if(u.output.results&&(f.results=u.output.results),u.output.result&&(f.result=u.output.result,typeof u.output.result.transcription_url==`string`&&(f.transcription_url=u.output.result.transcription_url)),u.output.task_metrics&&(f.task_metrics=u.output.task_metrics),u.usage&&(f.usage=u.usage),d.length===0)return f;let p=[],m=[];for(let e of d){if(!e.transcription_url)continue;let t=await fetch(e.transcription_url,{signal:n.signal});if(!t.ok)throw new U(`async_task_failed`,`Failed to download transcription: HTTP ${t.status}`,{step:`speech/recognize`,details:{taskId:l,url:e.transcription_url}});let r=await t.json();m.push(r);let i=r.transcripts;if(i?.length)for(let e of i)if(e.sentences?.length)for(let t of e.sentences)t.text&&p.push(t.text);else e.text&&p.push(e.text)}return{...f,text:p.join(`
54
- `),transcripts:m}}function Xi(e){let{output:t,request_id:n,usage:r}=e,i={task_id:t.task_id,task_status:t.task_status,request_id:n};if(t.video_url&&(i.video_url=t.video_url),t.choices){let e=t.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean);e.length>0&&(i.urls=e)}if(t.results){let e=t.results.map(e=>e.url).filter(Boolean);e.length>0&&!i.urls&&(i.urls=e)}return t.task_metrics&&(i.task_metrics=t.task_metrics),r&&(i.usage=r),i}async function Zi(e,t,n){return await $i(e,t,3e3,e.settings.timeout*1e3,n)}async function Qi(e,t,n,r,i){let a=Date.now(),o=0;for(;;){if(i?.signal?.aborted)throw new U(`aborted`,`Task polling was aborted`,{details:{taskId:t}});await ta(n,i?.signal),o++;let s=Te(t),c=await e.client.requestJson({path:s,method:`GET`,signal:i?.signal}),l=c.output.task_status;if(l===`SUCCEEDED`)return c;if(l===`FAILED`)throw new U(`async_task_failed`,c.output.message||c.output.code||`Task failed`,{details:{taskId:t,data:c}});let u=Date.now()-a;if(await i?.emitEvent?.({type:`step.polling`,timestamp:(/* @__PURE__ */ new Date()).toISOString(),status:`running`,taskId:t,taskStatus:l,elapsedMs:u,pollAttempt:o}),u>r)throw new U(`async_poll_timeout`,`Task ${t} timed out after ${Math.round(r/1e3)}s`,{details:{taskId:t,timeoutMs:r,pollAttempts:o}})}}async function $i(e,t,n,r,i){return Xi(await Qi(e,t,n,r,i))}async function ea(e,t,n,r,i){return await Qi(e,t,n,r,i)}function ta(e,t){return t?new Promise((n,r)=>{let i=setTimeout(()=>{o(),n()},e),a=()=>{o(),r(new U(`aborted`,`Poll delay was aborted`))},o=()=>{clearTimeout(i),t.removeEventListener(`abort`,a)};t.aborted?a():t.addEventListener(`abort`,a,{once:!0})}):new Promise(t=>setTimeout(t,e))}const na={"text/chat":(e,t,n)=>Hi(e,t,n),"vision/describe":(e,t,n)=>Ui(e,t,n),"image/generate":(e,t,n)=>Wi(e,t,n),"image/edit":(e,t,n)=>Gi(e,t,n),"video/generate":(e,t,n)=>qi(e,t,n),"speech/synthesize":(e,t,n)=>Ji(e,t,n),"speech/recognize":(e,t,n)=>Yi(e,t,n)},ra={"image/generate":e=>({data:e,artifacts:sa(e),warnings:[],metadata:{}}),"image/edit":e=>({data:e,artifacts:sa(e),warnings:[],metadata:{}}),"video/generate":e=>({data:e,artifacts:sa(e),warnings:[],metadata:{}}),"speech/synthesize":e=>({data:e,artifacts:ca(e,`audio`),warnings:[],metadata:{}}),"speech/recognize":e=>({data:e,artifacts:ca(e,`transcript`),warnings:[],metadata:{}})},ia={"text/chat":{description:`LLM text completion via chat API`,paths:[{path:`/data/choices/0/message/content`,description:`Generated text content`},{path:`/data/choices/0/message/role`,description:`Message role (assistant)`},{path:`/data/usage/total_tokens`,description:`Total token usage`}]},"vision/describe":{description:`Multimodal vision understanding (image/video to text)`,paths:[{path:`/data/choices/0/message/content`,description:`Generated description text`},{path:`/data/choices/0/message/role`,description:`Message role (assistant)`},{path:`/data/usage/total_tokens`,description:`Total token usage`}]},"image/generate":{description:`Text-to-image generation`,paths:[{path:`/data/urls`,description:`Array of generated image URLs`},{path:`/data/urls/0`,description:`First generated image URL`},{path:`/data/task_id`,description:`Async task ID (if applicable)`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"image/edit":{description:`Image editing with reference image(s)`,paths:[{path:`/data/urls`,description:`Array of generated image URLs`},{path:`/data/urls/0`,description:`First generated image URL`},{path:`/data/task_id`,description:`Async task ID (if applicable)`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"video/generate":{description:`Video generation (text-to-video or image-to-video)`,paths:[{path:`/data/video_url`,description:`Generated video URL`},{path:`/data/task_id`,description:`Async task ID`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"speech/synthesize":{description:`Text-to-speech synthesis`,paths:[{path:`/data/audio_url`,description:`Generated audio URL`},{path:`/data/url_expires_at`,description:`Audio URL expiration time`},{path:`/artifacts/0/url`,description:`First artifact URL`}]},"speech/recognize":{description:`Speech recognition (ASR)`,paths:[{path:`/data/text`,description:`Full transcribed text`},{path:`/data/task_id`,description:`Async task ID`},{path:`/artifacts/0/taskId`,description:`Task ID from artifact`}]}};function aa(e){for(let t of Object.keys(na))ji(t,async(e,n)=>await oa(t,e,n),e,ia[t])}async function oa(e,t,n){let r=n.blEnv??Pi();if(n.dryRun)return{metadata:{dryRun:!0,step:e,plannedInput:Ni(e,t,r.settings)},warnings:[{code:`dry_run_skipped`,message:`Step ${e} was not executed in dry-run mode`}]};let i=na[e];if(!i)throw Error(`No direct API handler registered for step: ${e}`);let a=await i(r,t,n),o=ra[e];return o?o(a):{data:a,warnings:[],metadata:{}}}function sa(e){if(!W(e))return;let t=[],n=G(e.task_id)??G(e.taskId);for(let r of da(e.urls))t.push({url:r,taskId:n,kind:fa(r)});for(let r of da(e.saved))t.push({path:r,taskId:n,kind:pa(r)});let r=G(e.video_url)??G(e.videoUrl);r&&t.push({url:r,taskId:n,kind:`video`});let i=G(e.saved);if(i&&t.push({path:i,taskId:n,kind:pa(i)}),Array.isArray(e.videos))for(let n of e.videos){if(!W(n))continue;let e=G(n.task_id)??G(n.taskId),r=G(n.video_url)??G(n.videoUrl),i=G(n.saved);r&&t.push({url:r,taskId:e,kind:`video`}),i&&t.push({path:i,taskId:e,kind:`video`})}let a=Array.isArray(e.task_ids)?e.task_ids.map(G).filter(ua):[];for(let e of a)t.push({taskId:e,kind:`task`});return t.length===0&&n&&t.push({taskId:n,kind:`task`}),t.length>0?t:void 0}function ca(e,t){if(!W(e))return;let n=[],r=G(e.task_id)??G(e.taskId),i=[G(e.url),G(e.audio_url),G(e.audioUrl),G(e.output_url),G(e.outputUrl)].filter(ua);for(let e of i)n.push({url:e,taskId:r,kind:t});let a=[G(e.saved),G(e.path),G(e.output_path),G(e.outputPath)].filter(ua);for(let e of a)n.push({path:e,taskId:r,kind:t});return n.length===0&&r&&n.push({taskId:r,kind:`task`}),n.length>0?la(n):void 0}function la(e){let t=/* @__PURE__ */ new Set,n=[];for(let r of e){let e=`${r.kind??``}:${r.taskId??``}:${r.url??``}:${r.path??``}`;t.has(e)||(t.add(e),n.push(r))}return n}function ua(e){return typeof e==`string`}function G(e){return typeof e==`string`&&e.length>0?e:void 0}function da(e){return Array.isArray(e)?e.map(G).filter(ua):[]}function fa(e){try{return pa(new URL(e).pathname)}catch{return`artifact`}}function pa(e){let t=e.toLowerCase();return t.endsWith(`.mp4`)||t.endsWith(`.mov`)||t.endsWith(`.webm`)?`video`:t.endsWith(`.png`)||t.endsWith(`.jpg`)||t.endsWith(`.jpeg`)||t.endsWith(`.webp`)?`image`:`artifact`}var ma=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var t=class{};e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var n=class extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=n;var r=class extends t{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=r,e.nil=new r(``);function i(e,...t){let n=[e[0]],i=0;for(;i<t.length;)s(n,t[i]),n.push(e[++i]);return new r(n)}e._=i;let a=new r(`+`);function o(e,...t){let n=[p(e[0])],i=0;for(;i<t.length;)n.push(a),s(n,t[i]),n.push(a,p(e[++i]));return c(n),new r(n)}e.str=o;function s(e,t){t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push(d(t))}e.addCodeArg=s;function c(e){let t=1;for(;t<e.length-1;){if(e[t]===a){let n=l(e[t-1],e[t+1]);if(n!==void 0){e.splice(t-1,3,n);continue}e[t++]=`+`}t++}}function l(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof n||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof n))return`"${e}${t.slice(1)}`}function u(e,t){return t.emptyStr()?e:e.emptyStr()?t:o`${e}${t}`}e.strConcat=u;function d(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:p(Array.isArray(e)?e.join(`,`):e)}function f(e){return new r(p(e))}e.stringify=f;function p(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=p;function m(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new r(`.${t}`):i`[${t}]`}e.getProperty=m;function h(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new r(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=h;function g(e){return new r(e.toString())}e.regexpCode=g})),ha=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;let t=ma();var n=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new t.Name(`const`),let:new t.Name(`let`),var:new t.Name(`var`)};var i=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=i;var a=class extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,t._)`.${new t.Name(n)}[${r}]`}};e.ValueScopeName=a;let o=(0,t._)`\n`;e.ValueScope=class extends i{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o:t.nil}}get(){return this._scope}name(e){return new a(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=/* @__PURE__ */ new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,n=>{if(n.scopePath===void 0)throw Error(`CodeGen: name "${n}" has no value`);return(0,t._)`${e}${n.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(i,a,o={},s){let c=t.nil;for(let l in i){let u=i[l];if(!u)continue;let d=o[l]=o[l]||/* @__PURE__ */ new Map;u.forEach(i=>{if(d.has(i))return;d.set(i,r.Started);let o=a(i);if(o){let n=this.opts.es5?e.varKinds.var:e.varKinds.const;c=(0,t._)`${c}${n} ${i} = ${o};${this.opts._n}`}else if(o=s?.(i))c=(0,t._)`${c}${o}${this.opts._n}`;else throw new n(i);d.set(i,r.Completed)})}return c}}})),K=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;let t=ma(),n=ha();var r=ma();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}});var i=ha();Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),e.operators={GT:new t._Code(`>`),GTE:new t._Code(`>=`),LT:new t._Code(`<`),LTE:new t._Code(`<=`),EQ:new t._Code(`===`),NEQ:new t._Code(`!==`),NOT:new t._Code(`!`),OR:new t._Code(`||`),AND:new t._Code(`&&`),ADD:new t._Code(`+`)};var a=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},o=class extends a{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let r=e?n.varKinds.var:this.varKind,i=this.rhs===void 0?``:` = ${this.rhs}`;return`${r} ${this.name}${i};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=D(this.rhs,e,t),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}},s=class extends a{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=D(this.rhs,e,n),this}get names(){return te(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}},c=class extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},u=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},d=class extends a{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},f=class extends a{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=D(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}},p=class extends a{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(O(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>E(e,t.names),{})}},m=class extends p{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},h=class extends p{},g=class extends m{};g.kind=`else`;var _=class e extends m{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let n=this.else;if(n){let e=n.optimizeNodes();n=this.else=Array.isArray(e)?new g(e):e}if(n)return t===!1?n instanceof e?n:n.nodes:this.nodes.length?this:new e(ne(t),n instanceof e?[n]:n.nodes);if(t!==!1&&this.nodes.length)return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=D(this.condition,e,t),this}get names(){let e=super.names;return te(e,this.condition),this.else&&E(e,this.else.names),e}};_.kind=`if`;var v=class extends m{};v.kind=`for`;var y=class extends v{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=D(this.iteration,e,t),this}get names(){return E(super.names,this.iteration.names)}},b=class extends v{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?n.varKinds.var:this.varKind,{name:r,from:i,to:a}=this;return`for(${t} ${r}=${i}; ${r}<${a}; ${r}++)`+super.render(e)}get names(){return te(te(super.names,this.from),this.to)}},x=class extends v{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=D(this.iterable,e,t),this}get names(){return E(super.names,this.iterable.names)}},S=class extends m{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};S.kind=`func`;var C=class extends p{render(e){return`return `+super.render(e)}};C.kind=`return`;var w=class extends m{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)==null||e.optimizeNodes(),(t=this.finally)==null||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),(n=this.catch)==null||n.optimizeNames(e,t),(r=this.finally)==null||r.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&E(e,this.catch.names),this.finally&&E(e,this.finally.names),e}},T=class extends m{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};T.kind=`catch`;var ee=class extends m{render(e){return`finally`+super.render(e)}};ee.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
55
- `:``},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=/* @__PURE__ */ new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new o(e,i,n)),i}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new c(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==t.nil&&this._leafNode(new f(e)),this}object(...e){let n=[`{`];for(let[r,i]of e)n.length>1&&n.push(`,`),n.push(r),(r!==i||this.opts.es5)&&(n.push(`:`),(0,t.addCodeArg)(n,i));return n.push(`}`),new t._Code(n)}if(e,t,n){if(this._blockNode(new _(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new _(e))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(_,g)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new y(e),t)}forRange(e,t,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.let){let o=this._scope.toName(e);return this._for(new b(a,o,t,r),()=>i(o))}forOf(e,r,i,a=n.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=r instanceof t.Name?r:this.var(`_arr`,r);return this.forRange(`_i`,0,(0,t._)`${e}.length`,n=>{this.var(o,(0,t._)`${e}[${n}]`),i(o)})}return this._for(new x(`of`,a,o,r),()=>i(o))}forIn(e,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,t._)`Object.keys(${r})`,i);let o=this._scope.toName(e);return this._for(new x(`in`,a,o,r),()=>i(o))}endFor(){return this._endBlockNode(v)}label(e){return this._leafNode(new l(e))}break(e){return this._leafNode(new u(e))}return(e){let t=new C;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(C)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new w;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new T(e),t(e)}return n&&(this._currNode=r.finally=new ee,this.code(n)),this._endBlockNode(T,ee)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,i){return this._blockNode(new S(e,n,r)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(S)}optimize(e=1){for(;e-->0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof _))throw Error(`CodeGen: "else" without "if"`);return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}};function E(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function te(e,n){return n instanceof t._CodeOrName?E(e,n.names):e}function D(e,n,r){return e instanceof t.Name?i(e):a(e)?new t._Code(e._items.reduce((e,n)=>(n instanceof t.Name&&(n=i(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e),[])):e;function i(e){let t=r[e.str];return t===void 0||n[e.str]!==1?e:(delete n[e.str],t)}function a(e){return e instanceof t._Code&&e._items.some(e=>e instanceof t.Name&&n[e.str]===1&&r[e.str]!==void 0)}}function O(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function ne(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,t._)`!${ce(e)}`}e.not=ne;let re=se(e.operators.AND);function ie(...e){return e.reduce(re)}e.and=ie;let ae=se(e.operators.OR);function oe(...e){return e.reduce(ae)}e.or=oe;function se(e){return(n,r)=>n===t.nil?r:r===t.nil?n:(0,t._)`${ce(n)} ${e} ${ce(r)}`}function ce(e){return e instanceof t.Name?e:(0,t._)`(${e})`}})),q=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;let t=K(),n=ma();function r(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=r;function i(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0||(a(e,t),!o(t,e.self.RULES.all))}e.alwaysValidSchema=i;function a(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||x(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=a;function o(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=o;function s(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=s;function c({topSchemaRef:e,schemaPath:n},r,i,a){if(!a){if(typeof r==`number`||typeof r==`boolean`)return r;if(typeof r==`string`)return(0,t._)`${r}`}return(0,t._)`${e}${n}${(0,t.getProperty)(i)}`}e.schemaRefOrVal=c;function l(e){return f(decodeURIComponent(e))}e.unescapeFragment=l;function u(e){return encodeURIComponent(d(e))}e.escapeFragment=u;function d(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=d;function f(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=f;function p(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=p;function m({mergeNames:e,mergeToName:n,mergeValues:r,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof t.Name?(o instanceof t.Name?e(a,o,s):n(a,o,s),s):o instanceof t.Name?(n(a,s,o),o):r(o,s);return c===t.Name&&!(l instanceof t.Name)?i(a,l):l}}e.mergeEvaluated={props:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>{e.if((0,t._)`${n} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,t._)`${r} || {}`).code((0,t._)`Object.assign(${r}, ${n})`))}),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>{n===!0?e.assign(r,!0):(e.assign(r,(0,t._)`${r} || {}`),g(e,r,n))}),mergeValues:(e,t)=>e===!0||{...e,...t},resultToName:h}),items:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>e.assign(r,(0,t._)`${n} === true ? true : ${r} > ${n} ? ${r} : ${n}`)),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>e.assign(r,n===!0||(0,t._)`${r} > ${n} ? ${r} : ${n}`)),mergeValues:(e,t)=>e===!0||Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function h(e,n){if(n===!0)return e.var(`props`,!0);let r=e.var(`props`,(0,t._)`{}`);return n!==void 0&&g(e,r,n),r}e.evaluatedPropsToName=h;function g(e,n,r){Object.keys(r).forEach(r=>e.assign((0,t._)`${n}${(0,t.getProperty)(r)}`,!0))}e.setEvaluated=g;let _={};function v(e,t){return e.scopeValue(`func`,{ref:t,code:_[t.code]||(_[t.code]=new n._Code(t.code))})}e.useFunc=v;var y;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(y||(e.Type=y={}));function b(e,n,r){if(e instanceof t.Name){let i=n===y.Num;return r?i?(0,t._)`"[" + ${e} + "]"`:(0,t._)`"['" + ${e} + "']"`:i?(0,t._)`"/" + ${e}`:(0,t._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,t.getProperty)(e).toString():`/`+d(e)}e.getErrorPath=b;function x(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=x})),J=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={data:new t.Name(`data`),valCxt:new t.Name(`valCxt`),instancePath:new t.Name(`instancePath`),parentData:new t.Name(`parentData`),parentDataProperty:new t.Name(`parentDataProperty`),rootData:new t.Name(`rootData`),dynamicAnchors:new t.Name(`dynamicAnchors`),vErrors:new t.Name(`vErrors`),errors:new t.Name(`errors`),this:new t.Name(`this`),self:new t.Name(`self`),scope:new t.Name(`scope`),json:new t.Name(`json`),jsonPos:new t.Name(`jsonPos`),jsonLen:new t.Name(`jsonLen`),jsonPart:new t.Name(`jsonPart`)}})),ga=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;let t=K(),n=q(),r=J();e.keywordError={message:({keyword:e})=>(0,t.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?(0,t.str)`"${e}" keyword must be ${n} ($data)`:(0,t.str)`"${e}" keyword is invalid ($data)`};function i(n,r=e.keywordError,i,a){let{it:o}=n,{gen:s,compositeRule:u,allErrors:f}=o,p=d(n,r,i);a??(u||f)?c(s,p):l(o,(0,t._)`[${p}]`)}e.reportError=i;function a(t,n=e.keywordError,i){let{it:a}=t,{gen:o,compositeRule:s,allErrors:u}=a;c(o,d(t,n,i)),s||u||l(a,r.default.vErrors)}e.reportExtraError=a;function o(e,n){e.assign(r.default.errors,n),e.if((0,t._)`${r.default.vErrors} !== null`,()=>e.if(n,()=>e.assign((0,t._)`${r.default.vErrors}.length`,n),()=>e.assign(r.default.vErrors,null)))}e.resetErrorsCount=o;function s({gen:e,keyword:n,schemaValue:i,data:a,errsCount:o,it:s}){
51
+ `)}function Er(e,t){e&&!t&&process.stderr.write(`request_id: ${e}\n`)}function Dr(e,t,{gap:n=2}={}){let r=e.map((e,n)=>{let r=e.length;for(let e of t){let t=e[n]??``;t.length>r&&(r=t.length)}return r}),i=` `.repeat(n),a=e=>e.map((e,t)=>(e??``).padEnd(r[t])).join(i),o=[];o.push(a(e));for(let e of t)o.push(a(e));return o}function Or(e){return e>=11904&&e<=40959||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=195103}function V(e){let t=0;for(let n of e){let e=n.codePointAt(0)??0;t+=Or(e)?2:1}return t}function kr(e,t){let n=t-V(e);return n>0?e+` `.repeat(n):e}const Ar=` │ `,jr=[0,150,160],Mr=[176,205,250],Nr=[160,160,170];function Pr(e){if(`NO_COLOR`in process.env)return 0;let t=process.env.FORCE_COLOR;if(t!=null){if(t===`0`||t===`false`)return 0;if(t===`3`||t===`truecolor`)return 3;if(t===`2`)return 2;if(t===`1`||t===`true`||t===``)return 1}if(!bt(e))return 0;let n=process.env.COLORTERM;if(n===`truecolor`||n===`24bit`)return 3;let r=process.env.TERM??``;return r===`dumb`?1:/-256(color)?$/i.test(r)?2:1}function Fr(e,t,n){return e===t&&t===n?e<8?16:e>248?231:232+Math.round((e-8)/247*24):16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)}function Ir(e,t,n,r){let i=Math.max(e,t,n)>127,a=i?128:64;return(r===48?i?100:40:i?90:30)+(e>=a|(t>=a?2:0)|(n>=a?4:0))}function Lr(e,t,n,r,i=38){return e>=3?`${i};2;${t};${n};${r}`:e===2?`${i};5;${Fr(t,n,r)}`:String(Ir(t,n,r,i))}function Rr(e,[t,n,r],i){return e<=0?i:`\x1b[${Lr(e,t,n,r)}m${i}\x1b[0m`}function zr(e,t,n){return t<=0?e:`\x1b[1;${Lr(t,255,255,255,38)};${Lr(t,n[0],n[1],n[2],48)}m${e}\x1b[0m`}function Br(e,t){let n=t-V(e);return n>0?` `.repeat(n)+e:e}function Vr(e,t,n=20,r=process.stdout){return Hr(e,t,n,Pr(r))}function Hr(e,t,n,r){let i=e==null?0:Math.max(0,Math.min(100,e)),a=e!=null,o=a?Math.round(i/100*n):0,s=``,c=``;for(let e=0;e<n;e++)a&&e<o?(s+=`█`,c+=Rr(r,jr,`█`)):(s+=` `,c+=` `);let l=a?Mr:Nr;return s+=` ${t}`,c+=` ${Rr(r,l,t)}`,{plain:s,colored:c}}function Ur(e){let t=Pr(e.out??process.stdout),n=e.align??[],r=e.barColumns??[],i=e.headers.length,a={};for(let n of r){let r=n.width??20,i=[];for(let a=0;a<e.rows.length;a++){let e=n.percents[a]??null,o=n.labels?.[a]??(e==null?`-`:`${Number.isInteger(e)?e:e.toFixed(1)}%`);i.push(Hr(e,o,r,t))}a[n.index]=i}let o=(t,n)=>a[n]?a[n][t].plain:e.rows[t][n]??``,s=e.headers.map((t,n)=>{let r=V(t);for(let t=0;t<e.rows.length;t++){let e=V(o(t,n));e>r&&(r=e)}return r}),c=[],l=e.headers.map((e,t)=>n[t]===`right`?Br(e,s[t]):kr(e,s[t])).join(Ar),u=Math.max(V(l),...e.rows.map((e,t)=>V(Array.from({length:i},(e,n)=>o(t,n)).join(Ar))));c.push(zr(` ${kr(l,u)} `,t,jr));let d=` ${Rr(t,jr,`│`)} `;for(let t=0;t<e.rows.length;t++){let r=[];for(let o=0;o<i;o++){let i=s[o];if(a[o]){let e=a[o][t],n=i-V(e.plain);r.push(n>0?e.colored+` `.repeat(n):e.colored);continue}let c=e.rows[t][o]??``,l=e.cellColor?.(t,o,c),u=n[o]===`right`?Br(c,i):kr(c,i);l?r.push(n[o]===`right`?u.slice(0,u.length-c.length)+l:l+u.slice(c.length)):r.push(u)}let o=` `;for(let e=0;e<i;e++)o+=r[e],e<i-1&&(o+=d);c.push(o)}return c}const Wr=[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`];function Gr(e){let t=process.stderr.isTTY,n=0,r=null,i=e;return{start(){t&&(r=setInterval(()=>{process.stderr.write(`\r${Wr[n%Wr.length]} ${i}`),n++},80))},update(e){i=e},stop(e){r&&=(clearInterval(r),null),t&&(process.stderr.write(`\r\x1B[K`),e&&process.stderr.write(`${e}\n`))}}}function Kr(e,t=``){let n=process.stderr.isTTY;return{update(r){if(!n)return;let i=Math.min(1,r/e),a=Math.round(30*i),o=30-a,s=`█`.repeat(a)+`░`.repeat(o),c=`${Math.round(i*100)}%`;process.stderr.write(`\r${t} ${s} ${c}`)},finish(){n&&process.stderr.write(`
52
+ `)}}}async function qr(e,n,r){let i=Date.now()+r.timeoutSec*1e3,a=Gr(`Polling...`);n.quiet||a.start();try{for(;Date.now()<i;){let i=await e.requestJson({path:r.url});if(r.getStatus&&!n.quiet&&a.update(`Status: ${r.getStatus(i)}`),r.isComplete(i))return a.stop(`Done.`),i;if(r.isFailed(i)){a.stop(`Failed.`),n.verbose&&process.stderr.write(`[verbose] Task response: ${JSON.stringify(i,null,2)}\n`);let e=r.getErrorMessage?.(i);throw new t(e?`Task failed: ${e}`:`Task failed.`,c.GENERAL,e?void 0:`Use --verbose to see full API response details.`)}await new Promise(e=>setTimeout(e,r.intervalSec*1e3))}}finally{a.stop()}throw new t(`Polling timed out.`,c.TIMEOUT,`Try increasing --timeout or check task status manually.`)}async function Jr(e,n,r){let i=await fetch(e);if(!i.ok)throw new t(`Download failed: HTTP ${i.status}`,c.GENERAL);let a=Number(i.headers.get(`content-length`)||0),o=i.body?.getReader();if(!o)throw new t(`No response body`,c.GENERAL);Me(ke(n),{recursive:!0});let s=je(n),l=a>0&&!r?.quiet?Kr(a,`Downloading`):null,u=0,d=!1;try{let e=new Promise((e,t)=>{s.on(`error`,t)});for(;;){let{done:t,value:n}=await Promise.race([o.read(),e]);if(t)break;s.write(n)||await new Promise(e=>s.once(`drain`,()=>e())),u+=n.byteLength,l?.update(u)}d=!0}finally{if(o.releaseLock(),l?.finish(),await new Promise((e,t)=>{s.on(`finish`,e),s.on(`error`,t),s.end()}),!d)try{Pe(n)}catch{}}return{size:u}}function Yr(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:e<1073741824?`${(e/1048576).toFixed(1)} MB`:`${(e/1073741824).toFixed(1)} GB`}function Xr(e){return Math.max(1,e.concurrent??1)}async function Zr(e,t,n,r=`requests`){if(e<=1)return[await n(0)];t.quiet||process.stderr.write(`[Concurrent: ${e} ${r}]\n`);let i=Array.from({length:e},(e,t)=>n(t));return Promise.all(i)}async function Qr(e,t,n){return Promise.all(e.map(({url:e,destPath:r})=>t(e,r,n).then(()=>r)))}const $r={"qwen-image-2.0":{"16:9":`2688*1536`,"9:16":`1536*2688`,"1:1":`2048*2048`,"4:3":`2368*1728`,"3:4":`1728*2368`},"qwen-image-fixed":{"16:9":`1664*928`,"4:3":`1472*1104`,"1:1":`1328*1328`,"3:4":`1104*1472`,"9:16":`928*1664`},wan27:{"16:9":`2688*1536`,"9:16":`1536*2688`,"1:1":`2048*2048`,"4:3":`2368*1728`,"3:4":`1728*2368`},"z-image":{"1:1":`1024*1024`,"16:9":`1280*720`,"9:16":`720*1280`,"4:3":`1152*864`,"3:4":`864*1152`,"3:2":`1248*832`,"2:3":`832*1248`},wan26:{"1:1":`1280*1280`,"16:9":`1696*960`,"9:16":`960*1696`,"4:3":`1472*1104`,"3:4":`1104*1472`},"wan-legacy":{"1:1":`1024*1024`,"16:9":`1280*720`,"9:16":`720*1280`,"3:4":`768*1152`,"4:3":`1152*768`},"wanx-v1":{"1:1":`1024*1024`,"9:16":`720*1280`,"3:4":`768*1152`,"16:9":`1280*720`},"wan25-i2i":{"1:1":`1280*1280`,"16:9":`1280*720`,"9:16":`720*1280`,"4:3":`1152*864`,"3:4":`864*1152`}};function ei(e,t){if(e)return $r[typeof t==`boolean`?t?`qwen-image-2.0`:`qwen-image-fixed`:t][e]??e}var ti=/* @__PURE__ */ ft({ensureBinaryPathEntries:()=>yi,ensureWindowsBinJunction:()=>xi,fetchBinaryChannelManifest:()=>oi,fetchBinaryChannelVersion:()=>ai,getBinaryBinRoot:()=>ni,getBinaryCurrentPath:()=>ii,getBinaryShareRoot:()=>H,getBinaryVersionsDir:()=>ri,isValidUpdateTargetVersion:()=>li,normalizeBinaryVersion:()=>si,performBinaryUpdate:()=>Ci,pruneBinaryVersions:()=>Si,readCurrentVersionDir:()=>gi,resolveBinaryDownloadSpec:()=>di,switchCurrentToVersion:()=>vi});function H(){return process.env.BAILIAN_SHARE_DIR?process.env.BAILIAN_SHARE_DIR:process.platform===`win32`?N(process.env.LOCALAPPDATA||N(it(),`AppData`,`Local`),`bailian-cli`):N(it(),`.local`,`share`,`bailian-cli`)}function ni(){return process.env.BAILIAN_BIN_DIR?process.env.BAILIAN_BIN_DIR:process.platform===`win32`?N(H(),`bin`):N(it(),`.local`,`bin`)}function ri(){return N(H(),`versions`)}function ii(){return N(H(),`current`)}async function ai(e=`latest`,t=5e3){try{let n=await fetch(x(e),{signal:AbortSignal.timeout(t)});return n.ok?(await n.json()).version??null:null}catch{return null}}async function oi(e=`latest`,t=8e3){try{let n=await fetch(x(e),{signal:AbortSignal.timeout(t)});return n.ok?await n.json():null}catch{return null}}function si(e){let t=e.trim();return/^v\d/i.test(t)?t.slice(1):t}const ci=/^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function li(e){let t=e.trim();return t?ci.test(t):!1}async function ui(e,t,n=8e3){try{let r=await fetch(le(e,`SHA256SUMS`),{signal:AbortSignal.timeout(n)});if(!r.ok)return;let i=await r.text();for(let e of i.split(`
53
+ `)){let n=e.trim().match(/^([a-fA-F0-9]{64})\s+(\S+)$/);if(n?.[2]===t)return n[1].toLowerCase()}}catch{}}async function di(e){let t=si(e),{os:n,arch:r,fileSuffix:i}=ee(),a=i===`.exe`,o=m(t,n,r,a),s=h(t,n,r,a),c=le(t,o),l=await ui(t,o);if(!l){let e=await oi(`latest`);e?.version===t&&(l=e.assets?.[`${n}-${r}`]?.sha256)}return{zipName:o,innerName:s,url:c,expectedSha:l}}async function fi(e,t){let n=await fetch(e,{signal:AbortSignal.timeout(12e4)});if(!n.ok||!n.body)throw Error(`Download failed (${n.status}): ${e}`);let r=await n.arrayBuffer(),i=Buffer.from(r);return await A(Ze(t),{recursive:!0}),await Xe(t,i),i}function pi(e){return at(`sha256`).update(e).digest(`hex`)}function mi(){return process.platform===`win32`?`bl.exe`:`bl`}function hi(){return process.platform===`win32`?`bailian.exe`:`bailian`}async function gi(){let e=ii();try{let t=await Ke(e);return t.startsWith(`/`)||/^[A-Za-z]:[\\/]/.test(t)?t:N(Ze(e),t)}catch{return null}}function _i(e){let t=ri(),n=e.replaceAll(`\\`,`/`),r=t.replaceAll(`\\`,`/`).replace(/\/$/,``);if(!n.startsWith(`${r}/`)&&n!==r){let t=e.replaceAll(`\\`,`/`).split(`/`).pop();return t&&t!==`versions`?t:null}return n.slice(r.length+1).split(`/`)[0]??null}async function vi(e){let t=N(ri(),e),n=ii();await A(H(),{recursive:!0});try{await M(n)}catch{try{await j(n,{recursive:!0,force:!0})}catch{}}let{symlink:r}=await import(`node:fs/promises`);return process.platform===`win32`?await r(t,n,`junction`):await r(t,n),t}async function yi(e){let t=N(ri(),e),n=mi(),r=N(ii(),n),i=ni();if(process.platform===`win32`){await xi(i);let e=N(t,n),r=N(t,hi());try{await He(r)}catch{try{let{link:t}=await import(`node:fs/promises`);await t(e,r)}catch{await Ve(e,r)}}return}await A(i,{recursive:!0});let{symlink:a}=await import(`node:fs/promises`);for(let e of[`bl`,`bailian`]){let t=N(i,e);try{await M(t)}catch{}await a(r,t)}}function bi(e){return e&&typeof e==`object`&&`code`in e?String(e.code??``):``}async function xi(e){let t=ii(),{symlink:n,rename:r}=await import(`node:fs/promises`),i=null;try{let n=await He(e);if(n.isSymbolicLink()){let n=await Ke(e);if((n.startsWith(`/`)||/^[A-Za-z]:[\\/]/.test(n)?n:N(Ze(e),n)).replaceAll(`\\`,`/`).toLowerCase()===t.replaceAll(`\\`,`/`).toLowerCase())return;await M(e)}else if(n.isDirectory()){i=`${e}.migrating.${process.pid}`;try{await r(e,i)}catch(t){try{await j(e,{recursive:!0,force:!0}),i=null}catch(n){let r=bi(t)||bi(n)||`EACCES`;throw Error(`Failed to migrate ${e} to a junction pointing at current (${r}). Close other bl sessions and re-run update, or re-run the install script once.`,{cause:n})}}}else await M(e).catch(()=>j(e,{recursive:!0,force:!0}))}catch(t){let n=bi(t);if(n&&n!==`ENOENT`)throw t instanceof Error&&t.message.includes(`Failed to migrate`)?t:Error(`Failed to migrate ${e} to a junction pointing at current (${n}). Close other bl sessions and re-run update, or re-run the install script once.`,{cause:t})}await A(Ze(e),{recursive:!0}),await n(t,e,`junction`),i&&await j(i,{recursive:!0,force:!0}).catch(()=>{})}async function Si(e){let t=ri(),n=new Set(e.filter(Boolean)),r=await gi(),i=r?_i(r):null;i&&n.add(i);let a;try{a=await Ge(t)}catch{return}for(let e of a){if(e.startsWith(`.`)){await j(N(t,e),{recursive:!0,force:!0}).catch(()=>{});continue}n.has(e)||await j(N(t,e),{recursive:!0,force:!0}).catch(()=>{})}}async function Ci(t){let n=si(t),{zipName:r,innerName:i,url:a,expectedSha:o}=await di(n),s=H(),c=ri();await A(N(s,`.tmp`),{recursive:!0}),await A(c,{recursive:!0});let l=await gi(),u=l?_i(l):null,d=N(s,`.tmp`,r),f=pi(await fi(a,d));if(o&&o!==f)throw await M(d).catch(()=>{}),Error(`Checksum mismatch for ${r}`);let p=N(c,`.staging.${n}.${process.pid}`);await j(p,{recursive:!0,force:!0}).catch(()=>{}),await A(p,{recursive:!0});let m=mi(),h=N(p,m),g=N(s,`.tmp`,`${m}.${process.pid}`);if(await O(d,g,i),await M(d).catch(()=>{}),await Je(g,h),process.platform!==`win32`)await Be(h,493);else{let e=N(p,hi());try{let{link:t}=await import(`node:fs/promises`);await t(h,e)}catch{await Ve(h,e)}}let _=N(c,n);await j(_,{recursive:!0,force:!0}).catch(()=>{}),await Je(p,_),await vi(n),await yi(n);let v=[n];return u&&u!==n&&v.push(u),await Si(v),De(`binary`,{clientName:e}),await A(ne(),{recursive:!0}),n}const wi={"en-US":`Enable watermark (true/false). Omit flag to use the Profile setting or CLI default (true).`,"zh-CN":`是否启用水印(true/false)。不传时使用 Profile 配置或 CLI 默认值 true。`},Ti={"en-US":`Enable prompt extend (true/false). Omit flag to use CLI default (true).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时使用 CLI 默认值 true。`},Ei={"en-US":`Enable prompt extend (true/false). Omit flag: true for qwen-image sync; parameter omitted on async models (API default).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时:qwen-image 同步调用默认为 true;异步模型不传该参数(使用 API 默认值)。`},Di={"en-US":`Enable prompt extend (true/false). Omit flag to omit the parameter (DashScope default).`,"zh-CN":`是否启用提示词扩展(true/false)。不传时省略该参数(使用 DashScope 默认值)。`};var U=class extends Error{code;step;details;constructor(e,t,n){super(t),this.name=`PipelineError`,this.code=e,this.step=n?.step,this.details=n?.details}toJSON(){return{code:this.code,message:this.message,...this.step?{step:this.step}:{},...this.details?{details:this.details}:{}}}};function Oi(e,t){return e instanceof U?e:new U(`step_execution_error`,e instanceof Error?e.message:String(e),{step:t})}var ki=class{handlers=/* @__PURE__ */ new Map;outputSchemas=/* @__PURE__ */ new Map;registerStep(e,t,n){this.handlers.set(e,t),n&&this.outputSchemas.set(e,n)}executeStep(e,t,n){let r=this.handlers.get(e);if(!r)throw new U(`unknown_step`,`Unknown step type: ${e}`,{details:{available:this.listSteps()}});return r(t,n)}hasStep(e){return this.handlers.has(e)}listSteps(){return Array.from(this.handlers.keys()).sort()}getOutputSchema(e){return this.outputSchemas.get(e)}};const Ai=new ki;function ji(){return Ai}function Mi(e,t,n,r){let i,a;n instanceof ki?(i=n,a=r):(i=Ai,a=n??r),i.registerStep(e,t,a)}const Ni=/* @__PURE__ */ new Set([`image/generate`,`image/edit`,`video/generate`]);function Pi(e,t,n){return!Ni.has(e)||t.watermark!==void 0?t:{...t,watermark:n.watermark}}function Fi(){let e=b({}),t={...y(e),output:`json`,outputExplicit:!0,quiet:!0},n={binName:`bl`,version:`0.0.0-dev`,npmPackage:`bailian-cli`,clientName:`bailian-cli`},r;try{r=ue(e)}catch{}return{client:new i({identity:n,settings:t,baseUrl:ge(e),apiCred:r}),settings:t}}const Ii=[`download`,`out-dir`,`output`];function Li(e){return e.startsWith(`./`)||e.startsWith(`../`)}function Ri(e,t){let n={},r=[];for(let[i,a]of Object.entries(e))typeof a==`string`&&Li(a)?(n[i]=et(t,a),r.push(i)):n[i]=a;return{input:n,resolvedKeys:r}}async function zi(e,t,n){let r=[];for(let i of t){let t=e[i];typeof t==`string`&&(await ze(t).then(()=>!0,()=>!1)||r.push(`Step "${n}" input "${i}" references file that does not exist: ${t}`))}return r}function Bi(e){if(e===void 0)return;if(typeof e==`number`)return Number.isFinite(e)&&e>0?e:void 0;let t=e.match(/^(\d+(?:\.\d+)?)(ms|s|m)?$/);if(!t)return;let n=Number(t[1]);if(!Number.isFinite(n)||n<=0)return;let r=t[2]??`s`;return r===`ms`?n/1e3:r===`m`?n*60:n}function W(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function Vi(e,t){if(Array.isArray(e)){e.forEach(e=>Vi(e,t));return}if(W(e)){`$from`in e&&typeof e.$from==`string`&&t.add(e.$from);for(let n of Object.values(e))Vi(n,t)}}async function Hi(e,t){let n=[];for(let r of e)for(let[e,i]of Object.entries(r.input)){if(Ii.includes(e)||typeof i!=`string`||!Li(i))continue;let a=et(t,i);await ze(a).then(()=>!0,()=>!1)||n.push(`Step "${r.id}" input "${e}" references file that does not exist: ${a}`)}return n}async function Ui(e,t,n){if(!t.message)throw new U(`missing_input`,`text/chat requires 'message' input`,{step:`text/chat`});let r=t.model||`qwen3.8-max`,i=[];t.system&&i.push({role:`system`,content:t.system}),i.push({role:`user`,content:t.message});let a={model:r,messages:i,max_tokens:t[`max-tokens`]??4096,stream:!1};t.temperature!==void 0&&(a.temperature=t.temperature),t[`top-p`]!==void 0&&(a.top_p=t[`top-p`]),t[`enable-thinking`]&&(a.enable_thinking=!0,t[`thinking-budget`]!==void 0&&(a.thinking_budget=t[`thinking-budget`]));let o=S();return await e.client.requestJson({path:o,method:`POST`,body:a,timeout:n.blRequestTimeoutSeconds,signal:n.signal})}async function Wi(e,t,n){let r=t.model||`qwen3-vl-plus`,i=Array.isArray(t.image)?t.image:t.image?[t.image]:[],a=t.video?`Describe the video.`:`Describe the image.`,o=t.prompt||a,s=[];if(t.video){let i=t.video;ae(i)&&(i=await e.client.uploadFile(i,r,{signal:n.signal})),s.push({type:`video_url`,video_url:{url:i}})}for(let t of i){let i=t;ae(t)&&(i=await e.client.uploadFile(t,r,{signal:n.signal})),s.push({type:`image_url`,image_url:{url:i}})}s.push({type:`text`,text:o});let c={model:r,messages:[{role:`user`,content:s}]},l=S();return await e.client.requestJson({path:l,method:`POST`,body:c,signal:n.signal})}async function Gi(e,t,n){if(!t.prompt)throw new U(`missing_input`,`image/generate requires 'prompt' input`,{step:`image/generate`});let r=t.model||`qwen-image-3.0`,i=he(r),a=t.n??1,o=fe(t[`prompt-extend`],i.promptExtendDefault,`prompt-extend`),s={size:ei(t.size,i.sizeProfile),n:a,seed:t.seed,prompt_extend:o,watermark:ye(t.watermark,e.settings.watermark)},c=i.inputStyle===`prompt`?{model:r,input:{prompt:t.prompt,negative_prompt:t[`negative-prompt`]||void 0},parameters:s}:{model:r,input:{messages:[{role:`user`,content:[{text:t.prompt}]}]},parameters:{...s,negative_prompt:t[`negative-prompt`]||void 0}};if(i.useSync){let r=await e.client.requestJson({path:i.path,method:`POST`,body:c,signal:n.signal}),a=r.output.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean),o=await qi(a,t[`out-dir`],t[`out-prefix`]);return{urls:a,request_id:r.request_id,...o?{saved:o}:{}}}let l=(await e.client.requestJson({path:i.path,method:`POST`,body:c,async:!0,signal:n.signal})).output.task_id,u=await Qi(e,l,n),d=await qi(Array.isArray(u.urls)?u.urls:[],t[`out-dir`],t[`out-prefix`]);return d&&(u.saved=d),u}async function Ki(e,t,n){if(!t.prompt)throw new U(`missing_input`,`image/edit requires 'prompt' input`,{step:`image/edit`});let r=Array.isArray(t.image)?t.image:t.image?[t.image]:[],i=t.model||`qwen-image-3.0`,a=me(i),o=t.n??1,s=fe(t[`prompt-extend`],a.promptExtendDefault,`prompt-extend`),c=[];for(let t of r){let r=t;ae(t)&&(r=await e.client.uploadFile(t,i,{signal:n.signal})),c.push(r)}let l={size:ei(t.size,a.sizeProfile),n:o,seed:t.seed,prompt_extend:s,watermark:ye(t.watermark,e.settings.watermark)},u;if(a.inputStyle===`function-base-image`){let e=c[0];if(!e)throw new U(`missing_input`,`image/edit with wanx*-imageedit requires at least one image`,{step:`image/edit`});u={model:i,input:{function:t.function||`description_edit`,prompt:t.prompt,base_image_url:e},parameters:l}}else if(a.inputStyle===`prompt-images`)u={model:i,input:{prompt:t.prompt,images:c,negative_prompt:t[`negative-prompt`]||void 0},parameters:l};else{let e=c.map(e=>({image:e}));e.push({text:t.prompt}),u={model:i,input:{messages:[{role:`user`,content:e}]},parameters:{...l,negative_prompt:t[`negative-prompt`]||void 0}}}if(a.useSync){let r=await e.client.requestJson({path:a.path,method:`POST`,body:u,signal:n.signal}),i=r.output.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean),o=await qi(i,t[`out-dir`],t[`out-prefix`]);return{urls:i,request_id:r.request_id,...o?{saved:o}:{}}}let d=(await e.client.requestJson({path:a.path,method:`POST`,body:u,async:!0,signal:n.signal})).output.task_id,f=await Qi(e,d,n),p=await qi(Array.isArray(f.urls)?f.urls:[],t[`out-dir`],t[`out-prefix`]);return p&&(f.saved=p),f}async function qi(e,t,n){if(!t||e.length===0)return;await A(t,{recursive:!0});let r=n&&n.length>0?n:`image`,i=e.length===1?[{url:e[0],destPath:N(t,`${r}.png`)}]:e.map((e,n)=>({url:e,destPath:N(t,`${r}_${String(n+1).padStart(3,`0`)}.png`)})),a=[];for(let{url:e,destPath:t}of i)await Jr(e,t,{quiet:!0}),a.push(t);return a}async function Ji(e,t,n){if(!t.prompt)throw new U(`missing_input`,`video/generate requires 'prompt' input`,{step:`video/generate`});let r=t.model||`wan3.0-video`,i;t.image&&(i=ae(t.image)?await e.client.uploadFile(t.image,r,{signal:n.signal}):t.image);let a={model:r,input:{prompt:t.prompt,negative_prompt:t[`negative-prompt`]||void 0,...i?{media:[{type:`first_frame`,url:i}]}:{}},parameters:{resolution:t.resolution||void 0,ratio:t.ratio||void 0,duration:t.duration,prompt_extend:fe(t[`prompt-extend`],void 0,`prompt-extend`),watermark:ye(t.watermark,e.settings.watermark),seed:t.seed}};Ce(a.parameters);let o=Ee(),s=(await e.client.requestJson({path:o,method:`POST`,body:a,async:!0,signal:n.signal})).output.task_id;return await ea(e,s,(t[`poll-interval`]??10)*1e3,(n.timeoutSeconds??900)*1e3,n)}async function Yi(e,t,n){let r=t.text;if(!r&&t[`text-file`]){let{readFileSync:e}=await import(`node:fs`);r=e(t[`text-file`],`utf-8`).trim()}if(!r)throw new U(`missing_input`,`speech/synthesize requires 'text' input`,{step:`speech/synthesize`});let i=t.model||`cosyvoice-v3-flash`,a={model:i,input:{text:r,voice:t.voice,format:t.format,sample_rate:t[`sample-rate`],volume:t.volume,rate:t.rate,pitch:t.pitch,seed:t.seed,language_hints:t.language?[t.language]:void 0,instruction:t.instruction,enable_ssml:t[`enable-ssml`]}};Ce(a.input);let o=Se(),s=await e.client.requestJson({path:o,method:`POST`,body:a,signal:n.signal});return{audio_url:s.output.audio.url,url_expires_at:s.output.audio.expires_at,model:i,voice:t.voice,request_id:s.request_id}}async function Xi(e,t,n){let r=Array.isArray(t.url)?t.url:t.url?[t.url]:[];if(r.length===0)throw new U(`missing_input`,`speech/recognize requires 'url' input`,{step:`speech/recognize`});let i=t.model||`fun-asr`,a=de(i);if(a.kind===`unsupported`)throw new U(`invalid_input`,a.unsupportedReason??`Unsupported ASR model: ${i}`,{step:`speech/recognize`});if(a.kind===`sync-flash`){if(r.length!==1)throw new U(`invalid_input`,`Model "${i}" is a sync Flash ASR model and accepts exactly one url (got ${r.length})`,{step:`speech/recognize`});let e=[];if(t.diarization&&e.push(`diarization`),t[`speaker-count`]!==void 0&&e.push(`speaker-count`),a.flashFamily===`qwen3`&&(t[`vocabulary-id`]!==void 0&&e.push(`vocabulary-id`),t.vocabulary!==void 0&&e.push(`vocabulary`),t.context!==void 0&&e.push(`context`)),t[`channel-id`]!==void 0&&e.push(`channel-id`),e.length>0)throw new U(`invalid_input`,`Model "${i}" uses sync Flash ASR and does not support: ${e.join(`, `)}`,{step:`speech/recognize`})}if(a.kind===`async-filetrans`&&a.asyncInputStyle===`file_url`&&r.length!==1)throw new U(`invalid_input`,`Model "${i}" accepts exactly one url (got ${r.length})`,{step:`speech/recognize`});let o=[];for(let t of r)ae(t)?o.push(await e.client.uploadFile(t,i,{signal:n.signal})):o.push(t);if(a.kind===`sync-flash`){let r=a.flashFamily,s=_({model:i,audioUrl:o[0],language:t.language,vocabularyId:t[`vocabulary-id`],vocabulary:t.vocabulary,context:t.context,flashFamily:r}),c=await e.client.requestJson({path:a.path,method:`POST`,headers:{"X-DashScope-SSE":`disable`},body:s,signal:n.signal});return{text:D(c,r),model:i,mode:`sync`,raw:c}}let s=v(a.asyncLanguageStyle??`language_hints`,t.language),c={model:i,input:{...a.asyncInputStyle===`file_url`?{file_url:o[0]}:{file_urls:o},...t.context?{context:g(t.context)}:{}},parameters:{channel_id:t[`channel-id`]===void 0?void 0:[t[`channel-id`]],...s,diarization_enabled:t.diarization,speaker_count:t[`speaker-count`],vocabulary_id:t[`vocabulary-id`],vocabulary:t.vocabulary}};Ce(c.parameters);let l=(await e.client.requestJson({path:xe(),method:`POST`,body:c,async:!0,signal:n.signal})).output.task_id,u=await ta(e,l,(t[`poll-interval`]??2)*1e3,(n.timeoutSeconds??300)*1e3,n),d=C(u.output),f={task_id:u.output.task_id,task_status:u.output.task_status,request_id:u.request_id,mode:`async`,model:i};if(u.output.results&&(f.results=u.output.results),u.output.result&&(f.result=u.output.result,typeof u.output.result.transcription_url==`string`&&(f.transcription_url=u.output.result.transcription_url)),u.output.task_metrics&&(f.task_metrics=u.output.task_metrics),u.usage&&(f.usage=u.usage),d.length===0)return f;let p=[],m=[];for(let e of d){if(!e.transcription_url)continue;let t=await fetch(e.transcription_url,{signal:n.signal});if(!t.ok)throw new U(`async_task_failed`,`Failed to download transcription: HTTP ${t.status}`,{step:`speech/recognize`,details:{taskId:l,url:e.transcription_url}});let r=await t.json();m.push(r);let i=r.transcripts;if(i?.length)for(let e of i)if(e.sentences?.length)for(let t of e.sentences)t.text&&p.push(t.text);else e.text&&p.push(e.text)}return{...f,text:p.join(`
54
+ `),transcripts:m}}function Zi(e){let{output:t,request_id:n,usage:r}=e,i={task_id:t.task_id,task_status:t.task_status,request_id:n};if(t.video_url&&(i.video_url=t.video_url),t.choices){let e=t.choices.flatMap(e=>e.message?.content||[]).map(e=>e.image).filter(Boolean);e.length>0&&(i.urls=e)}if(t.results){let e=t.results.map(e=>e.url).filter(Boolean);e.length>0&&!i.urls&&(i.urls=e)}return t.task_metrics&&(i.task_metrics=t.task_metrics),r&&(i.usage=r),i}async function Qi(e,t,n){return await ea(e,t,3e3,e.settings.timeout*1e3,n)}async function $i(e,t,n,r,i){let a=Date.now(),o=0;for(;;){if(i?.signal?.aborted)throw new U(`aborted`,`Task polling was aborted`,{details:{taskId:t}});await na(n,i?.signal),o++;let s=we(t),c=await e.client.requestJson({path:s,method:`GET`,signal:i?.signal}),l=c.output.task_status;if(l===`SUCCEEDED`)return c;if(l===`FAILED`)throw new U(`async_task_failed`,c.output.message||c.output.code||`Task failed`,{details:{taskId:t,data:c}});let u=Date.now()-a;if(await i?.emitEvent?.({type:`step.polling`,timestamp:(/* @__PURE__ */ new Date()).toISOString(),status:`running`,taskId:t,taskStatus:l,elapsedMs:u,pollAttempt:o}),u>r)throw new U(`async_poll_timeout`,`Task ${t} timed out after ${Math.round(r/1e3)}s`,{details:{taskId:t,timeoutMs:r,pollAttempts:o}})}}async function ea(e,t,n,r,i){return Zi(await $i(e,t,n,r,i))}async function ta(e,t,n,r,i){return await $i(e,t,n,r,i)}function na(e,t){return t?new Promise((n,r)=>{let i=setTimeout(()=>{o(),n()},e),a=()=>{o(),r(new U(`aborted`,`Poll delay was aborted`))},o=()=>{clearTimeout(i),t.removeEventListener(`abort`,a)};t.aborted?a():t.addEventListener(`abort`,a,{once:!0})}):new Promise(t=>setTimeout(t,e))}const ra={"text/chat":(e,t,n)=>Ui(e,t,n),"vision/describe":(e,t,n)=>Wi(e,t,n),"image/generate":(e,t,n)=>Gi(e,t,n),"image/edit":(e,t,n)=>Ki(e,t,n),"video/generate":(e,t,n)=>Ji(e,t,n),"speech/synthesize":(e,t,n)=>Yi(e,t,n),"speech/recognize":(e,t,n)=>Xi(e,t,n)},ia={"image/generate":e=>({data:e,artifacts:ca(e),warnings:[],metadata:{}}),"image/edit":e=>({data:e,artifacts:ca(e),warnings:[],metadata:{}}),"video/generate":e=>({data:e,artifacts:ca(e),warnings:[],metadata:{}}),"speech/synthesize":e=>({data:e,artifacts:la(e,`audio`),warnings:[],metadata:{}}),"speech/recognize":e=>({data:e,artifacts:la(e,`transcript`),warnings:[],metadata:{}})},aa={"text/chat":{description:`LLM text completion via chat API`,paths:[{path:`/data/choices/0/message/content`,description:`Generated text content`},{path:`/data/choices/0/message/role`,description:`Message role (assistant)`},{path:`/data/usage/total_tokens`,description:`Total token usage`}]},"vision/describe":{description:`Multimodal vision understanding (image/video to text)`,paths:[{path:`/data/choices/0/message/content`,description:`Generated description text`},{path:`/data/choices/0/message/role`,description:`Message role (assistant)`},{path:`/data/usage/total_tokens`,description:`Total token usage`}]},"image/generate":{description:`Text-to-image generation`,paths:[{path:`/data/urls`,description:`Array of generated image URLs`},{path:`/data/urls/0`,description:`First generated image URL`},{path:`/data/task_id`,description:`Async task ID (if applicable)`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"image/edit":{description:`Image editing with reference image(s)`,paths:[{path:`/data/urls`,description:`Array of generated image URLs`},{path:`/data/urls/0`,description:`First generated image URL`},{path:`/data/task_id`,description:`Async task ID (if applicable)`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"video/generate":{description:`Video generation (text-to-video or image-to-video)`,paths:[{path:`/data/video_url`,description:`Generated video URL`},{path:`/data/task_id`,description:`Async task ID`},{path:`/artifacts/0/url`,description:`First artifact URL`},{path:`/artifacts/0/path`,description:`First artifact local path (if saved)`}]},"speech/synthesize":{description:`Text-to-speech synthesis`,paths:[{path:`/data/audio_url`,description:`Generated audio URL`},{path:`/data/url_expires_at`,description:`Audio URL expiration time`},{path:`/artifacts/0/url`,description:`First artifact URL`}]},"speech/recognize":{description:`Speech recognition (ASR)`,paths:[{path:`/data/text`,description:`Full transcribed text`},{path:`/data/task_id`,description:`Async task ID`},{path:`/artifacts/0/taskId`,description:`Task ID from artifact`}]}};function oa(e){for(let t of Object.keys(ra))Mi(t,async(e,n)=>await sa(t,e,n),e,aa[t])}async function sa(e,t,n){let r=n.blEnv??Fi();if(n.dryRun)return{metadata:{dryRun:!0,step:e,plannedInput:Pi(e,t,r.settings)},warnings:[{code:`dry_run_skipped`,message:`Step ${e} was not executed in dry-run mode`}]};let i=ra[e];if(!i)throw Error(`No direct API handler registered for step: ${e}`);let a=await i(r,t,n),o=ia[e];return o?o(a):{data:a,warnings:[],metadata:{}}}function ca(e){if(!W(e))return;let t=[],n=G(e.task_id)??G(e.taskId);for(let r of fa(e.urls))t.push({url:r,taskId:n,kind:pa(r)});for(let r of fa(e.saved))t.push({path:r,taskId:n,kind:ma(r)});let r=G(e.video_url)??G(e.videoUrl);r&&t.push({url:r,taskId:n,kind:`video`});let i=G(e.saved);if(i&&t.push({path:i,taskId:n,kind:ma(i)}),Array.isArray(e.videos))for(let n of e.videos){if(!W(n))continue;let e=G(n.task_id)??G(n.taskId),r=G(n.video_url)??G(n.videoUrl),i=G(n.saved);r&&t.push({url:r,taskId:e,kind:`video`}),i&&t.push({path:i,taskId:e,kind:`video`})}let a=Array.isArray(e.task_ids)?e.task_ids.map(G).filter(da):[];for(let e of a)t.push({taskId:e,kind:`task`});return t.length===0&&n&&t.push({taskId:n,kind:`task`}),t.length>0?t:void 0}function la(e,t){if(!W(e))return;let n=[],r=G(e.task_id)??G(e.taskId),i=[G(e.url),G(e.audio_url),G(e.audioUrl),G(e.output_url),G(e.outputUrl)].filter(da);for(let e of i)n.push({url:e,taskId:r,kind:t});let a=[G(e.saved),G(e.path),G(e.output_path),G(e.outputPath)].filter(da);for(let e of a)n.push({path:e,taskId:r,kind:t});return n.length===0&&r&&n.push({taskId:r,kind:`task`}),n.length>0?ua(n):void 0}function ua(e){let t=/* @__PURE__ */ new Set,n=[];for(let r of e){let e=`${r.kind??``}:${r.taskId??``}:${r.url??``}:${r.path??``}`;t.has(e)||(t.add(e),n.push(r))}return n}function da(e){return typeof e==`string`}function G(e){return typeof e==`string`&&e.length>0?e:void 0}function fa(e){return Array.isArray(e)?e.map(G).filter(da):[]}function pa(e){try{return ma(new URL(e).pathname)}catch{return`artifact`}}function ma(e){let t=e.toLowerCase();return t.endsWith(`.mp4`)||t.endsWith(`.mov`)||t.endsWith(`.webm`)?`video`:t.endsWith(`.png`)||t.endsWith(`.jpg`)||t.endsWith(`.jpeg`)||t.endsWith(`.webp`)?`image`:`artifact`}var ha=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var t=class{};e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var n=class extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=n;var r=class extends t{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=r,e.nil=new r(``);function i(e,...t){let n=[e[0]],i=0;for(;i<t.length;)s(n,t[i]),n.push(e[++i]);return new r(n)}e._=i;let a=new r(`+`);function o(e,...t){let n=[p(e[0])],i=0;for(;i<t.length;)n.push(a),s(n,t[i]),n.push(a,p(e[++i]));return c(n),new r(n)}e.str=o;function s(e,t){t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push(d(t))}e.addCodeArg=s;function c(e){let t=1;for(;t<e.length-1;){if(e[t]===a){let n=l(e[t-1],e[t+1]);if(n!==void 0){e.splice(t-1,3,n);continue}e[t++]=`+`}t++}}function l(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof n||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof n))return`"${e}${t.slice(1)}`}function u(e,t){return t.emptyStr()?e:e.emptyStr()?t:o`${e}${t}`}e.strConcat=u;function d(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:p(Array.isArray(e)?e.join(`,`):e)}function f(e){return new r(p(e))}e.stringify=f;function p(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=p;function m(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new r(`.${t}`):i`[${t}]`}e.getProperty=m;function h(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new r(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=h;function g(e){return new r(e.toString())}e.regexpCode=g})),ga=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;let t=ha();var n=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new t.Name(`const`),let:new t.Name(`let`),var:new t.Name(`var`)};var i=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=i;var a=class extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,t._)`.${new t.Name(n)}[${r}]`}};e.ValueScopeName=a;let o=(0,t._)`\n`;e.ValueScope=class extends i{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o:t.nil}}get(){return this._scope}name(e){return new a(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=/* @__PURE__ */ new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,n=>{if(n.scopePath===void 0)throw Error(`CodeGen: name "${n}" has no value`);return(0,t._)`${e}${n.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(i,a,o={},s){let c=t.nil;for(let l in i){let u=i[l];if(!u)continue;let d=o[l]=o[l]||/* @__PURE__ */ new Map;u.forEach(i=>{if(d.has(i))return;d.set(i,r.Started);let o=a(i);if(o){let n=this.opts.es5?e.varKinds.var:e.varKinds.const;c=(0,t._)`${c}${n} ${i} = ${o};${this.opts._n}`}else if(o=s?.(i))c=(0,t._)`${c}${o}${this.opts._n}`;else throw new n(i);d.set(i,r.Completed)})}return c}}})),K=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;let t=ha(),n=ga();var r=ha();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}});var i=ga();Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),e.operators={GT:new t._Code(`>`),GTE:new t._Code(`>=`),LT:new t._Code(`<`),LTE:new t._Code(`<=`),EQ:new t._Code(`===`),NEQ:new t._Code(`!==`),NOT:new t._Code(`!`),OR:new t._Code(`||`),AND:new t._Code(`&&`),ADD:new t._Code(`+`)};var a=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},o=class extends a{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let r=e?n.varKinds.var:this.varKind,i=this.rhs===void 0?``:` = ${this.rhs}`;return`${r} ${this.name}${i};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=O(this.rhs,e,t),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}},s=class extends a{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=O(this.rhs,e,n),this}get names(){return D(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}},c=class extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},u=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},d=class extends a{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},f=class extends a{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=O(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}},p=class extends a{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(k(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>E(e,t.names),{})}},m=class extends p{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},h=class extends p{},g=class extends m{};g.kind=`else`;var _=class e extends m{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let n=this.else;if(n){let e=n.optimizeNodes();n=this.else=Array.isArray(e)?new g(e):e}if(n)return t===!1?n instanceof e?n:n.nodes:this.nodes.length?this:new e(te(t),n instanceof e?[n]:n.nodes);if(t!==!1&&this.nodes.length)return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=O(this.condition,e,t),this}get names(){let e=super.names;return D(e,this.condition),this.else&&E(e,this.else.names),e}};_.kind=`if`;var v=class extends m{};v.kind=`for`;var y=class extends v{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=O(this.iteration,e,t),this}get names(){return E(super.names,this.iteration.names)}},b=class extends v{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?n.varKinds.var:this.varKind,{name:r,from:i,to:a}=this;return`for(${t} ${r}=${i}; ${r}<${a}; ${r}++)`+super.render(e)}get names(){return D(D(super.names,this.from),this.to)}},x=class extends v{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=O(this.iterable,e,t),this}get names(){return E(super.names,this.iterable.names)}},S=class extends m{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};S.kind=`func`;var C=class extends p{render(e){return`return `+super.render(e)}};C.kind=`return`;var w=class extends m{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)==null||e.optimizeNodes(),(t=this.finally)==null||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),(n=this.catch)==null||n.optimizeNames(e,t),(r=this.finally)==null||r.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&E(e,this.catch.names),this.finally&&E(e,this.finally.names),e}},T=class extends m{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};T.kind=`catch`;var ee=class extends m{render(e){return`finally`+super.render(e)}};ee.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
55
+ `:``},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=/* @__PURE__ */ new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new o(e,i,n)),i}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new c(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==t.nil&&this._leafNode(new f(e)),this}object(...e){let n=[`{`];for(let[r,i]of e)n.length>1&&n.push(`,`),n.push(r),(r!==i||this.opts.es5)&&(n.push(`:`),(0,t.addCodeArg)(n,i));return n.push(`}`),new t._Code(n)}if(e,t,n){if(this._blockNode(new _(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new _(e))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(_,g)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new y(e),t)}forRange(e,t,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.let){let o=this._scope.toName(e);return this._for(new b(a,o,t,r),()=>i(o))}forOf(e,r,i,a=n.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=r instanceof t.Name?r:this.var(`_arr`,r);return this.forRange(`_i`,0,(0,t._)`${e}.length`,n=>{this.var(o,(0,t._)`${e}[${n}]`),i(o)})}return this._for(new x(`of`,a,o,r),()=>i(o))}forIn(e,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,t._)`Object.keys(${r})`,i);let o=this._scope.toName(e);return this._for(new x(`in`,a,o,r),()=>i(o))}endFor(){return this._endBlockNode(v)}label(e){return this._leafNode(new l(e))}break(e){return this._leafNode(new u(e))}return(e){let t=new C;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(C)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new w;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new T(e),t(e)}return n&&(this._currNode=r.finally=new ee,this.code(n)),this._endBlockNode(T,ee)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,i){return this._blockNode(new S(e,n,r)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(S)}optimize(e=1){for(;e-->0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof _))throw Error(`CodeGen: "else" without "if"`);return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}};function E(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function D(e,n){return n instanceof t._CodeOrName?E(e,n.names):e}function O(e,n,r){return e instanceof t.Name?i(e):a(e)?new t._Code(e._items.reduce((e,n)=>(n instanceof t.Name&&(n=i(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e),[])):e;function i(e){let t=r[e.str];return t===void 0||n[e.str]!==1?e:(delete n[e.str],t)}function a(e){return e instanceof t._Code&&e._items.some(e=>e instanceof t.Name&&n[e.str]===1&&r[e.str]!==void 0)}}function k(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function te(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,t._)`!${se(e)}`}e.not=te;let ne=oe(e.operators.AND);function re(...e){return e.reduce(ne)}e.and=re;let ie=oe(e.operators.OR);function ae(...e){return e.reduce(ie)}e.or=ae;function oe(e){return(n,r)=>n===t.nil?r:r===t.nil?n:(0,t._)`${se(n)} ${e} ${se(r)}`}function se(e){return e instanceof t.Name?e:(0,t._)`(${e})`}})),q=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;let t=K(),n=ha();function r(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=r;function i(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0||(a(e,t),!o(t,e.self.RULES.all))}e.alwaysValidSchema=i;function a(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||x(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=a;function o(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=o;function s(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=s;function c({topSchemaRef:e,schemaPath:n},r,i,a){if(!a){if(typeof r==`number`||typeof r==`boolean`)return r;if(typeof r==`string`)return(0,t._)`${r}`}return(0,t._)`${e}${n}${(0,t.getProperty)(i)}`}e.schemaRefOrVal=c;function l(e){return f(decodeURIComponent(e))}e.unescapeFragment=l;function u(e){return encodeURIComponent(d(e))}e.escapeFragment=u;function d(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=d;function f(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=f;function p(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=p;function m({mergeNames:e,mergeToName:n,mergeValues:r,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof t.Name?(o instanceof t.Name?e(a,o,s):n(a,o,s),s):o instanceof t.Name?(n(a,s,o),o):r(o,s);return c===t.Name&&!(l instanceof t.Name)?i(a,l):l}}e.mergeEvaluated={props:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>{e.if((0,t._)`${n} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,t._)`${r} || {}`).code((0,t._)`Object.assign(${r}, ${n})`))}),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>{n===!0?e.assign(r,!0):(e.assign(r,(0,t._)`${r} || {}`),g(e,r,n))}),mergeValues:(e,t)=>e===!0||{...e,...t},resultToName:h}),items:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>e.assign(r,(0,t._)`${n} === true ? true : ${r} > ${n} ? ${r} : ${n}`)),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>e.assign(r,n===!0||(0,t._)`${r} > ${n} ? ${r} : ${n}`)),mergeValues:(e,t)=>e===!0||Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function h(e,n){if(n===!0)return e.var(`props`,!0);let r=e.var(`props`,(0,t._)`{}`);return n!==void 0&&g(e,r,n),r}e.evaluatedPropsToName=h;function g(e,n,r){Object.keys(r).forEach(r=>e.assign((0,t._)`${n}${(0,t.getProperty)(r)}`,!0))}e.setEvaluated=g;let _={};function v(e,t){return e.scopeValue(`func`,{ref:t,code:_[t.code]||(_[t.code]=new n._Code(t.code))})}e.useFunc=v;var y;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(y||(e.Type=y={}));function b(e,n,r){if(e instanceof t.Name){let i=n===y.Num;return r?i?(0,t._)`"[" + ${e} + "]"`:(0,t._)`"['" + ${e} + "']"`:i?(0,t._)`"/" + ${e}`:(0,t._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,t.getProperty)(e).toString():`/`+d(e)}e.getErrorPath=b;function x(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=x})),J=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={data:new t.Name(`data`),valCxt:new t.Name(`valCxt`),instancePath:new t.Name(`instancePath`),parentData:new t.Name(`parentData`),parentDataProperty:new t.Name(`parentDataProperty`),rootData:new t.Name(`rootData`),dynamicAnchors:new t.Name(`dynamicAnchors`),vErrors:new t.Name(`vErrors`),errors:new t.Name(`errors`),this:new t.Name(`this`),self:new t.Name(`self`),scope:new t.Name(`scope`),json:new t.Name(`json`),jsonPos:new t.Name(`jsonPos`),jsonLen:new t.Name(`jsonLen`),jsonPart:new t.Name(`jsonPart`)}})),_a=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;let t=K(),n=q(),r=J();e.keywordError={message:({keyword:e})=>(0,t.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?(0,t.str)`"${e}" keyword must be ${n} ($data)`:(0,t.str)`"${e}" keyword is invalid ($data)`};function i(n,r=e.keywordError,i,a){let{it:o}=n,{gen:s,compositeRule:u,allErrors:f}=o,p=d(n,r,i);a??(u||f)?c(s,p):l(o,(0,t._)`[${p}]`)}e.reportError=i;function a(t,n=e.keywordError,i){let{it:a}=t,{gen:o,compositeRule:s,allErrors:u}=a;c(o,d(t,n,i)),s||u||l(a,r.default.vErrors)}e.reportExtraError=a;function o(e,n){e.assign(r.default.errors,n),e.if((0,t._)`${r.default.vErrors} !== null`,()=>e.if(n,()=>e.assign((0,t._)`${r.default.vErrors}.length`,n),()=>e.assign(r.default.vErrors,null)))}e.resetErrorsCount=o;function s({gen:e,keyword:n,schemaValue:i,data:a,errsCount:o,it:s}){
56
56
  /* istanbul ignore if */
57
- if(o===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,o,r.default.errors,o=>{e.const(c,(0,t._)`${r.default.vErrors}[${o}]`),e.if((0,t._)`${c}.instancePath === undefined`,()=>e.assign((0,t._)`${c}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath))),e.assign((0,t._)`${c}.schemaPath`,(0,t.str)`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign((0,t._)`${c}.schema`,i),e.assign((0,t._)`${c}.data`,a))})}e.extendErrors=s;function c(e,n){let i=e.const(`err`,n);e.if((0,t._)`${r.default.vErrors} === null`,()=>e.assign(r.default.vErrors,(0,t._)`[${i}]`),(0,t._)`${r.default.vErrors}.push(${i})`),e.code((0,t._)`${r.default.errors}++`)}function l(e,n){let{gen:r,validateName:i,schemaEnv:a}=e;a.$async?r.throw((0,t._)`new ${e.ValidationError}(${n})`):(r.assign((0,t._)`${i}.errors`,n),r.return(!1))}let u={keyword:new t.Name(`keyword`),schemaPath:new t.Name(`schemaPath`),params:new t.Name(`params`),propertyName:new t.Name(`propertyName`),message:new t.Name(`message`),schema:new t.Name(`schema`),parentSchema:new t.Name(`parentSchema`)};function d(e,n,r){let{createErrors:i}=e.it;return i===!1?(0,t._)`{}`:f(e,n,r)}function f(e,t,n={}){let{gen:r,it:i}=e,a=[p(i,n),m(e,n)];return h(e,t,a),r.object(...a)}function p({errorPath:e},{instancePath:i}){let a=i?(0,t.str)`${e}${(0,n.getErrorPath)(i,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,a)]}function m({keyword:e,it:{errSchemaPath:r}},{schemaPath:i,parentSchema:a}){let o=a?r:(0,t.str)`${r}/${e}`;return i&&(o=(0,t.str)`${o}${(0,n.getErrorPath)(i,n.Type.Str)}`),[u.schemaPath,o]}function h(e,{params:n,message:i},a){let{keyword:o,data:s,schemaValue:c,it:l}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=l;a.push([u.keyword,o],[u.params,typeof n==`function`?n(e):n||(0,t._)`{}`]),d.messages&&a.push([u.message,typeof i==`function`?i(e):i]),d.verbose&&a.push([u.schema,c],[u.parentSchema,(0,t._)`${p}${m}`],[r.default.data,s]),f&&a.push([u.propertyName,f])}})),_a=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;let t=ga(),n=K(),r=J(),i={message:`boolean schema is false`};function a(e){let{gen:t,schema:i,validateName:a}=e;i===!1?s(e,!1):typeof i==`object`&&i.$async===!0?t.return(r.default.data):(t.assign((0,n._)`${a}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=a;function o(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),s(e)):n.var(t,!0)}e.boolOrEmptySchema=o;function s(e,n){let{gen:r,data:a}=e,o={gen:r,keyword:`false schema`,data:a,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,t.reportError)(o,i,void 0,n)}})),va=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getRules=e.isJSONType=void 0;let t=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function n(e){return typeof e==`string`&&t.has(e)}e.isJSONType=n;function r(){let e={number:{type:`number`,rules:[]},string:{type:`string`,rules:[]},array:{type:`array`,rules:[]},object:{type:`object`,rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}e.getRules=r})),ya=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.shouldUseRule=e.shouldUseGroup=e.schemaHasRulesForType=void 0;function t({schema:e,self:t},r){let i=t.RULES.types[r];return i&&i!==!0&&n(e,i)}e.schemaHasRulesForType=t;function n(e,t){return t.rules.some(t=>r(e,t))}e.shouldUseGroup=n;function r(e,t){return e[t.keyword]!==void 0||t.definition.implements?.some(t=>e[t]!==void 0)}e.shouldUseRule=r})),ba=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;let t=va(),n=ya(),r=ga(),i=K(),a=q();var o;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(o||(e.DataType=o={}));function s(e){let t=c(e.type);if(t.includes(`null`)){if(e.nullable===!1)throw Error(`type: null contradicts nullable: false`)}else{if(!t.length&&e.nullable!==void 0)throw Error(`"nullable" cannot be used without "type"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=s;function c(e){let n=Array.isArray(e)?e:e?[e]:[];if(n.every(t.isJSONType))return n;throw Error(`type must be JSONType or JSONType[]: `+n.join(`,`))}e.getJSONTypes=c;function l(e,t){let{gen:r,data:i,opts:a}=e,s=d(t,a.coerceTypes),c=t.length>0&&!(s.length===0&&t.length===1&&(0,n.schemaHasRulesForType)(e,t[0]));if(c){let n=h(t,i,a.strictNumbers,o.Wrong);r.if(n,()=>{s.length?f(e,t,s):_(e)})}return c}e.coerceAndCheckDataType=l;let u=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`null`]);function d(e,t){return t?e.filter(e=>u.has(e)||t===`array`&&e===`array`):[]}function f(e,t,n){let{gen:r,data:a,opts:o}=e,s=r.let(`dataType`,(0,i._)`typeof ${a}`),c=r.let(`coerced`,(0,i._)`undefined`);o.coerceTypes===`array`&&r.if((0,i._)`${s} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>r.assign(a,(0,i._)`${a}[0]`).assign(s,(0,i._)`typeof ${a}`).if(h(t,a,o.strictNumbers),()=>r.assign(c,a))),r.if((0,i._)`${c} !== undefined`);for(let e of n)(u.has(e)||e===`array`&&o.coerceTypes===`array`)&&l(e);r.else(),_(e),r.endIf(),r.if((0,i._)`${c} !== undefined`,()=>{r.assign(a,c),p(e,c)});function l(e){switch(e){case`string`:r.elseIf((0,i._)`${s} == "number" || ${s} == "boolean"`).assign(c,(0,i._)`"" + ${a}`).elseIf((0,i._)`${a} === null`).assign(c,(0,i._)`""`);return;case`number`:r.elseIf((0,i._)`${s} == "boolean" || ${a} === null
57
+ if(o===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,o,r.default.errors,o=>{e.const(c,(0,t._)`${r.default.vErrors}[${o}]`),e.if((0,t._)`${c}.instancePath === undefined`,()=>e.assign((0,t._)`${c}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath))),e.assign((0,t._)`${c}.schemaPath`,(0,t.str)`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign((0,t._)`${c}.schema`,i),e.assign((0,t._)`${c}.data`,a))})}e.extendErrors=s;function c(e,n){let i=e.const(`err`,n);e.if((0,t._)`${r.default.vErrors} === null`,()=>e.assign(r.default.vErrors,(0,t._)`[${i}]`),(0,t._)`${r.default.vErrors}.push(${i})`),e.code((0,t._)`${r.default.errors}++`)}function l(e,n){let{gen:r,validateName:i,schemaEnv:a}=e;a.$async?r.throw((0,t._)`new ${e.ValidationError}(${n})`):(r.assign((0,t._)`${i}.errors`,n),r.return(!1))}let u={keyword:new t.Name(`keyword`),schemaPath:new t.Name(`schemaPath`),params:new t.Name(`params`),propertyName:new t.Name(`propertyName`),message:new t.Name(`message`),schema:new t.Name(`schema`),parentSchema:new t.Name(`parentSchema`)};function d(e,n,r){let{createErrors:i}=e.it;return i===!1?(0,t._)`{}`:f(e,n,r)}function f(e,t,n={}){let{gen:r,it:i}=e,a=[p(i,n),m(e,n)];return h(e,t,a),r.object(...a)}function p({errorPath:e},{instancePath:i}){let a=i?(0,t.str)`${e}${(0,n.getErrorPath)(i,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,a)]}function m({keyword:e,it:{errSchemaPath:r}},{schemaPath:i,parentSchema:a}){let o=a?r:(0,t.str)`${r}/${e}`;return i&&(o=(0,t.str)`${o}${(0,n.getErrorPath)(i,n.Type.Str)}`),[u.schemaPath,o]}function h(e,{params:n,message:i},a){let{keyword:o,data:s,schemaValue:c,it:l}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=l;a.push([u.keyword,o],[u.params,typeof n==`function`?n(e):n||(0,t._)`{}`]),d.messages&&a.push([u.message,typeof i==`function`?i(e):i]),d.verbose&&a.push([u.schema,c],[u.parentSchema,(0,t._)`${p}${m}`],[r.default.data,s]),f&&a.push([u.propertyName,f])}})),va=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;let t=_a(),n=K(),r=J(),i={message:`boolean schema is false`};function a(e){let{gen:t,schema:i,validateName:a}=e;i===!1?s(e,!1):typeof i==`object`&&i.$async===!0?t.return(r.default.data):(t.assign((0,n._)`${a}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=a;function o(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),s(e)):n.var(t,!0)}e.boolOrEmptySchema=o;function s(e,n){let{gen:r,data:a}=e,o={gen:r,keyword:`false schema`,data:a,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,t.reportError)(o,i,void 0,n)}})),ya=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getRules=e.isJSONType=void 0;let t=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function n(e){return typeof e==`string`&&t.has(e)}e.isJSONType=n;function r(){let e={number:{type:`number`,rules:[]},string:{type:`string`,rules:[]},array:{type:`array`,rules:[]},object:{type:`object`,rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}e.getRules=r})),ba=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.shouldUseRule=e.shouldUseGroup=e.schemaHasRulesForType=void 0;function t({schema:e,self:t},r){let i=t.RULES.types[r];return i&&i!==!0&&n(e,i)}e.schemaHasRulesForType=t;function n(e,t){return t.rules.some(t=>r(e,t))}e.shouldUseGroup=n;function r(e,t){return e[t.keyword]!==void 0||t.definition.implements?.some(t=>e[t]!==void 0)}e.shouldUseRule=r})),xa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;let t=ya(),n=ba(),r=_a(),i=K(),a=q();var o;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(o||(e.DataType=o={}));function s(e){let t=c(e.type);if(t.includes(`null`)){if(e.nullable===!1)throw Error(`type: null contradicts nullable: false`)}else{if(!t.length&&e.nullable!==void 0)throw Error(`"nullable" cannot be used without "type"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=s;function c(e){let n=Array.isArray(e)?e:e?[e]:[];if(n.every(t.isJSONType))return n;throw Error(`type must be JSONType or JSONType[]: `+n.join(`,`))}e.getJSONTypes=c;function l(e,t){let{gen:r,data:i,opts:a}=e,s=d(t,a.coerceTypes),c=t.length>0&&!(s.length===0&&t.length===1&&(0,n.schemaHasRulesForType)(e,t[0]));if(c){let n=h(t,i,a.strictNumbers,o.Wrong);r.if(n,()=>{s.length?f(e,t,s):_(e)})}return c}e.coerceAndCheckDataType=l;let u=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`null`]);function d(e,t){return t?e.filter(e=>u.has(e)||t===`array`&&e===`array`):[]}function f(e,t,n){let{gen:r,data:a,opts:o}=e,s=r.let(`dataType`,(0,i._)`typeof ${a}`),c=r.let(`coerced`,(0,i._)`undefined`);o.coerceTypes===`array`&&r.if((0,i._)`${s} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>r.assign(a,(0,i._)`${a}[0]`).assign(s,(0,i._)`typeof ${a}`).if(h(t,a,o.strictNumbers),()=>r.assign(c,a))),r.if((0,i._)`${c} !== undefined`);for(let e of n)(u.has(e)||e===`array`&&o.coerceTypes===`array`)&&l(e);r.else(),_(e),r.endIf(),r.if((0,i._)`${c} !== undefined`,()=>{r.assign(a,c),p(e,c)});function l(e){switch(e){case`string`:r.elseIf((0,i._)`${s} == "number" || ${s} == "boolean"`).assign(c,(0,i._)`"" + ${a}`).elseIf((0,i._)`${a} === null`).assign(c,(0,i._)`""`);return;case`number`:r.elseIf((0,i._)`${s} == "boolean" || ${a} === null
58
58
  || (${s} == "string" && ${a} && ${a} == +${a})`).assign(c,(0,i._)`+${a}`);return;case`integer`:r.elseIf((0,i._)`${s} === "boolean" || ${a} === null
59
59
  || (${s} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(c,(0,i._)`+${a}`);return;case`boolean`:r.elseIf((0,i._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(c,!1).elseIf((0,i._)`${a} === "true" || ${a} === 1`).assign(c,!0);return;case`null`:r.elseIf((0,i._)`${a} === "" || ${a} === 0 || ${a} === false`),r.assign(c,null);return;case`array`:r.elseIf((0,i._)`${s} === "string" || ${s} === "number"
60
- || ${s} === "boolean" || ${a} === null`).assign(c,(0,i._)`[${a}]`)}}}function p({gen:e,parentData:t,parentDataProperty:n},r){e.if((0,i._)`${t} !== undefined`,()=>e.assign((0,i._)`${t}[${n}]`,r))}function m(e,t,n,r=o.Correct){let a=r===o.Correct?i.operators.EQ:i.operators.NEQ,s;switch(e){case`null`:return(0,i._)`${t} ${a} null`;case`array`:s=(0,i._)`Array.isArray(${t})`;break;case`object`:s=(0,i._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case`integer`:s=c((0,i._)`!(${t} % 1) && !isNaN(${t})`);break;case`number`:s=c();break;default:return(0,i._)`typeof ${t} ${a} ${e}`}return r===o.Correct?s:(0,i.not)(s);function c(e=i.nil){return(0,i.and)((0,i._)`typeof ${t} == "number"`,e,n?(0,i._)`isFinite(${t})`:i.nil)}}e.checkDataType=m;function h(e,t,n,r){if(e.length===1)return m(e[0],t,n,r);let o,s=(0,a.toHash)(e);if(s.array&&s.object){let e=(0,i._)`typeof ${t} != "object"`;o=s.null?e:(0,i._)`!${t} || ${e}`,delete s.null,delete s.array,delete s.object}else o=i.nil;s.number&&delete s.integer;for(let e in s)o=(0,i.and)(o,m(e,t,n,r));return o}e.checkDataTypes=h;let g={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e==`string`?(0,i._)`{type: ${e}}`:(0,i._)`{type: ${t}}`};function _(e){let t=v(e);(0,r.reportError)(t,g)}e.reportTypeError=_;function v(e){let{gen:t,data:n,schema:r}=e,i=(0,a.schemaRefOrVal)(e,r,`type`);return{gen:t,keyword:`type`,data:n,schema:r.type,schemaCode:i,schemaValue:i,parentSchema:r,params:{},it:e}}})),xa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assignDefaults=void 0;let t=K(),n=q();function r(e,t){let{properties:n,items:r}=e.schema;if(t===`object`&&n)for(let t in n)i(e,t,n[t].default);else t===`array`&&Array.isArray(r)&&r.forEach((t,n)=>i(e,n,t.default))}e.assignDefaults=r;function i(e,r,i){let{gen:a,compositeRule:o,data:s,opts:c}=e;if(i===void 0)return;let l=(0,t._)`${s}${(0,t.getProperty)(r)}`;if(o){(0,n.checkStrictMode)(e,`default is ignored for: ${l}`);return}let u=(0,t._)`${l} === undefined`;c.useDefaults===`empty`&&(u=(0,t._)`${u} || ${l} === null || ${l} === ""`),a.if(u,(0,t._)`${l} = ${(0,t.stringify)(i)}`)}})),Y=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateUnion=e.validateArray=e.usePattern=e.callValidateCode=e.schemaProperties=e.allSchemaProperties=e.noPropertyInData=e.propertyInData=e.isOwnProperty=e.hasPropFunc=e.reportMissingProp=e.checkMissingProp=e.checkReportMissingProp=void 0;let t=K(),n=q(),r=J(),i=q();function a(e,n){let{gen:r,data:i,it:a}=e;r.if(d(r,i,n,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,t._)`${n}`},!0),e.error()})}e.checkReportMissingProp=a;function o({gen:e,data:n,it:{opts:r}},i,a){return(0,t.or)(...i.map(i=>(0,t.and)(d(e,n,i,r.ownProperties),(0,t._)`${a} = ${i}`)))}e.checkMissingProp=o;function s(e,t){e.setParams({missingProperty:t},!0),e.error()}e.reportMissingProp=s;function c(e){return e.scopeValue(`func`,{ref:Object.prototype.hasOwnProperty,code:(0,t._)`Object.prototype.hasOwnProperty`})}e.hasPropFunc=c;function l(e,n,r){return(0,t._)`${c(e)}.call(${n}, ${r})`}e.isOwnProperty=l;function u(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} !== undefined`;return i?(0,t._)`${a} && ${l(e,n,r)}`:a}e.propertyInData=u;function d(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} === undefined`;return i?(0,t.or)(a,(0,t.not)(l(e,n,r))):a}e.noPropertyInData=d;function f(e){return e?Object.keys(e).filter(e=>e!==`__proto__`):[]}e.allSchemaProperties=f;function p(e,t){return f(t).filter(r=>!(0,n.alwaysValidSchema)(e,t[r]))}e.schemaProperties=p;function m({schemaCode:e,data:n,it:{gen:i,topSchemaRef:a,schemaPath:o,errorPath:s},it:c},l,u,d){let f=d?(0,t._)`${e}, ${n}, ${a}${o}`:n,p=[[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,s)],[r.default.parentData,c.parentData],[r.default.parentDataProperty,c.parentDataProperty],[r.default.rootData,r.default.rootData]];c.opts.dynamicRef&&p.push([r.default.dynamicAnchors,r.default.dynamicAnchors]);let m=(0,t._)`${f}, ${i.object(...p)}`;return u===t.nil?(0,t._)`${l}(${m})`:(0,t._)`${l}.call(${u}, ${m})`}e.callValidateCode=m;let h=(0,t._)`new RegExp`;function g({gen:e,it:{opts:n}},r){let a=n.unicodeRegExp?`u`:``,{regExp:o}=n.code,s=o(r,a);return e.scopeValue(`pattern`,{key:s.toString(),ref:s,code:(0,t._)`${o.code===`new RegExp`?h:(0,i.useFunc)(e,o)}(${r}, ${a})`})}e.usePattern=g;function _(e){let{gen:r,data:i,keyword:a,it:o}=e,s=r.name(`valid`);if(o.allErrors){let e=r.let(`valid`,!0);return c(()=>r.assign(e,!1)),e}return r.var(s,!0),c(()=>r.break()),s;function c(o){let c=r.const(`len`,(0,t._)`${i}.length`);r.forRange(`i`,0,c,i=>{e.subschema({keyword:a,dataProp:i,dataPropType:n.Type.Num},s),r.if((0,t.not)(s),o)})}}e.validateArray=_;function v(e){let{gen:r,schema:i,keyword:a,it:o}=e;
60
+ || ${s} === "boolean" || ${a} === null`).assign(c,(0,i._)`[${a}]`)}}}function p({gen:e,parentData:t,parentDataProperty:n},r){e.if((0,i._)`${t} !== undefined`,()=>e.assign((0,i._)`${t}[${n}]`,r))}function m(e,t,n,r=o.Correct){let a=r===o.Correct?i.operators.EQ:i.operators.NEQ,s;switch(e){case`null`:return(0,i._)`${t} ${a} null`;case`array`:s=(0,i._)`Array.isArray(${t})`;break;case`object`:s=(0,i._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case`integer`:s=c((0,i._)`!(${t} % 1) && !isNaN(${t})`);break;case`number`:s=c();break;default:return(0,i._)`typeof ${t} ${a} ${e}`}return r===o.Correct?s:(0,i.not)(s);function c(e=i.nil){return(0,i.and)((0,i._)`typeof ${t} == "number"`,e,n?(0,i._)`isFinite(${t})`:i.nil)}}e.checkDataType=m;function h(e,t,n,r){if(e.length===1)return m(e[0],t,n,r);let o,s=(0,a.toHash)(e);if(s.array&&s.object){let e=(0,i._)`typeof ${t} != "object"`;o=s.null?e:(0,i._)`!${t} || ${e}`,delete s.null,delete s.array,delete s.object}else o=i.nil;s.number&&delete s.integer;for(let e in s)o=(0,i.and)(o,m(e,t,n,r));return o}e.checkDataTypes=h;let g={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e==`string`?(0,i._)`{type: ${e}}`:(0,i._)`{type: ${t}}`};function _(e){let t=v(e);(0,r.reportError)(t,g)}e.reportTypeError=_;function v(e){let{gen:t,data:n,schema:r}=e,i=(0,a.schemaRefOrVal)(e,r,`type`);return{gen:t,keyword:`type`,data:n,schema:r.type,schemaCode:i,schemaValue:i,parentSchema:r,params:{},it:e}}})),Sa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assignDefaults=void 0;let t=K(),n=q();function r(e,t){let{properties:n,items:r}=e.schema;if(t===`object`&&n)for(let t in n)i(e,t,n[t].default);else t===`array`&&Array.isArray(r)&&r.forEach((t,n)=>i(e,n,t.default))}e.assignDefaults=r;function i(e,r,i){let{gen:a,compositeRule:o,data:s,opts:c}=e;if(i===void 0)return;let l=(0,t._)`${s}${(0,t.getProperty)(r)}`;if(o){(0,n.checkStrictMode)(e,`default is ignored for: ${l}`);return}let u=(0,t._)`${l} === undefined`;c.useDefaults===`empty`&&(u=(0,t._)`${u} || ${l} === null || ${l} === ""`),a.if(u,(0,t._)`${l} = ${(0,t.stringify)(i)}`)}})),Y=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateUnion=e.validateArray=e.usePattern=e.callValidateCode=e.schemaProperties=e.allSchemaProperties=e.noPropertyInData=e.propertyInData=e.isOwnProperty=e.hasPropFunc=e.reportMissingProp=e.checkMissingProp=e.checkReportMissingProp=void 0;let t=K(),n=q(),r=J(),i=q();function a(e,n){let{gen:r,data:i,it:a}=e;r.if(d(r,i,n,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,t._)`${n}`},!0),e.error()})}e.checkReportMissingProp=a;function o({gen:e,data:n,it:{opts:r}},i,a){return(0,t.or)(...i.map(i=>(0,t.and)(d(e,n,i,r.ownProperties),(0,t._)`${a} = ${i}`)))}e.checkMissingProp=o;function s(e,t){e.setParams({missingProperty:t},!0),e.error()}e.reportMissingProp=s;function c(e){return e.scopeValue(`func`,{ref:Object.prototype.hasOwnProperty,code:(0,t._)`Object.prototype.hasOwnProperty`})}e.hasPropFunc=c;function l(e,n,r){return(0,t._)`${c(e)}.call(${n}, ${r})`}e.isOwnProperty=l;function u(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} !== undefined`;return i?(0,t._)`${a} && ${l(e,n,r)}`:a}e.propertyInData=u;function d(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} === undefined`;return i?(0,t.or)(a,(0,t.not)(l(e,n,r))):a}e.noPropertyInData=d;function f(e){return e?Object.keys(e).filter(e=>e!==`__proto__`):[]}e.allSchemaProperties=f;function p(e,t){return f(t).filter(r=>!(0,n.alwaysValidSchema)(e,t[r]))}e.schemaProperties=p;function m({schemaCode:e,data:n,it:{gen:i,topSchemaRef:a,schemaPath:o,errorPath:s},it:c},l,u,d){let f=d?(0,t._)`${e}, ${n}, ${a}${o}`:n,p=[[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,s)],[r.default.parentData,c.parentData],[r.default.parentDataProperty,c.parentDataProperty],[r.default.rootData,r.default.rootData]];c.opts.dynamicRef&&p.push([r.default.dynamicAnchors,r.default.dynamicAnchors]);let m=(0,t._)`${f}, ${i.object(...p)}`;return u===t.nil?(0,t._)`${l}(${m})`:(0,t._)`${l}.call(${u}, ${m})`}e.callValidateCode=m;let h=(0,t._)`new RegExp`;function g({gen:e,it:{opts:n}},r){let a=n.unicodeRegExp?`u`:``,{regExp:o}=n.code,s=o(r,a);return e.scopeValue(`pattern`,{key:s.toString(),ref:s,code:(0,t._)`${o.code===`new RegExp`?h:(0,i.useFunc)(e,o)}(${r}, ${a})`})}e.usePattern=g;function _(e){let{gen:r,data:i,keyword:a,it:o}=e,s=r.name(`valid`);if(o.allErrors){let e=r.let(`valid`,!0);return c(()=>r.assign(e,!1)),e}return r.var(s,!0),c(()=>r.break()),s;function c(o){let c=r.const(`len`,(0,t._)`${i}.length`);r.forRange(`i`,0,c,i=>{e.subschema({keyword:a,dataProp:i,dataPropType:n.Type.Num},s),r.if((0,t.not)(s),o)})}}e.validateArray=_;function v(e){let{gen:r,schema:i,keyword:a,it:o}=e;
61
61
  /* istanbul ignore if */
62
- if(!Array.isArray(i))throw Error(`ajv implementation error`);if(i.some(e=>(0,n.alwaysValidSchema)(o,e))&&!o.opts.unevaluated)return;let s=r.let(`valid`,!1),c=r.name(`_valid`);r.block(()=>i.forEach((n,i)=>{let o=e.subschema({keyword:a,schemaProp:i,compositeRule:!0},c);r.assign(s,(0,t._)`${s} || ${c}`),e.mergeValidEvaluated(o,c)||r.if((0,t.not)(s))})),e.result(s,()=>e.reset(),()=>e.error(!0))}e.validateUnion=v})),Sa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateKeywordUsage=e.validSchemaType=e.funcKeywordCode=e.macroKeywordCode=void 0;let t=K(),n=J(),r=Y(),i=ga();function a(e,n){let{gen:r,keyword:i,schema:a,parentSchema:o,it:s}=e,c=n.macro.call(s.self,a,o,s),l=u(r,i,c);s.opts.validateSchema!==!1&&s.self.validateSchema(c,!0);let d=r.name(`valid`);e.subschema({schema:c,schemaPath:t.nil,errSchemaPath:`${s.errSchemaPath}/${i}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}e.macroKeywordCode=a;function o(e,i){let{gen:a,keyword:o,schema:d,parentSchema:f,$data:p,it:m}=e;l(m,i);let h=u(a,o,!p&&i.compile?i.compile.call(m.self,d,f,m):i.validate),g=a.let(`valid`);e.block$data(g,_),e.ok(i.valid??g);function _(){if(i.errors===!1)b(),i.modifying&&s(e),x(()=>e.error());else{let t=i.async?v():y();i.modifying&&s(e),x(()=>c(e,t))}}function v(){let e=a.let(`ruleErrs`,null);return a.try(()=>b((0,t._)`await `),n=>a.assign(g,!1).if((0,t._)`${n} instanceof ${m.ValidationError}`,()=>a.assign(e,(0,t._)`${n}.errors`),()=>a.throw(n))),e}function y(){let e=(0,t._)`${h}.errors`;return a.assign(e,null),b(t.nil),e}function b(o=i.async?(0,t._)`await `:t.nil){let s=m.opts.passContext?n.default.this:n.default.self,c=!(`compile`in i&&!p||i.schema===!1);a.assign(g,(0,t._)`${o}${(0,r.callValidateCode)(e,h,s,c)}`,i.modifying)}function x(e){a.if((0,t.not)(i.valid??g),e)}}e.funcKeywordCode=o;function s(e){let{gen:n,data:r,it:i}=e;n.if(i.parentData,()=>n.assign(r,(0,t._)`${i.parentData}[${i.parentDataProperty}]`))}function c(e,r){let{gen:a}=e;a.if((0,t._)`Array.isArray(${r})`,()=>{a.assign(n.default.vErrors,(0,t._)`${n.default.vErrors} === null ? ${r} : ${n.default.vErrors}.concat(${r})`).assign(n.default.errors,(0,t._)`${n.default.vErrors}.length`),(0,i.extendErrors)(e)},()=>e.error())}function l({schemaEnv:e},t){if(t.async&&!e.$async)throw Error(`async keyword in sync schema`)}function u(e,n,r){if(r===void 0)throw Error(`keyword "${n}" failed to compile`);return e.scopeValue(`keyword`,typeof r==`function`?{ref:r}:{ref:r,code:(0,t.stringify)(r)})}function d(e,t,n=!1){return!t.length||t.some(t=>t===`array`?Array.isArray(e):t===`object`?e&&typeof e==`object`&&!Array.isArray(e):typeof e==t||n&&e===void 0)}e.validSchemaType=d;function f({schema:e,opts:t,self:n,errSchemaPath:r},i,a){
62
+ if(!Array.isArray(i))throw Error(`ajv implementation error`);if(i.some(e=>(0,n.alwaysValidSchema)(o,e))&&!o.opts.unevaluated)return;let s=r.let(`valid`,!1),c=r.name(`_valid`);r.block(()=>i.forEach((n,i)=>{let o=e.subschema({keyword:a,schemaProp:i,compositeRule:!0},c);r.assign(s,(0,t._)`${s} || ${c}`),e.mergeValidEvaluated(o,c)||r.if((0,t.not)(s))})),e.result(s,()=>e.reset(),()=>e.error(!0))}e.validateUnion=v})),Ca=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateKeywordUsage=e.validSchemaType=e.funcKeywordCode=e.macroKeywordCode=void 0;let t=K(),n=J(),r=Y(),i=_a();function a(e,n){let{gen:r,keyword:i,schema:a,parentSchema:o,it:s}=e,c=n.macro.call(s.self,a,o,s),l=u(r,i,c);s.opts.validateSchema!==!1&&s.self.validateSchema(c,!0);let d=r.name(`valid`);e.subschema({schema:c,schemaPath:t.nil,errSchemaPath:`${s.errSchemaPath}/${i}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}e.macroKeywordCode=a;function o(e,i){let{gen:a,keyword:o,schema:d,parentSchema:f,$data:p,it:m}=e;l(m,i);let h=u(a,o,!p&&i.compile?i.compile.call(m.self,d,f,m):i.validate),g=a.let(`valid`);e.block$data(g,_),e.ok(i.valid??g);function _(){if(i.errors===!1)b(),i.modifying&&s(e),x(()=>e.error());else{let t=i.async?v():y();i.modifying&&s(e),x(()=>c(e,t))}}function v(){let e=a.let(`ruleErrs`,null);return a.try(()=>b((0,t._)`await `),n=>a.assign(g,!1).if((0,t._)`${n} instanceof ${m.ValidationError}`,()=>a.assign(e,(0,t._)`${n}.errors`),()=>a.throw(n))),e}function y(){let e=(0,t._)`${h}.errors`;return a.assign(e,null),b(t.nil),e}function b(o=i.async?(0,t._)`await `:t.nil){let s=m.opts.passContext?n.default.this:n.default.self,c=!(`compile`in i&&!p||i.schema===!1);a.assign(g,(0,t._)`${o}${(0,r.callValidateCode)(e,h,s,c)}`,i.modifying)}function x(e){a.if((0,t.not)(i.valid??g),e)}}e.funcKeywordCode=o;function s(e){let{gen:n,data:r,it:i}=e;n.if(i.parentData,()=>n.assign(r,(0,t._)`${i.parentData}[${i.parentDataProperty}]`))}function c(e,r){let{gen:a}=e;a.if((0,t._)`Array.isArray(${r})`,()=>{a.assign(n.default.vErrors,(0,t._)`${n.default.vErrors} === null ? ${r} : ${n.default.vErrors}.concat(${r})`).assign(n.default.errors,(0,t._)`${n.default.vErrors}.length`),(0,i.extendErrors)(e)},()=>e.error())}function l({schemaEnv:e},t){if(t.async&&!e.$async)throw Error(`async keyword in sync schema`)}function u(e,n,r){if(r===void 0)throw Error(`keyword "${n}" failed to compile`);return e.scopeValue(`keyword`,typeof r==`function`?{ref:r}:{ref:r,code:(0,t.stringify)(r)})}function d(e,t,n=!1){return!t.length||t.some(t=>t===`array`?Array.isArray(e):t===`object`?e&&typeof e==`object`&&!Array.isArray(e):typeof e==t||n&&e===void 0)}e.validSchemaType=d;function f({schema:e,opts:t,self:n,errSchemaPath:r},i,a){
63
63
  /* istanbul ignore if */
64
- if(Array.isArray(i.keyword)?!i.keyword.includes(a):i.keyword!==a)throw Error(`ajv implementation error`);let o=i.dependencies;if(o?.some(t=>!Object.prototype.hasOwnProperty.call(e,t)))throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`);if(i.validateSchema&&!i.validateSchema(e[a])){let e=`keyword "${a}" value is invalid at path "${r}": `+n.errorsText(i.validateSchema.errors);if(t.validateSchema===`log`)n.logger.error(e);else throw Error(e)}}e.validateKeywordUsage=f})),Ca=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendSubschemaMode=e.extendSubschemaData=e.getSubschema=void 0;let t=K(),n=q();function r(e,{keyword:r,schemaProp:i,schema:a,schemaPath:o,errSchemaPath:s,topSchemaRef:c}){if(r!==void 0&&a!==void 0)throw Error(`both "keyword" and "schema" passed, only one allowed`);if(r!==void 0){let a=e.schema[r];return i===void 0?{schema:a,schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${r}`}:{schema:a[i],schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}${(0,t.getProperty)(i)}`,errSchemaPath:`${e.errSchemaPath}/${r}/${(0,n.escapeFragment)(i)}`}}if(a!==void 0){if(o===void 0||s===void 0||c===void 0)throw Error(`"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`);return{schema:a,schemaPath:o,topSchemaRef:c,errSchemaPath:s}}throw Error(`either "keyword" or "schema" must be passed`)}e.getSubschema=r;function i(e,r,{dataProp:i,dataPropType:a,data:o,dataTypes:s,propertyName:c}){if(o!==void 0&&i!==void 0)throw Error(`both "data" and "dataProp" passed, only one allowed`);let{gen:l}=r;if(i!==void 0){let{errorPath:o,dataPathArr:s,opts:c}=r;u(l.let(`data`,(0,t._)`${r.data}${(0,t.getProperty)(i)}`,!0)),e.errorPath=(0,t.str)`${o}${(0,n.getErrorPath)(i,a,c.jsPropertySyntax)}`,e.parentDataProperty=(0,t._)`${i}`,e.dataPathArr=[...s,e.parentDataProperty]}o!==void 0&&(u(o instanceof t.Name?o:l.let(`data`,o,!0)),c!==void 0&&(e.propertyName=c)),s&&(e.dataTypes=s);function u(t){e.data=t,e.dataLevel=r.dataLevel+1,e.dataTypes=[],r.definedProperties=/* @__PURE__ */ new Set,e.parentData=r.data,e.dataNames=[...r.dataNames,t]}}e.extendSubschemaData=i;function a(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:i,allErrors:a}){r!==void 0&&(e.compositeRule=r),i!==void 0&&(e.createErrors=i),a!==void 0&&(e.allErrors=a),e.jtdDiscriminator=t,e.jtdMetadata=n}e.extendSubschemaMode=a})),wa=/* @__PURE__ */ N(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}})),Ta=/* @__PURE__ */ N(((e,t)=>{var n=t.exports=function(e,t,n){typeof t==`function`&&(n=t,t={}),n=t.cb||n;var i=typeof n==`function`?n:n.pre||function(){},a=n.post||function(){};r(t,i,a,e,``,e)};n.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},n.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},n.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},n.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function r(e,t,a,o,s,c,l,u,d,f){if(o&&typeof o==`object`&&!Array.isArray(o)){for(var p in t(o,s,c,l,u,d,f),o){var m=o[p];if(Array.isArray(m)){if(p in n.arrayKeywords)for(var h=0;h<m.length;h++)r(e,t,a,m[h],s+`/`+p+`/`+h,c,s,p,o,h)}else if(p in n.propsKeywords){if(m&&typeof m==`object`)for(var g in m)r(e,t,a,m[g],s+`/`+p+`/`+i(g),c,s,p,o,g)}else(p in n.keywords||e.allKeys&&!(p in n.skipKeywords))&&r(e,t,a,m,s+`/`+p,c,s,p,o)}a(o,s,c,l,u,d,f)}}function i(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}})),Ea=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getSchemaRefs=e.resolveUrl=e.normalizeId=e._getFullPath=e.getFullPath=e.inlineRef=void 0;let t=q(),n=wa(),r=Ta(),i=/* @__PURE__ */ new Set([`type`,`format`,`pattern`,`maxLength`,`minLength`,`maxProperties`,`minProperties`,`maxItems`,`minItems`,`maximum`,`minimum`,`uniqueItems`,`multipleOf`,`required`,`enum`,`const`]);function a(e,t=!0){return typeof e==`boolean`?!0:t===!0?!s(e):t?c(e)<=t:!1}e.inlineRef=a;let o=/* @__PURE__ */ new Set([`$ref`,`$recursiveRef`,`$recursiveAnchor`,`$dynamicRef`,`$dynamicAnchor`]);function s(e){for(let t in e){if(o.has(t))return!0;let n=e[t];if(Array.isArray(n)&&n.some(s)||typeof n==`object`&&s(n))return!0}return!1}function c(e){let n=0;for(let r in e)if(r===`$ref`||(n++,!i.has(r)&&(typeof e[r]==`object`&&(0,t.eachItem)(e[r],e=>n+=c(e)),n===1/0)))return 1/0;return n}function l(e,t=``,n){return n!==!1&&(t=f(t)),u(e,e.parse(t))}e.getFullPath=l;function u(e,t){return e.serialize(t).split(`#`)[0]+`#`}e._getFullPath=u;let d=/#\/?$/;function f(e){return e?e.replace(d,``):``}e.normalizeId=f;function p(e,t,n){return n=f(n),e.resolve(t,n)}e.resolveUrl=p;let m=/^[a-z_][-a-z0-9._]*$/i;function h(e,t){if(typeof e==`boolean`)return{};let{schemaId:i,uriResolver:a}=this.opts,o=f(e[i]||t),s={"":o},c=l(a,o,!1),u={},d=/* @__PURE__ */ new Set;return r(e,{allKeys:!0},(e,t,n,r)=>{if(r===void 0)return;let a=c+t,o=s[r];typeof e[i]==`string`&&(o=l.call(this,e[i])),g.call(this,e.$anchor),g.call(this,e.$dynamicAnchor),s[t]=o;function l(t){let n=this.opts.uriResolver.resolve;if(t=f(o?n(o,t):t),d.has(t))throw h(t);d.add(t);let r=this.refs[t];return typeof r==`string`&&(r=this.refs[r]),typeof r==`object`?p(e,r.schema,t):t!==f(a)&&(t[0]===`#`?(p(e,u[t],t),u[t]=e):this.refs[t]=a),t}function g(e){if(typeof e==`string`){if(!m.test(e))throw Error(`invalid anchor "${e}"`);l.call(this,`#${e}`)}}}),u;function p(e,t,r){if(t!==void 0&&!n(e,t))throw h(r)}function h(e){return/* @__PURE__ */ Error(`reference "${e}" resolves to more than one schema`)}}e.getSchemaRefs=h})),Da=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getData=e.KeywordCxt=e.validateFunctionCode=void 0;let t=_a(),n=ba(),r=ya(),i=ba(),a=xa(),o=Sa(),s=Ca(),c=K(),l=J(),u=Ea(),d=q(),f=ga();function p(e){if(S(e)&&(w(e),x(e))){_(e);return}m(e,()=>(0,t.topBoolOrEmptySchema)(e))}e.validateFunctionCode=p;function m({gen:e,validateName:t,schema:n,schemaEnv:r,opts:i},a){i.code.es5?e.func(t,(0,c._)`${l.default.data}, ${l.default.valCxt}`,r.$async,()=>{e.code((0,c._)`"use strict"; ${y(n,i)}`),g(e,i),e.code(a)}):e.func(t,(0,c._)`${l.default.data}, ${h(i)}`,r.$async,()=>e.code(y(n,i)).code(a))}function h(e){return(0,c._)`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${e.dynamicRef?(0,c._)`, ${l.default.dynamicAnchors}={}`:c.nil}}={}`}function g(e,t){e.if(l.default.valCxt,()=>{e.var(l.default.instancePath,(0,c._)`${l.default.valCxt}.${l.default.instancePath}`),e.var(l.default.parentData,(0,c._)`${l.default.valCxt}.${l.default.parentData}`),e.var(l.default.parentDataProperty,(0,c._)`${l.default.valCxt}.${l.default.parentDataProperty}`),e.var(l.default.rootData,(0,c._)`${l.default.valCxt}.${l.default.rootData}`),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{e.var(l.default.instancePath,(0,c._)`""`),e.var(l.default.parentData,(0,c._)`undefined`),e.var(l.default.parentDataProperty,(0,c._)`undefined`),e.var(l.default.rootData,l.default.data),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`{}`)})}function _(e){let{schema:t,opts:n,gen:r}=e;m(e,()=>{n.$comment&&t.$comment&&O(e),E(e),r.let(l.default.vErrors,null),r.let(l.default.errors,0),n.unevaluated&&v(e),T(e),ne(e)})}function v(e){let{gen:t,validateName:n}=e;e.evaluated=t.const(`evaluated`,(0,c._)`${n}.evaluated`),t.if((0,c._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,c._)`${e.evaluated}.props`,(0,c._)`undefined`)),t.if((0,c._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,c._)`${e.evaluated}.items`,(0,c._)`undefined`))}function y(e,t){let n=typeof e==`object`&&e[t.schemaId];return n&&(t.code.source||t.code.process)?(0,c._)`/*# sourceURL=${n} */`:c.nil}function b(e,n){if(S(e)&&(w(e),x(e))){C(e,n);return}(0,t.boolOrEmptySchema)(e,n)}function x({schema:e,self:t}){if(typeof e==`boolean`)return!e;for(let n in e)if(t.RULES.all[n])return!0;return!1}function S(e){return typeof e.schema!=`boolean`}function C(e,t){let{schema:n,gen:r,opts:i}=e;i.$comment&&n.$comment&&O(e),te(e),D(e);let a=r.const(`_errs`,l.default.errors);T(e,a),r.var(t,(0,c._)`${a} === ${l.default.errors}`)}function w(e){(0,d.checkUnknownRules)(e),ee(e)}function T(e,t){if(e.opts.jtd)return ie(e,[],!1,t);let r=(0,n.getSchemaTypes)(e.schema);ie(e,r,!(0,n.coerceAndCheckDataType)(e,r),t)}function ee(e){let{schema:t,errSchemaPath:n,opts:r,self:i}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function E(e){let{schema:t,opts:n}=e;t.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,d.checkStrictMode)(e,`default is ignored in the schema root`)}function te(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,u.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function D(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error(`async schema in sync schema`)}function O({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:i}){let a=n.$comment;if(i.$comment===!0)e.code((0,c._)`${l.default.self}.logger.log(${a})`);else if(typeof i.$comment==`function`){let n=(0,c.str)`${r}/$comment`,i=e.scopeValue(`root`,{ref:t.root});e.code((0,c._)`${l.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`)}}function ne(e){let{gen:t,schemaEnv:n,validateName:r,ValidationError:i,opts:a}=e;n.$async?t.if((0,c._)`${l.default.errors} === 0`,()=>t.return(l.default.data),()=>t.throw((0,c._)`new ${i}(${l.default.vErrors})`)):(t.assign((0,c._)`${r}.errors`,l.default.vErrors),a.unevaluated&&re(e),t.return((0,c._)`${l.default.errors} === 0`))}function re({gen:e,evaluated:t,props:n,items:r}){n instanceof c.Name&&e.assign((0,c._)`${t}.props`,n),r instanceof c.Name&&e.assign((0,c._)`${t}.items`,r)}function ie(e,t,n,a){let{gen:o,schema:s,data:u,allErrors:f,opts:p,self:m}=e,{RULES:h}=m;if(s.$ref&&(p.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(s,h))){o.block(()=>he(e,`$ref`,h.all.$ref.definition));return}p.jtd||oe(e,t),o.block(()=>{for(let e of h.rules)g(e);g(h.post)});function g(d){(0,r.shouldUseGroup)(s,d)&&(d.type?(o.if((0,i.checkDataType)(d.type,u,p.strictNumbers)),ae(e,d),t.length===1&&t[0]===d.type&&n&&(o.else(),(0,i.reportTypeError)(e)),o.endIf()):ae(e,d),f||o.if((0,c._)`${l.default.errors} === ${a||0}`))}}function ae(e,t){let{gen:n,schema:i,opts:{useDefaults:o}}=e;o&&(0,a.assignDefaults)(e,t.type),n.block(()=>{for(let n of t.rules)(0,r.shouldUseRule)(i,n)&&he(e,n.keyword,n.definition,t.type)})}function oe(e,t){!e.schemaEnv.meta&&e.opts.strictTypes&&(se(e,t),e.opts.allowUnionTypes||ce(e,t),le(e,e.dataTypes))}function se(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(t=>{de(e.dataTypes,t)||pe(e,`type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`)}),fe(e,t)}}function ce(e,t){t.length>1&&!(t.length===2&&t.includes(`null`))&&pe(e,`use allowUnionTypes to allow union type keyword`)}function le(e,t){let n=e.self.RULES.all;for(let i in n){let a=n[i];if(typeof a==`object`&&(0,r.shouldUseRule)(e.schema,a)){let{type:n}=a.definition;n.length&&!n.some(e=>ue(t,e))&&pe(e,`missing type "${n.join(`,`)}" for keyword "${i}"`)}}}function ue(e,t){return e.includes(t)||t===`number`&&e.includes(`integer`)}function de(e,t){return e.includes(t)||t===`integer`&&e.includes(`number`)}function fe(e,t){let n=[];for(let r of e.dataTypes)de(t,r)?n.push(r):t.includes(`integer`)&&r===`number`&&n.push(`integer`);e.dataTypes=n}function pe(e,t){let n=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${n}" (strictTypes)`,(0,d.checkStrictMode)(e,t,e.opts.strictTypes)}var me=class{constructor(e,t,n){if((0,o.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const(`vSchema`,ve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);(`code`in t?t.trackErrors:t.errors!==!1)&&(this.errsCount=e.gen.const(`_errs`,l.default.errors))}result(e,t,n){this.failResult((0,c.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,c.not)(e),void 0,t)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail((0,c._)`${t} !== undefined && (${(0,c.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t){this.setParams(t),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,t){(e?f.reportExtraError:f.reportError)(this,this.def.error,t)}$dataError(){(0,f.reportError)(this,this.def.$dataError||f.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error(`add "trackErrors" to keyword definition`);(0,f.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=c.nil){this.gen.block(()=>{this.check$data(e,n),t()})}check$data(e=c.nil,t=c.nil){if(!this.$data)return;let{gen:n,schemaCode:r,schemaType:i,def:a}=this;n.if((0,c.or)((0,c._)`${r} === undefined`,t)),e!==c.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==c.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:n,def:r,it:a}=this;return(0,c.or)(o(),s());function o(){if(n.length){
64
+ if(Array.isArray(i.keyword)?!i.keyword.includes(a):i.keyword!==a)throw Error(`ajv implementation error`);let o=i.dependencies;if(o?.some(t=>!Object.prototype.hasOwnProperty.call(e,t)))throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`);if(i.validateSchema&&!i.validateSchema(e[a])){let e=`keyword "${a}" value is invalid at path "${r}": `+n.errorsText(i.validateSchema.errors);if(t.validateSchema===`log`)n.logger.error(e);else throw Error(e)}}e.validateKeywordUsage=f})),wa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendSubschemaMode=e.extendSubschemaData=e.getSubschema=void 0;let t=K(),n=q();function r(e,{keyword:r,schemaProp:i,schema:a,schemaPath:o,errSchemaPath:s,topSchemaRef:c}){if(r!==void 0&&a!==void 0)throw Error(`both "keyword" and "schema" passed, only one allowed`);if(r!==void 0){let a=e.schema[r];return i===void 0?{schema:a,schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${r}`}:{schema:a[i],schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}${(0,t.getProperty)(i)}`,errSchemaPath:`${e.errSchemaPath}/${r}/${(0,n.escapeFragment)(i)}`}}if(a!==void 0){if(o===void 0||s===void 0||c===void 0)throw Error(`"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`);return{schema:a,schemaPath:o,topSchemaRef:c,errSchemaPath:s}}throw Error(`either "keyword" or "schema" must be passed`)}e.getSubschema=r;function i(e,r,{dataProp:i,dataPropType:a,data:o,dataTypes:s,propertyName:c}){if(o!==void 0&&i!==void 0)throw Error(`both "data" and "dataProp" passed, only one allowed`);let{gen:l}=r;if(i!==void 0){let{errorPath:o,dataPathArr:s,opts:c}=r;u(l.let(`data`,(0,t._)`${r.data}${(0,t.getProperty)(i)}`,!0)),e.errorPath=(0,t.str)`${o}${(0,n.getErrorPath)(i,a,c.jsPropertySyntax)}`,e.parentDataProperty=(0,t._)`${i}`,e.dataPathArr=[...s,e.parentDataProperty]}o!==void 0&&(u(o instanceof t.Name?o:l.let(`data`,o,!0)),c!==void 0&&(e.propertyName=c)),s&&(e.dataTypes=s);function u(t){e.data=t,e.dataLevel=r.dataLevel+1,e.dataTypes=[],r.definedProperties=/* @__PURE__ */ new Set,e.parentData=r.data,e.dataNames=[...r.dataNames,t]}}e.extendSubschemaData=i;function a(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:i,allErrors:a}){r!==void 0&&(e.compositeRule=r),i!==void 0&&(e.createErrors=i),a!==void 0&&(e.allErrors=a),e.jtdDiscriminator=t,e.jtdMetadata=n}e.extendSubschemaMode=a})),Ta=/* @__PURE__ */ P(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}})),Ea=/* @__PURE__ */ P(((e,t)=>{var n=t.exports=function(e,t,n){typeof t==`function`&&(n=t,t={}),n=t.cb||n;var i=typeof n==`function`?n:n.pre||function(){},a=n.post||function(){};r(t,i,a,e,``,e)};n.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},n.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},n.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},n.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function r(e,t,a,o,s,c,l,u,d,f){if(o&&typeof o==`object`&&!Array.isArray(o)){for(var p in t(o,s,c,l,u,d,f),o){var m=o[p];if(Array.isArray(m)){if(p in n.arrayKeywords)for(var h=0;h<m.length;h++)r(e,t,a,m[h],s+`/`+p+`/`+h,c,s,p,o,h)}else if(p in n.propsKeywords){if(m&&typeof m==`object`)for(var g in m)r(e,t,a,m[g],s+`/`+p+`/`+i(g),c,s,p,o,g)}else(p in n.keywords||e.allKeys&&!(p in n.skipKeywords))&&r(e,t,a,m,s+`/`+p,c,s,p,o)}a(o,s,c,l,u,d,f)}}function i(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}})),Da=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getSchemaRefs=e.resolveUrl=e.normalizeId=e._getFullPath=e.getFullPath=e.inlineRef=void 0;let t=q(),n=Ta(),r=Ea(),i=/* @__PURE__ */ new Set([`type`,`format`,`pattern`,`maxLength`,`minLength`,`maxProperties`,`minProperties`,`maxItems`,`minItems`,`maximum`,`minimum`,`uniqueItems`,`multipleOf`,`required`,`enum`,`const`]);function a(e,t=!0){return typeof e==`boolean`?!0:t===!0?!s(e):t?c(e)<=t:!1}e.inlineRef=a;let o=/* @__PURE__ */ new Set([`$ref`,`$recursiveRef`,`$recursiveAnchor`,`$dynamicRef`,`$dynamicAnchor`]);function s(e){for(let t in e){if(o.has(t))return!0;let n=e[t];if(Array.isArray(n)&&n.some(s)||typeof n==`object`&&s(n))return!0}return!1}function c(e){let n=0;for(let r in e)if(r===`$ref`||(n++,!i.has(r)&&(typeof e[r]==`object`&&(0,t.eachItem)(e[r],e=>n+=c(e)),n===1/0)))return 1/0;return n}function l(e,t=``,n){return n!==!1&&(t=f(t)),u(e,e.parse(t))}e.getFullPath=l;function u(e,t){return e.serialize(t).split(`#`)[0]+`#`}e._getFullPath=u;let d=/#\/?$/;function f(e){return e?e.replace(d,``):``}e.normalizeId=f;function p(e,t,n){return n=f(n),e.resolve(t,n)}e.resolveUrl=p;let m=/^[a-z_][-a-z0-9._]*$/i;function h(e,t){if(typeof e==`boolean`)return{};let{schemaId:i,uriResolver:a}=this.opts,o=f(e[i]||t),s={"":o},c=l(a,o,!1),u={},d=/* @__PURE__ */ new Set;return r(e,{allKeys:!0},(e,t,n,r)=>{if(r===void 0)return;let a=c+t,o=s[r];typeof e[i]==`string`&&(o=l.call(this,e[i])),g.call(this,e.$anchor),g.call(this,e.$dynamicAnchor),s[t]=o;function l(t){let n=this.opts.uriResolver.resolve;if(t=f(o?n(o,t):t),d.has(t))throw h(t);d.add(t);let r=this.refs[t];return typeof r==`string`&&(r=this.refs[r]),typeof r==`object`?p(e,r.schema,t):t!==f(a)&&(t[0]===`#`?(p(e,u[t],t),u[t]=e):this.refs[t]=a),t}function g(e){if(typeof e==`string`){if(!m.test(e))throw Error(`invalid anchor "${e}"`);l.call(this,`#${e}`)}}}),u;function p(e,t,r){if(t!==void 0&&!n(e,t))throw h(r)}function h(e){return/* @__PURE__ */ Error(`reference "${e}" resolves to more than one schema`)}}e.getSchemaRefs=h})),Oa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getData=e.KeywordCxt=e.validateFunctionCode=void 0;let t=va(),n=xa(),r=ba(),i=xa(),a=Sa(),o=Ca(),s=wa(),c=K(),l=J(),u=Da(),d=q(),f=_a();function p(e){if(S(e)&&(w(e),x(e))){_(e);return}m(e,()=>(0,t.topBoolOrEmptySchema)(e))}e.validateFunctionCode=p;function m({gen:e,validateName:t,schema:n,schemaEnv:r,opts:i},a){i.code.es5?e.func(t,(0,c._)`${l.default.data}, ${l.default.valCxt}`,r.$async,()=>{e.code((0,c._)`"use strict"; ${y(n,i)}`),g(e,i),e.code(a)}):e.func(t,(0,c._)`${l.default.data}, ${h(i)}`,r.$async,()=>e.code(y(n,i)).code(a))}function h(e){return(0,c._)`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${e.dynamicRef?(0,c._)`, ${l.default.dynamicAnchors}={}`:c.nil}}={}`}function g(e,t){e.if(l.default.valCxt,()=>{e.var(l.default.instancePath,(0,c._)`${l.default.valCxt}.${l.default.instancePath}`),e.var(l.default.parentData,(0,c._)`${l.default.valCxt}.${l.default.parentData}`),e.var(l.default.parentDataProperty,(0,c._)`${l.default.valCxt}.${l.default.parentDataProperty}`),e.var(l.default.rootData,(0,c._)`${l.default.valCxt}.${l.default.rootData}`),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{e.var(l.default.instancePath,(0,c._)`""`),e.var(l.default.parentData,(0,c._)`undefined`),e.var(l.default.parentDataProperty,(0,c._)`undefined`),e.var(l.default.rootData,l.default.data),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`{}`)})}function _(e){let{schema:t,opts:n,gen:r}=e;m(e,()=>{n.$comment&&t.$comment&&k(e),E(e),r.let(l.default.vErrors,null),r.let(l.default.errors,0),n.unevaluated&&v(e),T(e),te(e)})}function v(e){let{gen:t,validateName:n}=e;e.evaluated=t.const(`evaluated`,(0,c._)`${n}.evaluated`),t.if((0,c._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,c._)`${e.evaluated}.props`,(0,c._)`undefined`)),t.if((0,c._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,c._)`${e.evaluated}.items`,(0,c._)`undefined`))}function y(e,t){let n=typeof e==`object`&&e[t.schemaId];return n&&(t.code.source||t.code.process)?(0,c._)`/*# sourceURL=${n} */`:c.nil}function b(e,n){if(S(e)&&(w(e),x(e))){C(e,n);return}(0,t.boolOrEmptySchema)(e,n)}function x({schema:e,self:t}){if(typeof e==`boolean`)return!e;for(let n in e)if(t.RULES.all[n])return!0;return!1}function S(e){return typeof e.schema!=`boolean`}function C(e,t){let{schema:n,gen:r,opts:i}=e;i.$comment&&n.$comment&&k(e),D(e),O(e);let a=r.const(`_errs`,l.default.errors);T(e,a),r.var(t,(0,c._)`${a} === ${l.default.errors}`)}function w(e){(0,d.checkUnknownRules)(e),ee(e)}function T(e,t){if(e.opts.jtd)return re(e,[],!1,t);let r=(0,n.getSchemaTypes)(e.schema);re(e,r,!(0,n.coerceAndCheckDataType)(e,r),t)}function ee(e){let{schema:t,errSchemaPath:n,opts:r,self:i}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function E(e){let{schema:t,opts:n}=e;t.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,d.checkStrictMode)(e,`default is ignored in the schema root`)}function D(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,u.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function O(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error(`async schema in sync schema`)}function k({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:i}){let a=n.$comment;if(i.$comment===!0)e.code((0,c._)`${l.default.self}.logger.log(${a})`);else if(typeof i.$comment==`function`){let n=(0,c.str)`${r}/$comment`,i=e.scopeValue(`root`,{ref:t.root});e.code((0,c._)`${l.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`)}}function te(e){let{gen:t,schemaEnv:n,validateName:r,ValidationError:i,opts:a}=e;n.$async?t.if((0,c._)`${l.default.errors} === 0`,()=>t.return(l.default.data),()=>t.throw((0,c._)`new ${i}(${l.default.vErrors})`)):(t.assign((0,c._)`${r}.errors`,l.default.vErrors),a.unevaluated&&ne(e),t.return((0,c._)`${l.default.errors} === 0`))}function ne({gen:e,evaluated:t,props:n,items:r}){n instanceof c.Name&&e.assign((0,c._)`${t}.props`,n),r instanceof c.Name&&e.assign((0,c._)`${t}.items`,r)}function re(e,t,n,a){let{gen:o,schema:s,data:u,allErrors:f,opts:p,self:m}=e,{RULES:h}=m;if(s.$ref&&(p.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(s,h))){o.block(()=>me(e,`$ref`,h.all.$ref.definition));return}p.jtd||ae(e,t),o.block(()=>{for(let e of h.rules)g(e);g(h.post)});function g(d){(0,r.shouldUseGroup)(s,d)&&(d.type?(o.if((0,i.checkDataType)(d.type,u,p.strictNumbers)),ie(e,d),t.length===1&&t[0]===d.type&&n&&(o.else(),(0,i.reportTypeError)(e)),o.endIf()):ie(e,d),f||o.if((0,c._)`${l.default.errors} === ${a||0}`))}}function ie(e,t){let{gen:n,schema:i,opts:{useDefaults:o}}=e;o&&(0,a.assignDefaults)(e,t.type),n.block(()=>{for(let n of t.rules)(0,r.shouldUseRule)(i,n)&&me(e,n.keyword,n.definition,t.type)})}function ae(e,t){!e.schemaEnv.meta&&e.opts.strictTypes&&(oe(e,t),e.opts.allowUnionTypes||se(e,t),ce(e,e.dataTypes))}function oe(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(t=>{ue(e.dataTypes,t)||fe(e,`type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`)}),de(e,t)}}function se(e,t){t.length>1&&!(t.length===2&&t.includes(`null`))&&fe(e,`use allowUnionTypes to allow union type keyword`)}function ce(e,t){let n=e.self.RULES.all;for(let i in n){let a=n[i];if(typeof a==`object`&&(0,r.shouldUseRule)(e.schema,a)){let{type:n}=a.definition;n.length&&!n.some(e=>le(t,e))&&fe(e,`missing type "${n.join(`,`)}" for keyword "${i}"`)}}}function le(e,t){return e.includes(t)||t===`number`&&e.includes(`integer`)}function ue(e,t){return e.includes(t)||t===`integer`&&e.includes(`number`)}function de(e,t){let n=[];for(let r of e.dataTypes)ue(t,r)?n.push(r):t.includes(`integer`)&&r===`number`&&n.push(`integer`);e.dataTypes=n}function fe(e,t){let n=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${n}" (strictTypes)`,(0,d.checkStrictMode)(e,t,e.opts.strictTypes)}var pe=class{constructor(e,t,n){if((0,o.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const(`vSchema`,_e(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);(`code`in t?t.trackErrors:t.errors!==!1)&&(this.errsCount=e.gen.const(`_errs`,l.default.errors))}result(e,t,n){this.failResult((0,c.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,c.not)(e),void 0,t)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail((0,c._)`${t} !== undefined && (${(0,c.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t){this.setParams(t),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,t){(e?f.reportExtraError:f.reportError)(this,this.def.error,t)}$dataError(){(0,f.reportError)(this,this.def.$dataError||f.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error(`add "trackErrors" to keyword definition`);(0,f.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=c.nil){this.gen.block(()=>{this.check$data(e,n),t()})}check$data(e=c.nil,t=c.nil){if(!this.$data)return;let{gen:n,schemaCode:r,schemaType:i,def:a}=this;n.if((0,c.or)((0,c._)`${r} === undefined`,t)),e!==c.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==c.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:n,def:r,it:a}=this;return(0,c.or)(o(),s());function o(){if(n.length){
65
65
  /* istanbul ignore if */
66
- if(!(t instanceof c.Name))throw Error(`ajv implementation error`);let e=Array.isArray(n)?n:[n];return(0,c._)`${(0,i.checkDataTypes)(e,t,a.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function s(){if(r.validateSchema){let n=e.scopeValue(`validate$data`,{ref:r.validateSchema});return(0,c._)`!${n}(${t})`}return c.nil}}subschema(e,t){let n=(0,s.getSubschema)(this.it,e);(0,s.extendSubschemaData)(n,this.it,e),(0,s.extendSubschemaMode)(n,e);let r={...this.it,...n,items:void 0,props:void 0};return b(r,t),r}mergeEvaluated(e,t){let{it:n,gen:r}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=d.mergeEvaluated.props(r,e.props,n.props,t)),n.items!==!0&&e.items!==void 0&&(n.items=d.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){let{it:n,gen:r}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return r.if(t,()=>this.mergeEvaluated(e,c.Name)),!0}};e.KeywordCxt=me;function he(e,t,n,r){let i=new me(e,n,t);`code`in n?n.code(i,r):i.$data&&n.validate?(0,o.funcKeywordCode)(i,n):`macro`in n?(0,o.macroKeywordCode)(i,n):(n.compile||n.validate)&&(0,o.funcKeywordCode)(i,n)}let ge=/^\/(?:[^~]|~0|~1)*$/,_e=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ve(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let i,a;if(e===``)return l.default.rootData;if(e[0]===`/`){if(!ge.test(e))throw Error(`Invalid JSON-pointer: ${e}`);i=e,a=l.default.rootData}else{let o=_e.exec(e);if(!o)throw Error(`Invalid JSON-pointer: ${e}`);let s=+o[1];if(i=o[2],i===`#`){if(s>=t)throw Error(u(`property/index`,s));return r[t-s]}if(s>t)throw Error(u(`data`,s));if(a=n[t-s],!i)return a}let o=a,s=i.split(`/`);for(let e of s)e&&(a=(0,c._)`${a}${(0,c.getProperty)((0,d.unescapeJsonPointer)(e))}`,o=(0,c._)`${o} && ${a}`);return o;function u(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}e.getData=ve})),Oa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=class extends Error{constructor(e){super(`validation failed`),this.errors=e,this.ajv=this.validation=!0}}})),ka=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Ea();e.default=class extends Error{constructor(e,n,r,i){super(i||`can't resolve reference ${r} from id ${n}`),this.missingRef=(0,t.resolveUrl)(e,n,r),this.missingSchema=(0,t.normalizeId)((0,t.getFullPath)(e,this.missingRef))}}})),Aa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.resolveSchema=e.getCompilingSchema=e.resolveRef=e.compileSchema=e.SchemaEnv=void 0;let t=K(),n=Oa(),r=J(),i=Ea(),a=q(),o=Da();var s=class{constructor(e){this.refs={},this.dynamicAnchors={};let t;typeof e.schema==`object`&&(t=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=e.baseId??(0,i.normalizeId)(t?.[e.schemaId||`$id`]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=t?.$async,this.refs={}}};e.SchemaEnv=s;function c(e){let a=d.call(this,e);if(a)return a;let s=(0,i.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:c,lines:l}=this.opts.code,{ownProperties:u}=this.opts,f=new t.CodeGen(this.scope,{es5:c,lines:l,ownProperties:u}),p;e.$async&&(p=f.scopeValue(`Error`,{ref:n.default,code:(0,t._)`require("ajv/dist/runtime/validation_error").default`}));let m=f.scopeName(`validate`);e.validateName=m;let h={gen:f,allErrors:this.opts.allErrors,data:r.default.data,parentData:r.default.parentData,parentDataProperty:r.default.parentDataProperty,dataNames:[r.default.data],dataPathArr:[t.nil],dataLevel:0,dataTypes:[],definedProperties:/* @__PURE__ */ new Set,topSchemaRef:f.scopeValue(`schema`,this.opts.code.source===!0?{ref:e.schema,code:(0,t.stringify)(e.schema)}:{ref:e.schema}),validateName:m,ValidationError:p,schema:e.schema,schemaEnv:e,rootId:s,baseId:e.baseId||s,schemaPath:t.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?``:`#`),errorPath:(0,t._)`""`,opts:this.opts,self:this},g;try{this._compilations.add(e),(0,o.validateFunctionCode)(h),f.optimize(this.opts.code.optimize);let n=f.toString();g=`${f.scopeRefs(r.default.scope)}return ${n}`,this.opts.code.process&&(g=this.opts.code.process(g,e));let i=Function(`${r.default.self}`,`${r.default.scope}`,g)(this,this.scope.get());if(this.scope.value(m,{ref:i}),i.errors=null,i.schema=e.schema,i.schemaEnv=e,e.$async&&(i.$async=!0),this.opts.code.source===!0&&(i.source={validateName:m,validateCode:n,scopeValues:f._values}),this.opts.unevaluated){let{props:e,items:n}=h;i.evaluated={props:e instanceof t.Name?void 0:e,items:n instanceof t.Name?void 0:n,dynamicProps:e instanceof t.Name,dynamicItems:n instanceof t.Name},i.source&&(i.source.evaluated=(0,t.stringify)(i.evaluated))}return e.validate=i,e}catch(t){throw delete e.validate,delete e.validateName,g&&this.logger.error(`Error compiling schema, function code:`,g),t}finally{this._compilations.delete(e)}}e.compileSchema=c;function l(e,t,n){n=(0,i.resolveUrl)(this.opts.uriResolver,t,n);let r=e.refs[n];if(r)return r;let a=p.call(this,e,n);if(a===void 0){let r=e.localRefs?.[n],{schemaId:i}=this.opts;r&&(a=new s({schema:r,schemaId:i,root:e,baseId:t}))}if(a!==void 0)return e.refs[n]=u.call(this,a)}e.resolveRef=l;function u(e){return(0,i.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:c.call(this,e)}function d(e){for(let t of this._compilations)if(f(t,e))return t}e.getCompilingSchema=d;function f(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function p(e,t){let n;for(;typeof(n=this.refs[t])==`string`;)t=n;return n||this.schemas[t]||m.call(this,e,t)}function m(e,t){let n=this.opts.uriResolver.parse(t),r=(0,i._getFullPath)(this.opts.uriResolver,n),a=(0,i.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===a)return g.call(this,n,e);let o=(0,i.normalizeId)(r),l=this.refs[o]||this.schemas[o];if(typeof l==`string`){let t=m.call(this,e,l);return typeof t?.schema==`object`?g.call(this,n,t):void 0}if(typeof l?.schema==`object`){if(l.validate||c.call(this,l),o===(0,i.normalizeId)(t)){let{schema:t}=l,{schemaId:n}=this.opts,r=t[n];return r&&(a=(0,i.resolveUrl)(this.opts.uriResolver,a,r)),new s({schema:t,schemaId:n,root:e,baseId:a})}return g.call(this,n,l)}}e.resolveSchema=m;let h=/* @__PURE__ */ new Set([`properties`,`patternProperties`,`enum`,`dependencies`,`definitions`]);function g(e,{baseId:t,schema:n,root:r}){if(e.fragment?.[0]!==`/`)return;for(let r of e.fragment.slice(1).split(`/`)){if(typeof n==`boolean`)return;let e=n[(0,a.unescapeFragment)(r)];if(e===void 0)return;n=e;let o=typeof n==`object`&&n[this.opts.schemaId];!h.has(r)&&o&&(t=(0,i.resolveUrl)(this.opts.uriResolver,t,o))}let o;if(typeof n!=`boolean`&&n.$ref&&!(0,a.schemaHasRulesButRef)(n,this.RULES)){let e=(0,i.resolveUrl)(this.opts.uriResolver,t,n.$ref);o=m.call(this,r,e)}let{schemaId:c}=this.opts;if(o||=new s({schema:n,schemaId:c,root:r,baseId:t}),o.schema!==o.root.schema)return o}})),ja=/* @__PURE__ */ N(((e,t)=>{t.exports={$id:`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`,description:`Meta-schema for $data reference (JSON AnySchema extension proposal)`,type:`object`,required:[`$data`],properties:{$data:{type:`string`,anyOf:[{format:`relative-json-pointer`},{format:`json-pointer`}]}},additionalProperties:!1}})),Ma=/* @__PURE__ */ N(((e,t)=>{let n=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),r=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),i=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),a=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),o=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function s(e){let t=``,n=0,r=0;for(r=0;r<e.length;r++)if(n=e[r].charCodeAt(0),n!==48){if(!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r];break}for(r+=1;r<e.length;r++){if(n=e[r].charCodeAt(0),!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r]}return t}let c=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function l(e){return e.length=0,!0}function u(e,t,n){if(e.length){let r=s(e);if(r!==``)t.push(r);else return n.error=!0,!1;e.length=0}return!0}function d(e){let t=0,n={error:!1,address:``,zone:``},r=[],i=[],a=!1,o=!1,c=u;for(let s=0;s<e.length;s++){let u=e[s];if(u!==`[`&&u!==`]`){if(u===`:`){if(a===!0&&(o=!0),!c(i,r,n))break;if(++t>7){n.error=!0;break}s>0&&e[s-1]===`:`&&(a=!0),r.push(`:`);continue}if(u===`%`){if(!c(i,r,n))break;c=l}else{i.push(u);continue}}}return i.length&&(c===l?n.zone=i.join(``):o?r.push(i.join(``)):r.push(s(i))),n.address=r.join(``),n}function f(e){if(p(e,`:`)<2)return{host:e,isIPV6:!1};let t=d(e);if(t.error)return{host:e,isIPV6:!1};{let e=t.address,n=t.address;return t.zone&&(e+=`%`+t.zone,n+=`%25`+t.zone),{host:e,isIPV6:!0,escapedHost:n}}}function p(e,t){let n=0;for(let r=0;r<e.length;r++)e[r]===t&&n++;return n}function m(e){let t=e,n=[],r=-1,i=0;for(;i=t.length;){if(i===1){if(t===`.`)break;if(t===`/`){n.push(`/`);break}n.push(t);break}if(i===2){if(t[0]===`.`){if(t[1]===`.`)break;if(t[1]===`/`){t=t.slice(2);continue}}else if(t[0]===`/`&&(t[1]===`.`||t[1]===`/`)){n.push(`/`);break}}else if(i===3&&t===`/..`){n.length!==0&&n.pop(),n.push(`/`);break}if(t[0]===`.`){if(t[1]===`.`){if(t[2]===`/`){t=t.slice(3);continue}}else if(t[1]===`/`){t=t.slice(2);continue}}else if(t[0]===`/`&&t[1]===`.`){if(t[2]===`/`){t=t.slice(2);continue}if(t[2]===`.`&&t[3]===`/`){t=t.slice(3),n.length!==0&&n.pop();continue}}if((r=t.indexOf(`/`,1))===-1){n.push(t);break}n.push(t.slice(0,r)),t=t.slice(r)}return n.join(``)}let h={"@":`%40`,"/":`%2F`,"?":`%3F`,"#":`%23`,":":`%3A`},g=/[@/?#:]/g,_=/[@/?#]/g;function v(e,t){let n=t?_:g;return n.lastIndex=0,e.replace(n,e=>h[e])}function y(e,t=!1){if(e.indexOf(`%`)===-1)return e;let n=``;for(let r=0;r<e.length;r++){if(e[r]===`%`&&r+2<e.length){let o=e.slice(r+1,r+3);if(i(o)){let e=o.toUpperCase(),i=String.fromCharCode(parseInt(e,16));t&&a(i)?n+=i:n+=`%`+e,r+=2;continue}}n+=e[r]}return n}function b(e){let t=``;for(let n=0;n<e.length;n++){if(e[n]===`%`&&n+2<e.length){let r=e.slice(n+1,n+3);if(i(r)){let e=r.toUpperCase(),i=String.fromCharCode(parseInt(e,16));i!==`.`&&a(i)?t+=i:t+=`%`+e,n+=2;continue}}o(e[n])?t+=e[n]:t+=escape(e[n])}return t}function x(e){let t=``;for(let n=0;n<e.length;n++){if(e[n]===`%`&&n+2<e.length){let r=e.slice(n+1,n+3);if(i(r)){t+=`%`+r.toUpperCase(),n+=2;continue}}t+=escape(e[n])}return t}function S(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push(`@`)),e.host!==void 0){let n=unescape(e.host);if(!r(n)){let e=f(n);n=e.isIPV6===!0?`[${e.escapedHost}]`:v(n,!1)}t.push(n)}return(typeof e.port==`number`||typeof e.port==`string`)&&(t.push(`:`),t.push(String(e.port))),t.length?t.join(``):void 0}t.exports={nonSimpleDomain:c,recomposeAuthority:S,reescapeHostDelimiters:v,normalizePercentEncoding:y,normalizePathEncoding:b,escapePreservingEscapes:x,removeDotSegments:m,isIPv4:r,isUUID:n,normalizeIPv6:f,stringArrayToHexStripped:s}})),Na=/* @__PURE__ */ N(((e,t)=>{let{isUUID:n}=Ma(),r=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,i=[`http`,`https`,`ws`,`wss`,`urn`,`urn:uuid`];function a(e){return i.indexOf(e)!==-1}function o(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]===`w`||e.scheme[0]===`W`)&&(e.scheme[1]===`s`||e.scheme[1]===`S`)&&(e.scheme[2]===`s`||e.scheme[2]===`S`):!1}function s(e){return e.host||(e.error=e.error||`HTTP URIs must have a host.`),e}function c(e){let t=String(e.scheme).toLowerCase()===`https`;return(e.port===(t?443:80)||e.port===``)&&(e.port=void 0),e.path||=`/`,e}function l(e){return e.secure=o(e),e.resourceName=(e.path||`/`)+(e.query?`?`+e.query:``),e.path=void 0,e.query=void 0,e}function u(e){if((e.port===(o(e)?443:80)||e.port===``)&&(e.port=void 0),typeof e.secure==`boolean`&&(e.scheme=e.secure?`wss`:`ws`,e.secure=void 0),e.resourceName){let[t,n]=e.resourceName.split(`?`);e.path=t&&t!==`/`?t:void 0,e.query=n,e.resourceName=void 0}return e.fragment=void 0,e}function d(e,t){if(!e.path)return e.error=`URN can not be parsed`,e;let n=e.path.match(r);if(n){let r=t.scheme||e.scheme||`urn`;e.nid=n[1].toLowerCase(),e.nss=n[2];let i=y(`${r}:${t.nid||e.nid}`);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||`URN can not be parsed.`;return e}function f(e,t){if(e.nid===void 0)throw Error(`URN without nid cannot be serialized`);let n=t.scheme||e.scheme||`urn`,r=e.nid.toLowerCase(),i=y(`${n}:${t.nid||r}`);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${r||t.nid}:${o}`,t.skipEscape=!0,a}function p(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!n(r.uuid))&&(r.error=r.error||`UUID is not valid.`),r}function m(e){let t=e;return t.nss=(e.uuid||``).toLowerCase(),t}let h={scheme:`http`,domainHost:!0,parse:s,serialize:c},g={scheme:`https`,domainHost:h.domainHost,parse:s,serialize:c},_={scheme:`ws`,domainHost:!0,parse:l,serialize:u},v={http:h,https:g,ws:_,wss:{scheme:`wss`,domainHost:_.domainHost,parse:_.parse,serialize:_.serialize},urn:{scheme:`urn`,parse:d,serialize:f,skipNormalize:!0},"urn:uuid":{scheme:`urn:uuid`,parse:p,serialize:m,skipNormalize:!0}};Object.setPrototypeOf(v,null);function y(e){return e&&(v[e]||v[e.toLowerCase()])||void 0}t.exports={wsIsSecure:o,SCHEMES:v,isValidSchemeName:a,getSchemeHandler:y}})),Pa=/* @__PURE__ */ N(((e,t)=>{let{normalizeIPv6:n,removeDotSegments:r,recomposeAuthority:i,normalizePercentEncoding:a,normalizePathEncoding:o,escapePreservingEscapes:s,reescapeHostDelimiters:c,isIPv4:l,nonSimpleDomain:u}=Ma(),{SCHEMES:d,getSchemeHandler:f}=Na();function p(e,t){return typeof e==`string`?e=S(e,t):typeof e==`object`&&(e=x(_(e,t),t)),e}function m(e,t,n){let r=n?Object.assign({scheme:`null`},n):{scheme:`null`},i=h(x(e,r),x(t,r),r,!0);return r.skipEscape=!0,_(i,r)}function h(e,t,n,i){let a={};return i||(e=x(_(e,n),n),t=x(_(t,n),n)),n||={},!n.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.path?(t.path[0]===`/`?a.path=r(t.path):(a.path=(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?`/`+t.path:e.path?e.path.slice(0,e.path.lastIndexOf(`/`)+1)+t.path:t.path,a.path=r(a.path)),a.query=t.query):(a.path=e.path,a.query=t.query===void 0?e.query:t.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function g(e,t,n){let r=w(e,n),i=w(t,n);return r!==void 0&&i!==void 0&&r.toLowerCase()===i.toLowerCase()}function _(e,t){let n={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:``},o=Object.assign({},t),c=[],l=f(o.scheme||n.scheme);l&&l.serialize&&l.serialize(n,o),n.path!==void 0&&(o.skipEscape?n.path=a(n.path):(n.path=s(n.path),n.scheme!==void 0&&(n.path=n.path.split(`%3A`).join(`:`)))),o.reference!==`suffix`&&n.scheme&&c.push(n.scheme,`:`);let u=i(n);if(u!==void 0&&(o.reference!==`suffix`&&c.push(`//`),c.push(u),n.path&&n.path[0]!==`/`&&c.push(`/`)),n.path!==void 0){let e=n.path;!o.absolutePath&&(!l||!l.absolutePath)&&(e=r(e)),u===void 0&&e[0]===`/`&&e[1]===`/`&&(e=`/%2F`+e.slice(2)),c.push(e)}return n.query!==void 0&&c.push(`?`,n.query),n.fragment!==void 0&&c.push(`#`,n.fragment),c.join(``)}let v=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function y(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!==`/`)return`URI path must start with "/" when authority is present.`;if(typeof e.port==`number`&&(e.port<0||e.port>65535))return`URI port is malformed.`}function b(e,t){let r=Object.assign({},t),i={scheme:void 0,userinfo:void 0,host:``,port:void 0,path:``,query:void 0,fragment:void 0},a=!1,s=!1;r.reference===`suffix`&&(e=r.scheme?r.scheme+`:`+e:`//`+e);let d=e.match(v);if(d){i.scheme=d[1],i.userinfo=d[3],i.host=d[4],i.port=parseInt(d[5],10),i.path=d[6]||``,i.query=d[7],i.fragment=d[8],isNaN(i.port)&&(i.port=d[5]);let t=y(i,d);if(t!==void 0&&(i.error=i.error||t,a=!0),i.host){if(l(i.host)===!1){let e=n(i.host);i.host=e.host.toLowerCase(),s=e.isIPV6}else s=!0}i.reference=i.scheme===void 0&&i.userinfo===void 0&&i.host===void 0&&i.port===void 0&&i.query===void 0&&!i.path?`same-document`:i.scheme===void 0?`relative`:i.fragment===void 0?`absolute`:`uri`,r.reference&&r.reference!==`suffix`&&r.reference!==i.reference&&(i.error=i.error||`URI is not a `+r.reference+` reference.`);let p=f(r.scheme||i.scheme);if(!r.unicodeSupport&&(!p||!p.unicodeSupport)&&i.host&&(r.domainHost||p&&p.domainHost)&&s===!1&&u(i.host))try{i.host=URL.domainToASCII(i.host.toLowerCase())}catch(e){i.error=i.error||`Host's domain name can not be converted to ASCII: `+e}if((!p||p&&!p.skipNormalize)&&(e.indexOf(`%`)!==-1&&(i.scheme!==void 0&&(i.scheme=unescape(i.scheme)),i.host!==void 0&&(i.host=c(unescape(i.host),s))),i.path&&=o(i.path),i.fragment))try{i.fragment=encodeURI(decodeURIComponent(i.fragment))}catch{i.error=i.error||`URI malformed`}p&&p.parse&&p.parse(i,r)}else i.error=i.error||`URI can not be parsed.`;return{parsed:i,malformedAuthorityOrPort:a}}function x(e,t){return b(e,t).parsed}function S(e,t){return C(e,t).normalized}function C(e,t){let{parsed:n,malformedAuthorityOrPort:r}=b(e,t);return{normalized:r?e:_(n,t),malformedAuthorityOrPort:r}}function w(e,t){if(typeof e==`string`){let{normalized:n,malformedAuthorityOrPort:r}=C(e,t);return r?void 0:n}if(typeof e==`object`)return _(e,t)}let T={SCHEMES:d,normalize:p,resolve:m,resolveComponent:h,equal:g,serialize:_,parse:x};t.exports=T,t.exports.default=T,t.exports.fastUri=T})),Fa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Pa();t.code=`require("ajv/dist/runtime/uri").default`,e.default=t})),Ia=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=void 0;var t=Da();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return t.KeywordCxt}});var n=K();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return n.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return n.CodeGen}});let r=Oa(),i=ka(),a=va(),o=Aa(),s=K(),c=Ea(),l=ba(),u=q(),d=ja(),f=Fa(),p=(e,t)=>new RegExp(e,t);p.code=`new RegExp`;let m=[`removeAdditional`,`useDefaults`,`coerceTypes`],h=/* @__PURE__ */ new Set([`validate`,`serialize`,`parse`,`wrapper`,`root`,`schema`,`keyword`,`pattern`,`formats`,`validate$data`,`func`,`obj`,`Error`]),g={errorDataPath:``,format:"`validateFormats: false` can be used instead.",nullable:`"nullable" keyword is supported by default.`,jsonPointers:`Deprecated jsPropertySyntax can be used instead.`,extendRefs:`Deprecated ignoreKeywordsWithRef can be used instead.`,missingRefs:`Pass empty schema with $id that should be ignored to ajv.addSchema.`,processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:`"uniqueItems" keyword is always validated.`,unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:`Map is used as cache, schema object as key.`,serialize:`Map is used as cache, schema object as key.`,ajvErrors:`It is default now.`},_={ignoreKeywordsWithRef:``,jsPropertySyntax:``,unicode:`"minLength"/"maxLength" account for unicode characters by default.`};function v(e){let t=e.strict,n=e.code?.optimize,r=n===!0||n===void 0?1:n||0,i=e.code?.regExp??p,a=e.uriResolver??f.default;return{strictSchema:e.strictSchema??t??!0,strictNumbers:e.strictNumbers??t??!0,strictTypes:e.strictTypes??t??`log`,strictTuples:e.strictTuples??t??`log`,strictRequired:e.strictRequired??t??!1,code:e.code?{...e.code,optimize:r,regExp:i}:{optimize:r,regExp:i},loopRequired:e.loopRequired??200,loopEnum:e.loopEnum??200,meta:e.meta??!0,messages:e.messages??!0,inlineRefs:e.inlineRefs??!0,schemaId:e.schemaId??`$id`,addUsedSchema:e.addUsedSchema??!0,validateSchema:e.validateSchema??!0,validateFormats:e.validateFormats??!0,unicodeRegExp:e.unicodeRegExp??!0,int32range:e.int32range??!0,uriResolver:a}}var y=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=/* @__PURE__ */ new Set,this._loading={},this._cache=/* @__PURE__ */ new Map,e=this.opts={...e,...v(e)};let{es5:t,lines:n}=this.opts.code;this.scope=new s.ValueScope({scope:{},prefixes:h,es5:t,lines:n}),this.logger=E(e.logger);let r=e.validateFormats;e.validateFormats=!1,this.RULES=(0,a.getRules)(),b.call(this,g,e,`NOT SUPPORTED`),b.call(this,_,e,`DEPRECATED`,`warn`),this._metaOpts=T.call(this),e.formats&&C.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&w.call(this,e.keywords),typeof e.meta==`object`&&this.addMetaSchema(e.meta),S.call(this),e.validateFormats=r}_addVocabularies(){this.addKeyword(`$async`)}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:n}=this.opts,r=d;n===`id`&&(r={...d},r.id=r.$id,delete r.$id),t&&e&&this.addMetaSchema(r,r[n],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e==`object`?e[t]||e:void 0}validate(e,t){let n;if(typeof e==`string`){if(n=this.getSchema(e),!n)throw Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let r=n(t);return`$async`in n||(this.errors=n.errors),r}compile(e,t){let n=this._addSchema(e,t);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,t){if(typeof this.opts.loadSchema!=`function`)throw Error(`options.loadSchema should be a function`);let{loadSchema:n}=this.opts;return r.call(this,e,t);async function r(e,t){await a.call(this,e.$schema);let n=this._addSchema(e,t);return n.validate||o.call(this,n)}async function a(e){e&&!this.getSchema(e)&&await r.call(this,{$ref:e},!0)}async function o(e){try{return this._compileSchemaEnv(e)}catch(t){if(!(t instanceof i.default))throw t;return s.call(this,t),await c.call(this,t.missingSchema),o.call(this,e)}}function s({missingSchema:e,missingRef:t}){if(this.refs[e])throw Error(`AnySchema ${e} is loaded but ${t} cannot be resolved`)}async function c(e){let n=await l.call(this,e);this.refs[e]||await a.call(this,n.$schema),this.refs[e]||this.addSchema(n,e,t)}async function l(e){let t=this._loading[e];if(t)return t;try{return await(this._loading[e]=n(e))}finally{delete this._loading[e]}}}addSchema(e,t,n,r=this.opts.validateSchema){if(Array.isArray(e)){for(let t of e)this.addSchema(t,void 0,n,r);return this}let i;if(typeof e==`object`){let{schemaId:t}=this.opts;if(i=e[t],i!==void 0&&typeof i!=`string`)throw Error(`schema ${t} must be string`)}return t=(0,c.normalizeId)(t||i),this._checkUnique(t),this.schemas[t]=this._addSchema(e,n,t,r,!0),this}addMetaSchema(e,t,n=this.opts.validateSchema){return this.addSchema(e,t,!0,n),this}validateSchema(e,t){if(typeof e==`boolean`)return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!=`string`)throw Error(`$schema must be a string`);if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn(`meta-schema not available`),this.errors=null,!0;let r=this.validate(n,e);if(!r&&t){let e=`schema is invalid: `+this.errorsText();if(this.opts.validateSchema===`log`)this.logger.error(e);else throw Error(e)}return r}getSchema(e){let t;for(;typeof(t=x.call(this,e))==`string`;)e=t;if(t===void 0){let{schemaId:n}=this.opts,r=new o.SchemaEnv({schema:{},schemaId:n});if(t=o.resolveSchema.call(this,r,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case`undefined`:return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case`string`:{let t=x.call(this,e);return typeof t==`object`&&this._cache.delete(t.schema),delete this.schemas[e],delete this.refs[e],this}case`object`:{let t=e;this._cache.delete(t);let n=e[this.opts.schemaId];return n&&(n=(0,c.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw Error(`ajv.removeSchema: invalid parameter`)}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let n;if(typeof e==`string`)n=e,typeof t==`object`&&(this.logger.warn(`these parameters are deprecated, see docs for addKeyword`),t.keyword=n);else if(typeof e==`object`&&t===void 0){if(t=e,n=t.keyword,Array.isArray(n)&&!n.length)throw Error(`addKeywords: keyword must be string or non-empty array`)}else throw Error(`invalid addKeywords parameters`);if(D.call(this,n,t),!t)return(0,u.eachItem)(n,e=>O.call(this,e)),this;re.call(this,t);let r={...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)};return(0,u.eachItem)(n,r.type.length===0?e=>O.call(this,e,r):e=>r.type.forEach(t=>O.call(this,e,r,t))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t==`object`?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let n of t.rules){let t=n.rules.findIndex(t=>t.keyword===e);t>=0&&n.rules.splice(t,1)}return this}addFormat(e,t){return typeof t==`string`&&(t=new RegExp(t)),this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=`, `,dataVar:n=`data`}={}){return!e||e.length===0?`No errors`:e.map(e=>`${n}${e.instancePath} ${e.message}`).reduce((e,n)=>e+t+n)}$dataMetaSchema(e,t){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let r of t){let t=r.split(`/`).slice(1),i=e;for(let e of t)i=i[e];for(let e in n){let t=n[e];if(typeof t!=`object`)continue;let{$data:r}=t.definition,a=i[e];r&&a&&(i[e]=ae(a))}}return e}_removeAllSchemas(e,t){for(let n in e){let r=e[n];(!t||t.test(n))&&(typeof r==`string`?delete e[n]:r&&!r.meta&&(this._cache.delete(r.schema),delete e[n]))}}_addSchema(e,t,n,r=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof e==`object`)a=e[s];else if(this.opts.jtd)throw Error(`schema must be object`);else if(typeof e!=`boolean`)throw Error(`schema must be object or boolean`);let l=this._cache.get(e);if(l!==void 0)return l;n=(0,c.normalizeId)(a||n);let u=c.getSchemaRefs.call(this,e,n);return l=new o.SchemaEnv({schema:e,schemaId:s,meta:t,baseId:n,localRefs:u}),this._cache.set(l.schema,l),i&&!n.startsWith(`#`)&&(n&&this._checkUnique(n),this.refs[n]=l),r&&this.validateSchema(e,!0),l}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){
66
+ if(!(t instanceof c.Name))throw Error(`ajv implementation error`);let e=Array.isArray(n)?n:[n];return(0,c._)`${(0,i.checkDataTypes)(e,t,a.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function s(){if(r.validateSchema){let n=e.scopeValue(`validate$data`,{ref:r.validateSchema});return(0,c._)`!${n}(${t})`}return c.nil}}subschema(e,t){let n=(0,s.getSubschema)(this.it,e);(0,s.extendSubschemaData)(n,this.it,e),(0,s.extendSubschemaMode)(n,e);let r={...this.it,...n,items:void 0,props:void 0};return b(r,t),r}mergeEvaluated(e,t){let{it:n,gen:r}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=d.mergeEvaluated.props(r,e.props,n.props,t)),n.items!==!0&&e.items!==void 0&&(n.items=d.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){let{it:n,gen:r}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return r.if(t,()=>this.mergeEvaluated(e,c.Name)),!0}};e.KeywordCxt=pe;function me(e,t,n,r){let i=new pe(e,n,t);`code`in n?n.code(i,r):i.$data&&n.validate?(0,o.funcKeywordCode)(i,n):`macro`in n?(0,o.macroKeywordCode)(i,n):(n.compile||n.validate)&&(0,o.funcKeywordCode)(i,n)}let he=/^\/(?:[^~]|~0|~1)*$/,ge=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _e(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let i,a;if(e===``)return l.default.rootData;if(e[0]===`/`){if(!he.test(e))throw Error(`Invalid JSON-pointer: ${e}`);i=e,a=l.default.rootData}else{let o=ge.exec(e);if(!o)throw Error(`Invalid JSON-pointer: ${e}`);let s=+o[1];if(i=o[2],i===`#`){if(s>=t)throw Error(u(`property/index`,s));return r[t-s]}if(s>t)throw Error(u(`data`,s));if(a=n[t-s],!i)return a}let o=a,s=i.split(`/`);for(let e of s)e&&(a=(0,c._)`${a}${(0,c.getProperty)((0,d.unescapeJsonPointer)(e))}`,o=(0,c._)`${o} && ${a}`);return o;function u(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}e.getData=_e})),ka=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=class extends Error{constructor(e){super(`validation failed`),this.errors=e,this.ajv=this.validation=!0}}})),Aa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Da();e.default=class extends Error{constructor(e,n,r,i){super(i||`can't resolve reference ${r} from id ${n}`),this.missingRef=(0,t.resolveUrl)(e,n,r),this.missingSchema=(0,t.normalizeId)((0,t.getFullPath)(e,this.missingRef))}}})),ja=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.resolveSchema=e.getCompilingSchema=e.resolveRef=e.compileSchema=e.SchemaEnv=void 0;let t=K(),n=ka(),r=J(),i=Da(),a=q(),o=Oa();var s=class{constructor(e){this.refs={},this.dynamicAnchors={};let t;typeof e.schema==`object`&&(t=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=e.baseId??(0,i.normalizeId)(t?.[e.schemaId||`$id`]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=t?.$async,this.refs={}}};e.SchemaEnv=s;function c(e){let a=d.call(this,e);if(a)return a;let s=(0,i.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:c,lines:l}=this.opts.code,{ownProperties:u}=this.opts,f=new t.CodeGen(this.scope,{es5:c,lines:l,ownProperties:u}),p;e.$async&&(p=f.scopeValue(`Error`,{ref:n.default,code:(0,t._)`require("ajv/dist/runtime/validation_error").default`}));let m=f.scopeName(`validate`);e.validateName=m;let h={gen:f,allErrors:this.opts.allErrors,data:r.default.data,parentData:r.default.parentData,parentDataProperty:r.default.parentDataProperty,dataNames:[r.default.data],dataPathArr:[t.nil],dataLevel:0,dataTypes:[],definedProperties:/* @__PURE__ */ new Set,topSchemaRef:f.scopeValue(`schema`,this.opts.code.source===!0?{ref:e.schema,code:(0,t.stringify)(e.schema)}:{ref:e.schema}),validateName:m,ValidationError:p,schema:e.schema,schemaEnv:e,rootId:s,baseId:e.baseId||s,schemaPath:t.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?``:`#`),errorPath:(0,t._)`""`,opts:this.opts,self:this},g;try{this._compilations.add(e),(0,o.validateFunctionCode)(h),f.optimize(this.opts.code.optimize);let n=f.toString();g=`${f.scopeRefs(r.default.scope)}return ${n}`,this.opts.code.process&&(g=this.opts.code.process(g,e));let i=Function(`${r.default.self}`,`${r.default.scope}`,g)(this,this.scope.get());if(this.scope.value(m,{ref:i}),i.errors=null,i.schema=e.schema,i.schemaEnv=e,e.$async&&(i.$async=!0),this.opts.code.source===!0&&(i.source={validateName:m,validateCode:n,scopeValues:f._values}),this.opts.unevaluated){let{props:e,items:n}=h;i.evaluated={props:e instanceof t.Name?void 0:e,items:n instanceof t.Name?void 0:n,dynamicProps:e instanceof t.Name,dynamicItems:n instanceof t.Name},i.source&&(i.source.evaluated=(0,t.stringify)(i.evaluated))}return e.validate=i,e}catch(t){throw delete e.validate,delete e.validateName,g&&this.logger.error(`Error compiling schema, function code:`,g),t}finally{this._compilations.delete(e)}}e.compileSchema=c;function l(e,t,n){n=(0,i.resolveUrl)(this.opts.uriResolver,t,n);let r=e.refs[n];if(r)return r;let a=p.call(this,e,n);if(a===void 0){let r=e.localRefs?.[n],{schemaId:i}=this.opts;r&&(a=new s({schema:r,schemaId:i,root:e,baseId:t}))}if(a!==void 0)return e.refs[n]=u.call(this,a)}e.resolveRef=l;function u(e){return(0,i.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:c.call(this,e)}function d(e){for(let t of this._compilations)if(f(t,e))return t}e.getCompilingSchema=d;function f(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function p(e,t){let n;for(;typeof(n=this.refs[t])==`string`;)t=n;return n||this.schemas[t]||m.call(this,e,t)}function m(e,t){let n=this.opts.uriResolver.parse(t),r=(0,i._getFullPath)(this.opts.uriResolver,n),a=(0,i.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===a)return g.call(this,n,e);let o=(0,i.normalizeId)(r),l=this.refs[o]||this.schemas[o];if(typeof l==`string`){let t=m.call(this,e,l);return typeof t?.schema==`object`?g.call(this,n,t):void 0}if(typeof l?.schema==`object`){if(l.validate||c.call(this,l),o===(0,i.normalizeId)(t)){let{schema:t}=l,{schemaId:n}=this.opts,r=t[n];return r&&(a=(0,i.resolveUrl)(this.opts.uriResolver,a,r)),new s({schema:t,schemaId:n,root:e,baseId:a})}return g.call(this,n,l)}}e.resolveSchema=m;let h=/* @__PURE__ */ new Set([`properties`,`patternProperties`,`enum`,`dependencies`,`definitions`]);function g(e,{baseId:t,schema:n,root:r}){if(e.fragment?.[0]!==`/`)return;for(let r of e.fragment.slice(1).split(`/`)){if(typeof n==`boolean`)return;let e=n[(0,a.unescapeFragment)(r)];if(e===void 0)return;n=e;let o=typeof n==`object`&&n[this.opts.schemaId];!h.has(r)&&o&&(t=(0,i.resolveUrl)(this.opts.uriResolver,t,o))}let o;if(typeof n!=`boolean`&&n.$ref&&!(0,a.schemaHasRulesButRef)(n,this.RULES)){let e=(0,i.resolveUrl)(this.opts.uriResolver,t,n.$ref);o=m.call(this,r,e)}let{schemaId:c}=this.opts;if(o||=new s({schema:n,schemaId:c,root:r,baseId:t}),o.schema!==o.root.schema)return o}})),Ma=/* @__PURE__ */ P(((e,t)=>{t.exports={$id:`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`,description:`Meta-schema for $data reference (JSON AnySchema extension proposal)`,type:`object`,required:[`$data`],properties:{$data:{type:`string`,anyOf:[{format:`relative-json-pointer`},{format:`json-pointer`}]}},additionalProperties:!1}})),Na=/* @__PURE__ */ P(((e,t)=>{let n=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),r=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),i=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),a=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),o=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function s(e){let t=``,n=0,r=0;for(r=0;r<e.length;r++)if(n=e[r].charCodeAt(0),n!==48){if(!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r];break}for(r+=1;r<e.length;r++){if(n=e[r].charCodeAt(0),!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r]}return t}let c=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function l(e){return e.length=0,!0}function u(e,t,n){if(e.length){let r=s(e);if(r!==``)t.push(r);else return n.error=!0,!1;e.length=0}return!0}function d(e){let t=0,n={error:!1,address:``,zone:``},r=[],i=[],a=!1,o=!1,c=u;for(let s=0;s<e.length;s++){let u=e[s];if(u!==`[`&&u!==`]`){if(u===`:`){if(a===!0&&(o=!0),!c(i,r,n))break;if(++t>7){n.error=!0;break}s>0&&e[s-1]===`:`&&(a=!0),r.push(`:`);continue}if(u===`%`){if(!c(i,r,n))break;c=l}else{i.push(u);continue}}}return i.length&&(c===l?n.zone=i.join(``):o?r.push(i.join(``)):r.push(s(i))),n.address=r.join(``),n}function f(e){if(p(e,`:`)<2)return{host:e,isIPV6:!1};let t=d(e);if(t.error)return{host:e,isIPV6:!1};{let e=t.address,n=t.address;return t.zone&&(e+=`%`+t.zone,n+=`%25`+t.zone),{host:e,isIPV6:!0,escapedHost:n}}}function p(e,t){let n=0;for(let r=0;r<e.length;r++)e[r]===t&&n++;return n}function m(e){let t=e,n=[],r=-1,i=0;for(;i=t.length;){if(i===1){if(t===`.`)break;if(t===`/`){n.push(`/`);break}n.push(t);break}if(i===2){if(t[0]===`.`){if(t[1]===`.`)break;if(t[1]===`/`){t=t.slice(2);continue}}else if(t[0]===`/`&&(t[1]===`.`||t[1]===`/`)){n.push(`/`);break}}else if(i===3&&t===`/..`){n.length!==0&&n.pop(),n.push(`/`);break}if(t[0]===`.`){if(t[1]===`.`){if(t[2]===`/`){t=t.slice(3);continue}}else if(t[1]===`/`){t=t.slice(2);continue}}else if(t[0]===`/`&&t[1]===`.`){if(t[2]===`/`){t=t.slice(2);continue}if(t[2]===`.`&&t[3]===`/`){t=t.slice(3),n.length!==0&&n.pop();continue}}if((r=t.indexOf(`/`,1))===-1){n.push(t);break}n.push(t.slice(0,r)),t=t.slice(r)}return n.join(``)}let h={"@":`%40`,"/":`%2F`,"?":`%3F`,"#":`%23`,":":`%3A`},g=/[@/?#:]/g,_=/[@/?#]/g;function v(e,t){let n=t?_:g;return n.lastIndex=0,e.replace(n,e=>h[e])}function y(e,t=!1){if(e.indexOf(`%`)===-1)return e;let n=``;for(let r=0;r<e.length;r++){if(e[r]===`%`&&r+2<e.length){let o=e.slice(r+1,r+3);if(i(o)){let e=o.toUpperCase(),i=String.fromCharCode(parseInt(e,16));t&&a(i)?n+=i:n+=`%`+e,r+=2;continue}}n+=e[r]}return n}function b(e){let t=``;for(let n=0;n<e.length;n++){if(e[n]===`%`&&n+2<e.length){let r=e.slice(n+1,n+3);if(i(r)){let e=r.toUpperCase(),i=String.fromCharCode(parseInt(e,16));i!==`.`&&a(i)?t+=i:t+=`%`+e,n+=2;continue}}o(e[n])?t+=e[n]:t+=escape(e[n])}return t}function x(e){let t=``;for(let n=0;n<e.length;n++){if(e[n]===`%`&&n+2<e.length){let r=e.slice(n+1,n+3);if(i(r)){t+=`%`+r.toUpperCase(),n+=2;continue}}t+=escape(e[n])}return t}function S(e){let t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push(`@`)),e.host!==void 0){let n=unescape(e.host);if(!r(n)){let e=f(n);n=e.isIPV6===!0?`[${e.escapedHost}]`:v(n,!1)}t.push(n)}return(typeof e.port==`number`||typeof e.port==`string`)&&(t.push(`:`),t.push(String(e.port))),t.length?t.join(``):void 0}t.exports={nonSimpleDomain:c,recomposeAuthority:S,reescapeHostDelimiters:v,normalizePercentEncoding:y,normalizePathEncoding:b,escapePreservingEscapes:x,removeDotSegments:m,isIPv4:r,isUUID:n,normalizeIPv6:f,stringArrayToHexStripped:s}})),Pa=/* @__PURE__ */ P(((e,t)=>{let{isUUID:n}=Na(),r=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,i=[`http`,`https`,`ws`,`wss`,`urn`,`urn:uuid`];function a(e){return i.indexOf(e)!==-1}function o(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]===`w`||e.scheme[0]===`W`)&&(e.scheme[1]===`s`||e.scheme[1]===`S`)&&(e.scheme[2]===`s`||e.scheme[2]===`S`):!1}function s(e){return e.host||(e.error=e.error||`HTTP URIs must have a host.`),e}function c(e){let t=String(e.scheme).toLowerCase()===`https`;return(e.port===(t?443:80)||e.port===``)&&(e.port=void 0),e.path||=`/`,e}function l(e){return e.secure=o(e),e.resourceName=(e.path||`/`)+(e.query?`?`+e.query:``),e.path=void 0,e.query=void 0,e}function u(e){if((e.port===(o(e)?443:80)||e.port===``)&&(e.port=void 0),typeof e.secure==`boolean`&&(e.scheme=e.secure?`wss`:`ws`,e.secure=void 0),e.resourceName){let[t,n]=e.resourceName.split(`?`);e.path=t&&t!==`/`?t:void 0,e.query=n,e.resourceName=void 0}return e.fragment=void 0,e}function d(e,t){if(!e.path)return e.error=`URN can not be parsed`,e;let n=e.path.match(r);if(n){let r=t.scheme||e.scheme||`urn`;e.nid=n[1].toLowerCase(),e.nss=n[2];let i=y(`${r}:${t.nid||e.nid}`);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||`URN can not be parsed.`;return e}function f(e,t){if(e.nid===void 0)throw Error(`URN without nid cannot be serialized`);let n=t.scheme||e.scheme||`urn`,r=e.nid.toLowerCase(),i=y(`${n}:${t.nid||r}`);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${r||t.nid}:${o}`,t.skipEscape=!0,a}function p(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!n(r.uuid))&&(r.error=r.error||`UUID is not valid.`),r}function m(e){let t=e;return t.nss=(e.uuid||``).toLowerCase(),t}let h={scheme:`http`,domainHost:!0,parse:s,serialize:c},g={scheme:`https`,domainHost:h.domainHost,parse:s,serialize:c},_={scheme:`ws`,domainHost:!0,parse:l,serialize:u},v={http:h,https:g,ws:_,wss:{scheme:`wss`,domainHost:_.domainHost,parse:_.parse,serialize:_.serialize},urn:{scheme:`urn`,parse:d,serialize:f,skipNormalize:!0},"urn:uuid":{scheme:`urn:uuid`,parse:p,serialize:m,skipNormalize:!0}};Object.setPrototypeOf(v,null);function y(e){return e&&(v[e]||v[e.toLowerCase()])||void 0}t.exports={wsIsSecure:o,SCHEMES:v,isValidSchemeName:a,getSchemeHandler:y}})),Fa=/* @__PURE__ */ P(((e,t)=>{let{normalizeIPv6:n,removeDotSegments:r,recomposeAuthority:i,normalizePercentEncoding:a,normalizePathEncoding:o,escapePreservingEscapes:s,reescapeHostDelimiters:c,isIPv4:l,nonSimpleDomain:u}=Na(),{SCHEMES:d,getSchemeHandler:f}=Pa();function p(e,t){return typeof e==`string`?e=S(e,t):typeof e==`object`&&(e=x(_(e,t),t)),e}function m(e,t,n){let r=n?Object.assign({scheme:`null`},n):{scheme:`null`},i=h(x(e,r),x(t,r),r,!0);return r.skipEscape=!0,_(i,r)}function h(e,t,n,i){let a={};return i||(e=x(_(e,n),n),t=x(_(t,n),n)),n||={},!n.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.path?(t.path[0]===`/`?a.path=r(t.path):(a.path=(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?`/`+t.path:e.path?e.path.slice(0,e.path.lastIndexOf(`/`)+1)+t.path:t.path,a.path=r(a.path)),a.query=t.query):(a.path=e.path,a.query=t.query===void 0?e.query:t.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function g(e,t,n){let r=w(e,n),i=w(t,n);return r!==void 0&&i!==void 0&&r.toLowerCase()===i.toLowerCase()}function _(e,t){let n={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:``},o=Object.assign({},t),c=[],l=f(o.scheme||n.scheme);l&&l.serialize&&l.serialize(n,o),n.path!==void 0&&(o.skipEscape?n.path=a(n.path):(n.path=s(n.path),n.scheme!==void 0&&(n.path=n.path.split(`%3A`).join(`:`)))),o.reference!==`suffix`&&n.scheme&&c.push(n.scheme,`:`);let u=i(n);if(u!==void 0&&(o.reference!==`suffix`&&c.push(`//`),c.push(u),n.path&&n.path[0]!==`/`&&c.push(`/`)),n.path!==void 0){let e=n.path;!o.absolutePath&&(!l||!l.absolutePath)&&(e=r(e)),u===void 0&&e[0]===`/`&&e[1]===`/`&&(e=`/%2F`+e.slice(2)),c.push(e)}return n.query!==void 0&&c.push(`?`,n.query),n.fragment!==void 0&&c.push(`#`,n.fragment),c.join(``)}let v=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function y(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!==`/`)return`URI path must start with "/" when authority is present.`;if(typeof e.port==`number`&&(e.port<0||e.port>65535))return`URI port is malformed.`}function b(e,t){let r=Object.assign({},t),i={scheme:void 0,userinfo:void 0,host:``,port:void 0,path:``,query:void 0,fragment:void 0},a=!1,s=!1;r.reference===`suffix`&&(e=r.scheme?r.scheme+`:`+e:`//`+e);let d=e.match(v);if(d){i.scheme=d[1],i.userinfo=d[3],i.host=d[4],i.port=parseInt(d[5],10),i.path=d[6]||``,i.query=d[7],i.fragment=d[8],isNaN(i.port)&&(i.port=d[5]);let t=y(i,d);if(t!==void 0&&(i.error=i.error||t,a=!0),i.host){if(l(i.host)===!1){let e=n(i.host);i.host=e.host.toLowerCase(),s=e.isIPV6}else s=!0}i.reference=i.scheme===void 0&&i.userinfo===void 0&&i.host===void 0&&i.port===void 0&&i.query===void 0&&!i.path?`same-document`:i.scheme===void 0?`relative`:i.fragment===void 0?`absolute`:`uri`,r.reference&&r.reference!==`suffix`&&r.reference!==i.reference&&(i.error=i.error||`URI is not a `+r.reference+` reference.`);let p=f(r.scheme||i.scheme);if(!r.unicodeSupport&&(!p||!p.unicodeSupport)&&i.host&&(r.domainHost||p&&p.domainHost)&&s===!1&&u(i.host))try{i.host=URL.domainToASCII(i.host.toLowerCase())}catch(e){i.error=i.error||`Host's domain name can not be converted to ASCII: `+e}if((!p||p&&!p.skipNormalize)&&(e.indexOf(`%`)!==-1&&(i.scheme!==void 0&&(i.scheme=unescape(i.scheme)),i.host!==void 0&&(i.host=c(unescape(i.host),s))),i.path&&=o(i.path),i.fragment))try{i.fragment=encodeURI(decodeURIComponent(i.fragment))}catch{i.error=i.error||`URI malformed`}p&&p.parse&&p.parse(i,r)}else i.error=i.error||`URI can not be parsed.`;return{parsed:i,malformedAuthorityOrPort:a}}function x(e,t){return b(e,t).parsed}function S(e,t){return C(e,t).normalized}function C(e,t){let{parsed:n,malformedAuthorityOrPort:r}=b(e,t);return{normalized:r?e:_(n,t),malformedAuthorityOrPort:r}}function w(e,t){if(typeof e==`string`){let{normalized:n,malformedAuthorityOrPort:r}=C(e,t);return r?void 0:n}if(typeof e==`object`)return _(e,t)}let T={SCHEMES:d,normalize:p,resolve:m,resolveComponent:h,equal:g,serialize:_,parse:x};t.exports=T,t.exports.default=T,t.exports.fastUri=T})),Ia=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Fa();t.code=`require("ajv/dist/runtime/uri").default`,e.default=t})),La=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=void 0;var t=Oa();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return t.KeywordCxt}});var n=K();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return n.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return n.CodeGen}});let r=ka(),i=Aa(),a=ya(),o=ja(),s=K(),c=Da(),l=xa(),u=q(),d=Ma(),f=Ia(),p=(e,t)=>new RegExp(e,t);p.code=`new RegExp`;let m=[`removeAdditional`,`useDefaults`,`coerceTypes`],h=/* @__PURE__ */ new Set([`validate`,`serialize`,`parse`,`wrapper`,`root`,`schema`,`keyword`,`pattern`,`formats`,`validate$data`,`func`,`obj`,`Error`]),g={errorDataPath:``,format:"`validateFormats: false` can be used instead.",nullable:`"nullable" keyword is supported by default.`,jsonPointers:`Deprecated jsPropertySyntax can be used instead.`,extendRefs:`Deprecated ignoreKeywordsWithRef can be used instead.`,missingRefs:`Pass empty schema with $id that should be ignored to ajv.addSchema.`,processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:`"uniqueItems" keyword is always validated.`,unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:`Map is used as cache, schema object as key.`,serialize:`Map is used as cache, schema object as key.`,ajvErrors:`It is default now.`},_={ignoreKeywordsWithRef:``,jsPropertySyntax:``,unicode:`"minLength"/"maxLength" account for unicode characters by default.`};function v(e){let t=e.strict,n=e.code?.optimize,r=n===!0||n===void 0?1:n||0,i=e.code?.regExp??p,a=e.uriResolver??f.default;return{strictSchema:e.strictSchema??t??!0,strictNumbers:e.strictNumbers??t??!0,strictTypes:e.strictTypes??t??`log`,strictTuples:e.strictTuples??t??`log`,strictRequired:e.strictRequired??t??!1,code:e.code?{...e.code,optimize:r,regExp:i}:{optimize:r,regExp:i},loopRequired:e.loopRequired??200,loopEnum:e.loopEnum??200,meta:e.meta??!0,messages:e.messages??!0,inlineRefs:e.inlineRefs??!0,schemaId:e.schemaId??`$id`,addUsedSchema:e.addUsedSchema??!0,validateSchema:e.validateSchema??!0,validateFormats:e.validateFormats??!0,unicodeRegExp:e.unicodeRegExp??!0,int32range:e.int32range??!0,uriResolver:a}}var y=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=/* @__PURE__ */ new Set,this._loading={},this._cache=/* @__PURE__ */ new Map,e=this.opts={...e,...v(e)};let{es5:t,lines:n}=this.opts.code;this.scope=new s.ValueScope({scope:{},prefixes:h,es5:t,lines:n}),this.logger=E(e.logger);let r=e.validateFormats;e.validateFormats=!1,this.RULES=(0,a.getRules)(),b.call(this,g,e,`NOT SUPPORTED`),b.call(this,_,e,`DEPRECATED`,`warn`),this._metaOpts=T.call(this),e.formats&&C.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&w.call(this,e.keywords),typeof e.meta==`object`&&this.addMetaSchema(e.meta),S.call(this),e.validateFormats=r}_addVocabularies(){this.addKeyword(`$async`)}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:n}=this.opts,r=d;n===`id`&&(r={...d},r.id=r.$id,delete r.$id),t&&e&&this.addMetaSchema(r,r[n],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e==`object`?e[t]||e:void 0}validate(e,t){let n;if(typeof e==`string`){if(n=this.getSchema(e),!n)throw Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let r=n(t);return`$async`in n||(this.errors=n.errors),r}compile(e,t){let n=this._addSchema(e,t);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,t){if(typeof this.opts.loadSchema!=`function`)throw Error(`options.loadSchema should be a function`);let{loadSchema:n}=this.opts;return r.call(this,e,t);async function r(e,t){await a.call(this,e.$schema);let n=this._addSchema(e,t);return n.validate||o.call(this,n)}async function a(e){e&&!this.getSchema(e)&&await r.call(this,{$ref:e},!0)}async function o(e){try{return this._compileSchemaEnv(e)}catch(t){if(!(t instanceof i.default))throw t;return s.call(this,t),await c.call(this,t.missingSchema),o.call(this,e)}}function s({missingSchema:e,missingRef:t}){if(this.refs[e])throw Error(`AnySchema ${e} is loaded but ${t} cannot be resolved`)}async function c(e){let n=await l.call(this,e);this.refs[e]||await a.call(this,n.$schema),this.refs[e]||this.addSchema(n,e,t)}async function l(e){let t=this._loading[e];if(t)return t;try{return await(this._loading[e]=n(e))}finally{delete this._loading[e]}}}addSchema(e,t,n,r=this.opts.validateSchema){if(Array.isArray(e)){for(let t of e)this.addSchema(t,void 0,n,r);return this}let i;if(typeof e==`object`){let{schemaId:t}=this.opts;if(i=e[t],i!==void 0&&typeof i!=`string`)throw Error(`schema ${t} must be string`)}return t=(0,c.normalizeId)(t||i),this._checkUnique(t),this.schemas[t]=this._addSchema(e,n,t,r,!0),this}addMetaSchema(e,t,n=this.opts.validateSchema){return this.addSchema(e,t,!0,n),this}validateSchema(e,t){if(typeof e==`boolean`)return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!=`string`)throw Error(`$schema must be a string`);if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn(`meta-schema not available`),this.errors=null,!0;let r=this.validate(n,e);if(!r&&t){let e=`schema is invalid: `+this.errorsText();if(this.opts.validateSchema===`log`)this.logger.error(e);else throw Error(e)}return r}getSchema(e){let t;for(;typeof(t=x.call(this,e))==`string`;)e=t;if(t===void 0){let{schemaId:n}=this.opts,r=new o.SchemaEnv({schema:{},schemaId:n});if(t=o.resolveSchema.call(this,r,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case`undefined`:return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case`string`:{let t=x.call(this,e);return typeof t==`object`&&this._cache.delete(t.schema),delete this.schemas[e],delete this.refs[e],this}case`object`:{let t=e;this._cache.delete(t);let n=e[this.opts.schemaId];return n&&(n=(0,c.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw Error(`ajv.removeSchema: invalid parameter`)}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let n;if(typeof e==`string`)n=e,typeof t==`object`&&(this.logger.warn(`these parameters are deprecated, see docs for addKeyword`),t.keyword=n);else if(typeof e==`object`&&t===void 0){if(t=e,n=t.keyword,Array.isArray(n)&&!n.length)throw Error(`addKeywords: keyword must be string or non-empty array`)}else throw Error(`invalid addKeywords parameters`);if(O.call(this,n,t),!t)return(0,u.eachItem)(n,e=>k.call(this,e)),this;ne.call(this,t);let r={...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)};return(0,u.eachItem)(n,r.type.length===0?e=>k.call(this,e,r):e=>r.type.forEach(t=>k.call(this,e,r,t))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t==`object`?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let n of t.rules){let t=n.rules.findIndex(t=>t.keyword===e);t>=0&&n.rules.splice(t,1)}return this}addFormat(e,t){return typeof t==`string`&&(t=new RegExp(t)),this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=`, `,dataVar:n=`data`}={}){return!e||e.length===0?`No errors`:e.map(e=>`${n}${e.instancePath} ${e.message}`).reduce((e,n)=>e+t+n)}$dataMetaSchema(e,t){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let r of t){let t=r.split(`/`).slice(1),i=e;for(let e of t)i=i[e];for(let e in n){let t=n[e];if(typeof t!=`object`)continue;let{$data:r}=t.definition,a=i[e];r&&a&&(i[e]=ie(a))}}return e}_removeAllSchemas(e,t){for(let n in e){let r=e[n];(!t||t.test(n))&&(typeof r==`string`?delete e[n]:r&&!r.meta&&(this._cache.delete(r.schema),delete e[n]))}}_addSchema(e,t,n,r=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof e==`object`)a=e[s];else if(this.opts.jtd)throw Error(`schema must be object`);else if(typeof e!=`boolean`)throw Error(`schema must be object or boolean`);let l=this._cache.get(e);if(l!==void 0)return l;n=(0,c.normalizeId)(a||n);let u=c.getSchemaRefs.call(this,e,n);return l=new o.SchemaEnv({schema:e,schemaId:s,meta:t,baseId:n,localRefs:u}),this._cache.set(l.schema,l),i&&!n.startsWith(`#`)&&(n&&this._checkUnique(n),this.refs[n]=l),r&&this.validateSchema(e,!0),l}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){
67
67
  /* istanbul ignore if */
68
- if(e.meta?this._compileMetaSchema(e):o.compileSchema.call(this,e),!e.validate)throw Error(`ajv implementation error`);return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,e)}finally{this.opts=t}}};y.ValidationError=r.default,y.MissingRefError=i.default,e.default=y;function b(e,t,n,r=`error`){for(let i in e){let a=i;a in t&&this.logger[r](`${n}: option ${i}. ${e[a]}`)}}function x(e){return e=(0,c.normalizeId)(e),this.schemas[e]||this.refs[e]}function S(){let e=this.opts.schemas;if(e){if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}}function C(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function w(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn(`keywords option as map is deprecated, pass array`);for(let t in e){let n=e[t];n.keyword||=t,this.addKeyword(n)}}function T(){let e={...this.opts};for(let t of m)delete e[t];return e}let ee={log(){},warn(){},error(){}};function E(e){if(e===!1)return ee;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error(`logger must implement log, warn and error methods`)}let te=/^[a-z_$][a-z0-9_$:-]*$/i;function D(e,t){let{RULES:n}=this;if((0,u.eachItem)(e,e=>{if(n.keywords[e])throw Error(`Keyword ${e} is already defined`);if(!te.test(e))throw Error(`Keyword ${e} has invalid name`)}),t&&t.$data&&!(`code`in t||`validate`in t))throw Error(`$data keyword must have "code" or "validate" function`)}function O(e,t,n){var r;let i=t?.post;if(n&&i)throw Error(`keyword with "post" flag cannot have "type"`);let{RULES:a}=this,o=i?a.post:a.rules.find(({type:e})=>e===n);if(o||(o={type:n,rules:[]},a.rules.push(o)),a.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)}};t.before?ne.call(this,o,s,t.before):o.rules.push(s),a.all[e]=s,(r=t.implements)==null||r.forEach(e=>this.addKeyword(e))}function ne(e,t,n){let r=e.rules.findIndex(e=>e.keyword===n);r>=0?e.rules.splice(r,0,t):(e.rules.push(t),this.logger.warn(`rule ${n} is not defined`))}function re(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=ae(t)),e.validateSchema=this.compile(t,!0))}let ie={$ref:`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`};function ae(e){return{anyOf:[e,ie]}}})),La=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`id`,code(){throw Error(`NOT SUPPORTED: keyword "id", use "$id" for schema ID`)}}})),Ra=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.callRef=e.getValidate=void 0;let t=ka(),n=Y(),r=K(),i=J(),a=Aa(),o=q(),s={keyword:`$ref`,schemaType:`string`,code(e){let{gen:n,schema:i,it:o}=e,{baseId:s,schemaEnv:u,validateName:d,opts:f,self:p}=o,{root:m}=u;if((i===`#`||i===`#/`)&&s===m.baseId)return g();let h=a.resolveRef.call(p,m,s,i);if(h===void 0)throw new t.default(o.opts.uriResolver,s,i);return h instanceof a.SchemaEnv?_(h):v(h);function g(){if(u===m)return l(e,d,u,u.$async);let t=n.scopeValue(`root`,{ref:m});return l(e,(0,r._)`${t}.validate`,m,m.$async)}function _(t){l(e,c(e,t),t,t.$async)}function v(t){let a=n.scopeValue(`schema`,f.code.source===!0?{ref:t,code:(0,r.stringify)(t)}:{ref:t}),o=n.name(`valid`),s=e.subschema({schema:t,dataTypes:[],schemaPath:r.nil,topSchemaRef:a,errSchemaPath:i},o);e.mergeEvaluated(s),e.ok(o)}}};function c(e,t){let{gen:n}=e;return t.validate?n.scopeValue(`validate`,{ref:t.validate}):(0,r._)`${n.scopeValue(`wrapper`,{ref:t})}.validate`}e.getValidate=c;function l(e,t,a,s){let{gen:c,it:l}=e,{allErrors:u,schemaEnv:d,opts:f}=l,p=f.passContext?i.default.this:r.nil;s?m():h();function m(){if(!d.$async)throw Error(`async schema referenced by sync schema`);let i=c.let(`valid`);c.try(()=>{c.code((0,r._)`await ${(0,n.callValidateCode)(e,t,p)}`),_(t),u||c.assign(i,!0)},e=>{c.if((0,r._)`!(${e} instanceof ${l.ValidationError})`,()=>c.throw(e)),g(e),u||c.assign(i,!1)}),e.ok(i)}function h(){e.result((0,n.callValidateCode)(e,t,p),()=>_(t),()=>g(t))}function g(e){let t=(0,r._)`${e}.errors`;c.assign(i.default.vErrors,(0,r._)`${i.default.vErrors} === null ? ${t} : ${i.default.vErrors}.concat(${t})`),c.assign(i.default.errors,(0,r._)`${i.default.vErrors}.length`)}function _(e){if(!l.opts.unevaluated)return;let t=a?.validate?.evaluated;if(l.props!==!0){if(t&&!t.dynamicProps)t.props!==void 0&&(l.props=o.mergeEvaluated.props(c,t.props,l.props));else{let t=c.var(`props`,(0,r._)`${e}.evaluated.props`);l.props=o.mergeEvaluated.props(c,t,l.props,r.Name)}}if(l.items!==!0){if(t&&!t.dynamicItems)t.items!==void 0&&(l.items=o.mergeEvaluated.items(c,t.items,l.items));else{let t=c.var(`items`,(0,r._)`${e}.evaluated.items`);l.items=o.mergeEvaluated.items(c,t,l.items,r.Name)}}}}e.callRef=l,e.default=s})),za=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=La(),n=Ra();e.default=[`$schema`,`$id`,`$defs`,`$vocabulary`,{keyword:`$comment`},`definitions`,t.default,n.default]})),Ba=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=t.operators,r={maximum:{okStr:`<=`,ok:n.LTE,fail:n.GT},minimum:{okStr:`>=`,ok:n.GTE,fail:n.LT},exclusiveMaximum:{okStr:`<`,ok:n.LT,fail:n.GTE},exclusiveMinimum:{okStr:`>`,ok:n.GT,fail:n.LTE}};e.default={keyword:Object.keys(r),type:`number`,schemaType:`number`,$data:!0,error:{message:({keyword:e,schemaCode:n})=>(0,t.str)`must be ${r[e].okStr} ${n}`,params:({keyword:e,schemaCode:n})=>(0,t._)`{comparison: ${r[e].okStr}, limit: ${n}}`},code(e){let{keyword:n,data:i,schemaCode:a}=e;e.fail$data((0,t._)`${i} ${r[n].fail} ${a} || isNaN(${i})`)}}})),Va=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:`multipleOf`,type:`number`,schemaType:`number`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,t._)`{multipleOf: ${e}}`},code(e){let{gen:n,data:r,schemaCode:i,it:a}=e,o=a.opts.multipleOfPrecision,s=n.let(`res`),c=o?(0,t._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${o}`:(0,t._)`${s} !== parseInt(${s})`;e.fail$data((0,t._)`(${i} === 0 || (${s} = ${r}/${i}, ${c}))`)}}})),Ha=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});function t(e){let t=e.length,n=0,r=0,i;for(;r<t;)n++,i=e.charCodeAt(r++),i>=55296&&i<=56319&&r<t&&(i=e.charCodeAt(r),(i&64512)==56320&&r++);return n}e.default=t,t.code=`require("ajv/dist/runtime/ucs2length").default`})),Ua=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ha();e.default={keyword:[`maxLength`,`minLength`],type:`string`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxLength`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} characters`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:i,data:a,schemaCode:o,it:s}=e,c=i===`maxLength`?t.operators.GT:t.operators.LT,l=s.opts.unicode===!1?(0,t._)`${a}.length`:(0,t._)`${(0,n.useFunc)(e.gen,r.default)}(${a})`;e.fail$data((0,t._)`${l} ${c} ${o}`)}}})),Wa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=q(),r=K();e.default={keyword:`pattern`,type:`string`,schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,r.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,r._)`{pattern: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e,u=l.opts.unicodeRegExp?`u`:``;if(o){let{regExp:t}=l.opts.code,o=t.code===`new RegExp`?(0,r._)`new RegExp`:(0,n.useFunc)(i,t),s=i.let(`valid`);i.try(()=>i.assign(s,(0,r._)`${o}(${c}, ${u}).test(${a})`),()=>i.assign(s,!1)),e.fail$data((0,r._)`!${s}`)}else{let n=(0,t.usePattern)(e,s);e.fail$data((0,r._)`!${n}.test(${a})`)}}}})),Ga=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:[`maxProperties`,`minProperties`],type:`object`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxProperties`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} properties`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxProperties`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`Object.keys(${r}).length ${a} ${i}`)}}})),Ka=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=q();e.default={keyword:`required`,type:`object`,schemaType:`array`,$data:!0,error:{message:({params:{missingProperty:e}})=>(0,n.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,n._)`{missingProperty: ${e}}`},code(e){let{gen:i,schema:a,schemaCode:o,data:s,$data:c,it:l}=e,{opts:u}=l;if(!c&&a.length===0)return;let d=a.length>=u.loopRequired;if(l.allErrors?f():p(),u.strictRequired){let t=e.parentSchema.properties,{definedProperties:n}=e.it;for(let e of a)if(t?.[e]===void 0&&!n.has(e)){let t=`required property "${e}" is not defined at "${l.schemaEnv.baseId+l.errSchemaPath}" (strictRequired)`;(0,r.checkStrictMode)(l,t,l.opts.strictRequired)}}function f(){if(d||c)e.block$data(n.nil,m);else for(let n of a)(0,t.checkReportMissingProp)(e,n)}function p(){let n=i.let(`missing`);if(d||c){let t=i.let(`valid`,!0);e.block$data(t,()=>h(n,t)),e.ok(t)}else i.if((0,t.checkMissingProp)(e,a,n)),(0,t.reportMissingProp)(e,n),i.else()}function m(){i.forOf(`prop`,o,n=>{e.setParams({missingProperty:n}),i.if((0,t.noPropertyInData)(i,s,n,u.ownProperties),()=>e.error())})}function h(r,a){e.setParams({missingProperty:r}),i.forOf(r,o,()=>{i.assign(a,(0,t.propertyInData)(i,s,r,u.ownProperties)),i.if((0,n.not)(a),()=>{e.error(),i.break()})},n.nil)}}}})),qa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:[`maxItems`,`minItems`],type:`array`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxItems`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} items`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxItems`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`${r}.length ${a} ${i}`)}}})),Ja=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=wa();t.code=`require("ajv/dist/runtime/equal").default`,e.default=t})),Ya=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=ba(),n=K(),r=q(),i=Ja();e.default={keyword:`uniqueItems`,type:`array`,schemaType:`boolean`,$data:!0,error:{message:({params:{i:e,j:t}})=>(0,n.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,n._)`{i: ${e}, j: ${t}}`},code(e){let{gen:a,data:o,$data:s,schema:c,parentSchema:l,schemaCode:u,it:d}=e;if(!s&&!c)return;let f=a.let(`valid`),p=l.items?(0,t.getSchemaTypes)(l.items):[];e.block$data(f,m,(0,n._)`${u} === false`),e.ok(f);function m(){let t=a.let(`i`,(0,n._)`${o}.length`),r=a.let(`j`);e.setParams({i:t,j:r}),a.assign(f,!0),a.if((0,n._)`${t} > 1`,()=>(h()?g:_)(t,r))}function h(){return p.length>0&&!p.some(e=>e===`object`||e===`array`)}function g(r,i){let s=a.name(`item`),c=(0,t.checkDataTypes)(p,s,d.opts.strictNumbers,t.DataType.Wrong),l=a.const(`indices`,(0,n._)`{}`);a.for((0,n._)`;${r}--;`,()=>{a.let(s,(0,n._)`${o}[${r}]`),a.if(c,(0,n._)`continue`),p.length>1&&a.if((0,n._)`typeof ${s} == "string"`,(0,n._)`${s} += "_"`),a.if((0,n._)`typeof ${l}[${s}] == "number"`,()=>{a.assign(i,(0,n._)`${l}[${s}]`),e.error(),a.assign(f,!1).break()}).code((0,n._)`${l}[${s}] = ${r}`)})}function _(t,s){let c=(0,r.useFunc)(a,i.default),l=a.name(`outer`);a.label(l).for((0,n._)`;${t}--;`,()=>a.for((0,n._)`${s} = ${t}; ${s}--;`,()=>a.if((0,n._)`${c}(${o}[${t}], ${o}[${s}])`,()=>{e.error(),a.assign(f,!1).break(l)})))}}}})),Xa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ja();e.default={keyword:`const`,$data:!0,error:{message:`must be equal to constant`,params:({schemaCode:e})=>(0,t._)`{allowedValue: ${e}}`},code(e){let{gen:i,data:a,$data:o,schemaCode:s,schema:c}=e;o||c&&typeof c==`object`?e.fail$data((0,t._)`!${(0,n.useFunc)(i,r.default)}(${a}, ${s})`):e.fail((0,t._)`${c} !== ${a}`)}}})),Za=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ja();e.default={keyword:`enum`,schemaType:`array`,$data:!0,error:{message:`must be equal to one of the allowed values`,params:({schemaCode:e})=>(0,t._)`{allowedValues: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e;if(!o&&s.length===0)throw Error(`enum must have non-empty array`);let u=s.length>=l.opts.loopEnum,d,f=()=>d??=(0,n.useFunc)(i,r.default),p;if(u||o)p=i.let(`valid`),e.block$data(p,m);else{
68
+ if(e.meta?this._compileMetaSchema(e):o.compileSchema.call(this,e),!e.validate)throw Error(`ajv implementation error`);return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,e)}finally{this.opts=t}}};y.ValidationError=r.default,y.MissingRefError=i.default,e.default=y;function b(e,t,n,r=`error`){for(let i in e){let a=i;a in t&&this.logger[r](`${n}: option ${i}. ${e[a]}`)}}function x(e){return e=(0,c.normalizeId)(e),this.schemas[e]||this.refs[e]}function S(){let e=this.opts.schemas;if(e){if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}}function C(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function w(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn(`keywords option as map is deprecated, pass array`);for(let t in e){let n=e[t];n.keyword||=t,this.addKeyword(n)}}function T(){let e={...this.opts};for(let t of m)delete e[t];return e}let ee={log(){},warn(){},error(){}};function E(e){if(e===!1)return ee;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error(`logger must implement log, warn and error methods`)}let D=/^[a-z_$][a-z0-9_$:-]*$/i;function O(e,t){let{RULES:n}=this;if((0,u.eachItem)(e,e=>{if(n.keywords[e])throw Error(`Keyword ${e} is already defined`);if(!D.test(e))throw Error(`Keyword ${e} has invalid name`)}),t&&t.$data&&!(`code`in t||`validate`in t))throw Error(`$data keyword must have "code" or "validate" function`)}function k(e,t,n){var r;let i=t?.post;if(n&&i)throw Error(`keyword with "post" flag cannot have "type"`);let{RULES:a}=this,o=i?a.post:a.rules.find(({type:e})=>e===n);if(o||(o={type:n,rules:[]},a.rules.push(o)),a.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)}};t.before?te.call(this,o,s,t.before):o.rules.push(s),a.all[e]=s,(r=t.implements)==null||r.forEach(e=>this.addKeyword(e))}function te(e,t,n){let r=e.rules.findIndex(e=>e.keyword===n);r>=0?e.rules.splice(r,0,t):(e.rules.push(t),this.logger.warn(`rule ${n} is not defined`))}function ne(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=ie(t)),e.validateSchema=this.compile(t,!0))}let re={$ref:`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`};function ie(e){return{anyOf:[e,re]}}})),Ra=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`id`,code(){throw Error(`NOT SUPPORTED: keyword "id", use "$id" for schema ID`)}}})),za=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.callRef=e.getValidate=void 0;let t=Aa(),n=Y(),r=K(),i=J(),a=ja(),o=q(),s={keyword:`$ref`,schemaType:`string`,code(e){let{gen:n,schema:i,it:o}=e,{baseId:s,schemaEnv:u,validateName:d,opts:f,self:p}=o,{root:m}=u;if((i===`#`||i===`#/`)&&s===m.baseId)return g();let h=a.resolveRef.call(p,m,s,i);if(h===void 0)throw new t.default(o.opts.uriResolver,s,i);return h instanceof a.SchemaEnv?_(h):v(h);function g(){if(u===m)return l(e,d,u,u.$async);let t=n.scopeValue(`root`,{ref:m});return l(e,(0,r._)`${t}.validate`,m,m.$async)}function _(t){l(e,c(e,t),t,t.$async)}function v(t){let a=n.scopeValue(`schema`,f.code.source===!0?{ref:t,code:(0,r.stringify)(t)}:{ref:t}),o=n.name(`valid`),s=e.subschema({schema:t,dataTypes:[],schemaPath:r.nil,topSchemaRef:a,errSchemaPath:i},o);e.mergeEvaluated(s),e.ok(o)}}};function c(e,t){let{gen:n}=e;return t.validate?n.scopeValue(`validate`,{ref:t.validate}):(0,r._)`${n.scopeValue(`wrapper`,{ref:t})}.validate`}e.getValidate=c;function l(e,t,a,s){let{gen:c,it:l}=e,{allErrors:u,schemaEnv:d,opts:f}=l,p=f.passContext?i.default.this:r.nil;s?m():h();function m(){if(!d.$async)throw Error(`async schema referenced by sync schema`);let i=c.let(`valid`);c.try(()=>{c.code((0,r._)`await ${(0,n.callValidateCode)(e,t,p)}`),_(t),u||c.assign(i,!0)},e=>{c.if((0,r._)`!(${e} instanceof ${l.ValidationError})`,()=>c.throw(e)),g(e),u||c.assign(i,!1)}),e.ok(i)}function h(){e.result((0,n.callValidateCode)(e,t,p),()=>_(t),()=>g(t))}function g(e){let t=(0,r._)`${e}.errors`;c.assign(i.default.vErrors,(0,r._)`${i.default.vErrors} === null ? ${t} : ${i.default.vErrors}.concat(${t})`),c.assign(i.default.errors,(0,r._)`${i.default.vErrors}.length`)}function _(e){if(!l.opts.unevaluated)return;let t=a?.validate?.evaluated;if(l.props!==!0){if(t&&!t.dynamicProps)t.props!==void 0&&(l.props=o.mergeEvaluated.props(c,t.props,l.props));else{let t=c.var(`props`,(0,r._)`${e}.evaluated.props`);l.props=o.mergeEvaluated.props(c,t,l.props,r.Name)}}if(l.items!==!0){if(t&&!t.dynamicItems)t.items!==void 0&&(l.items=o.mergeEvaluated.items(c,t.items,l.items));else{let t=c.var(`items`,(0,r._)`${e}.evaluated.items`);l.items=o.mergeEvaluated.items(c,t,l.items,r.Name)}}}}e.callRef=l,e.default=s})),Ba=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Ra(),n=za();e.default=[`$schema`,`$id`,`$defs`,`$vocabulary`,{keyword:`$comment`},`definitions`,t.default,n.default]})),Va=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=t.operators,r={maximum:{okStr:`<=`,ok:n.LTE,fail:n.GT},minimum:{okStr:`>=`,ok:n.GTE,fail:n.LT},exclusiveMaximum:{okStr:`<`,ok:n.LT,fail:n.GTE},exclusiveMinimum:{okStr:`>`,ok:n.GT,fail:n.LTE}};e.default={keyword:Object.keys(r),type:`number`,schemaType:`number`,$data:!0,error:{message:({keyword:e,schemaCode:n})=>(0,t.str)`must be ${r[e].okStr} ${n}`,params:({keyword:e,schemaCode:n})=>(0,t._)`{comparison: ${r[e].okStr}, limit: ${n}}`},code(e){let{keyword:n,data:i,schemaCode:a}=e;e.fail$data((0,t._)`${i} ${r[n].fail} ${a} || isNaN(${i})`)}}})),Ha=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:`multipleOf`,type:`number`,schemaType:`number`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,t._)`{multipleOf: ${e}}`},code(e){let{gen:n,data:r,schemaCode:i,it:a}=e,o=a.opts.multipleOfPrecision,s=n.let(`res`),c=o?(0,t._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${o}`:(0,t._)`${s} !== parseInt(${s})`;e.fail$data((0,t._)`(${i} === 0 || (${s} = ${r}/${i}, ${c}))`)}}})),Ua=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});function t(e){let t=e.length,n=0,r=0,i;for(;r<t;)n++,i=e.charCodeAt(r++),i>=55296&&i<=56319&&r<t&&(i=e.charCodeAt(r),(i&64512)==56320&&r++);return n}e.default=t,t.code=`require("ajv/dist/runtime/ucs2length").default`})),Wa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ua();e.default={keyword:[`maxLength`,`minLength`],type:`string`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxLength`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} characters`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:i,data:a,schemaCode:o,it:s}=e,c=i===`maxLength`?t.operators.GT:t.operators.LT,l=s.opts.unicode===!1?(0,t._)`${a}.length`:(0,t._)`${(0,n.useFunc)(e.gen,r.default)}(${a})`;e.fail$data((0,t._)`${l} ${c} ${o}`)}}})),Ga=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=q(),r=K();e.default={keyword:`pattern`,type:`string`,schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,r.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,r._)`{pattern: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e,u=l.opts.unicodeRegExp?`u`:``;if(o){let{regExp:t}=l.opts.code,o=t.code===`new RegExp`?(0,r._)`new RegExp`:(0,n.useFunc)(i,t),s=i.let(`valid`);i.try(()=>i.assign(s,(0,r._)`${o}(${c}, ${u}).test(${a})`),()=>i.assign(s,!1)),e.fail$data((0,r._)`!${s}`)}else{let n=(0,t.usePattern)(e,s);e.fail$data((0,r._)`!${n}.test(${a})`)}}}})),Ka=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:[`maxProperties`,`minProperties`],type:`object`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxProperties`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} properties`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxProperties`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`Object.keys(${r}).length ${a} ${i}`)}}})),qa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=q();e.default={keyword:`required`,type:`object`,schemaType:`array`,$data:!0,error:{message:({params:{missingProperty:e}})=>(0,n.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,n._)`{missingProperty: ${e}}`},code(e){let{gen:i,schema:a,schemaCode:o,data:s,$data:c,it:l}=e,{opts:u}=l;if(!c&&a.length===0)return;let d=a.length>=u.loopRequired;if(l.allErrors?f():p(),u.strictRequired){let t=e.parentSchema.properties,{definedProperties:n}=e.it;for(let e of a)if(t?.[e]===void 0&&!n.has(e)){let t=`required property "${e}" is not defined at "${l.schemaEnv.baseId+l.errSchemaPath}" (strictRequired)`;(0,r.checkStrictMode)(l,t,l.opts.strictRequired)}}function f(){if(d||c)e.block$data(n.nil,m);else for(let n of a)(0,t.checkReportMissingProp)(e,n)}function p(){let n=i.let(`missing`);if(d||c){let t=i.let(`valid`,!0);e.block$data(t,()=>h(n,t)),e.ok(t)}else i.if((0,t.checkMissingProp)(e,a,n)),(0,t.reportMissingProp)(e,n),i.else()}function m(){i.forOf(`prop`,o,n=>{e.setParams({missingProperty:n}),i.if((0,t.noPropertyInData)(i,s,n,u.ownProperties),()=>e.error())})}function h(r,a){e.setParams({missingProperty:r}),i.forOf(r,o,()=>{i.assign(a,(0,t.propertyInData)(i,s,r,u.ownProperties)),i.if((0,n.not)(a),()=>{e.error(),i.break()})},n.nil)}}}})),Ja=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:[`maxItems`,`minItems`],type:`array`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxItems`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} items`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxItems`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`${r}.length ${a} ${i}`)}}})),Ya=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Ta();t.code=`require("ajv/dist/runtime/equal").default`,e.default=t})),Xa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=xa(),n=K(),r=q(),i=Ya();e.default={keyword:`uniqueItems`,type:`array`,schemaType:`boolean`,$data:!0,error:{message:({params:{i:e,j:t}})=>(0,n.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,n._)`{i: ${e}, j: ${t}}`},code(e){let{gen:a,data:o,$data:s,schema:c,parentSchema:l,schemaCode:u,it:d}=e;if(!s&&!c)return;let f=a.let(`valid`),p=l.items?(0,t.getSchemaTypes)(l.items):[];e.block$data(f,m,(0,n._)`${u} === false`),e.ok(f);function m(){let t=a.let(`i`,(0,n._)`${o}.length`),r=a.let(`j`);e.setParams({i:t,j:r}),a.assign(f,!0),a.if((0,n._)`${t} > 1`,()=>(h()?g:_)(t,r))}function h(){return p.length>0&&!p.some(e=>e===`object`||e===`array`)}function g(r,i){let s=a.name(`item`),c=(0,t.checkDataTypes)(p,s,d.opts.strictNumbers,t.DataType.Wrong),l=a.const(`indices`,(0,n._)`{}`);a.for((0,n._)`;${r}--;`,()=>{a.let(s,(0,n._)`${o}[${r}]`),a.if(c,(0,n._)`continue`),p.length>1&&a.if((0,n._)`typeof ${s} == "string"`,(0,n._)`${s} += "_"`),a.if((0,n._)`typeof ${l}[${s}] == "number"`,()=>{a.assign(i,(0,n._)`${l}[${s}]`),e.error(),a.assign(f,!1).break()}).code((0,n._)`${l}[${s}] = ${r}`)})}function _(t,s){let c=(0,r.useFunc)(a,i.default),l=a.name(`outer`);a.label(l).for((0,n._)`;${t}--;`,()=>a.for((0,n._)`${s} = ${t}; ${s}--;`,()=>a.if((0,n._)`${c}(${o}[${t}], ${o}[${s}])`,()=>{e.error(),a.assign(f,!1).break(l)})))}}}})),Za=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ya();e.default={keyword:`const`,$data:!0,error:{message:`must be equal to constant`,params:({schemaCode:e})=>(0,t._)`{allowedValue: ${e}}`},code(e){let{gen:i,data:a,$data:o,schemaCode:s,schema:c}=e;o||c&&typeof c==`object`?e.fail$data((0,t._)`!${(0,n.useFunc)(i,r.default)}(${a}, ${s})`):e.fail((0,t._)`${c} !== ${a}`)}}})),Qa=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Ya();e.default={keyword:`enum`,schemaType:`array`,$data:!0,error:{message:`must be equal to one of the allowed values`,params:({schemaCode:e})=>(0,t._)`{allowedValues: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e;if(!o&&s.length===0)throw Error(`enum must have non-empty array`);let u=s.length>=l.opts.loopEnum,d,f=()=>d??=(0,n.useFunc)(i,r.default),p;if(u||o)p=i.let(`valid`),e.block$data(p,m);else{
69
69
  /* istanbul ignore if */
70
- if(!Array.isArray(s))throw Error(`ajv implementation error`);let e=i.const(`vSchema`,c);p=(0,t.or)(...s.map((t,n)=>h(e,n)))}e.pass(p);function m(){i.assign(p,!1),i.forOf(`v`,c,e=>i.if((0,t._)`${f()}(${a}, ${e})`,()=>i.assign(p,!0).break()))}function h(e,n){let r=s[n];return typeof r==`object`&&r?(0,t._)`${f()}(${a}, ${e}[${n}])`:(0,t._)`${a} === ${r}`}}}})),Qa=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Ba(),n=Va(),r=Ua(),i=Wa(),a=Ga(),o=Ka(),s=qa(),c=Ya(),l=Xa(),u=Za();e.default=[t.default,n.default,r.default,i.default,a.default,o.default,s.default,c.default,{keyword:`type`,schemaType:[`string`,`array`]},{keyword:`nullable`,schemaType:`boolean`},l.default,u.default]})),$a=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateAdditionalItems=void 0;let t=K(),n=q(),r={keyword:`additionalItems`,type:`array`,schemaType:[`boolean`,`object`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{parentSchema:t,it:r}=e,{items:a}=t;if(!Array.isArray(a)){(0,n.checkStrictMode)(r,`"additionalItems" is ignored when "items" is not an array of schemas`);return}i(e,a)}};function i(e,r){let{gen:i,schema:a,data:o,keyword:s,it:c}=e;c.items=!0;let l=i.const(`len`,(0,t._)`${o}.length`);if(a===!1)e.setParams({len:r.length}),e.pass((0,t._)`${l} <= ${r.length}`);else if(typeof a==`object`&&!(0,n.alwaysValidSchema)(c,a)){let n=i.var(`valid`,(0,t._)`${l} <= ${r.length}`);i.if((0,t.not)(n),()=>u(n)),e.ok(n)}function u(a){i.forRange(`i`,r.length,l,r=>{e.subschema({keyword:s,dataProp:r,dataPropType:n.Type.Num},a),c.allErrors||i.if((0,t.not)(a),()=>i.break())})}}e.validateAdditionalItems=i,e.default=r})),eo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateTuple=void 0;let t=K(),n=q(),r=Y(),i={keyword:`items`,type:`array`,schemaType:[`object`,`array`,`boolean`],before:`uniqueItems`,code(e){let{schema:t,it:i}=e;if(Array.isArray(t))return a(e,`additionalItems`,t);i.items=!0,!(0,n.alwaysValidSchema)(i,t)&&e.ok((0,r.validateArray)(e))}};function a(e,r,i=e.schema){let{gen:a,parentSchema:o,data:s,keyword:c,it:l}=e;f(o),l.opts.unevaluated&&i.length&&l.items!==!0&&(l.items=n.mergeEvaluated.items(a,i.length,l.items));let u=a.name(`valid`),d=a.const(`len`,(0,t._)`${s}.length`);i.forEach((r,i)=>{(0,n.alwaysValidSchema)(l,r)||(a.if((0,t._)`${d} > ${i}`,()=>e.subschema({keyword:c,schemaProp:i,dataProp:i},u)),e.ok(u))});function f(e){let{opts:t,errSchemaPath:a}=l,o=i.length,s=o===e.minItems&&(o===e.maxItems||e[r]===!1);if(t.strictTuples&&!s){let e=`"${c}" is ${o}-tuple, but minItems or maxItems/${r} are not specified or different at path "${a}"`;(0,n.checkStrictMode)(l,e,t.strictTuples)}}}e.validateTuple=a,e.default=i})),to=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=eo();e.default={keyword:`prefixItems`,type:`array`,schemaType:[`array`],before:`uniqueItems`,code:e=>(0,t.validateTuple)(e,`items`)}})),no=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Y(),i=$a();e.default={keyword:`items`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{schema:t,parentSchema:a,it:o}=e,{prefixItems:s}=a;o.items=!0,!(0,n.alwaysValidSchema)(o,t)&&(s?(0,i.validateAdditionalItems)(e,s):e.ok((0,r.validateArray)(e)))}}})),ro=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`contains`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,trackErrors:!0,error:{message:({params:{min:e,max:n}})=>n===void 0?(0,t.str)`must contain at least ${e} valid item(s)`:(0,t.str)`must contain at least ${e} and no more than ${n} valid item(s)`,params:({params:{min:e,max:n}})=>n===void 0?(0,t._)`{minContains: ${e}}`:(0,t._)`{minContains: ${e}, maxContains: ${n}}`},code(e){let{gen:r,schema:i,parentSchema:a,data:o,it:s}=e,c,l,{minContains:u,maxContains:d}=a;s.opts.next?(c=u===void 0?1:u,l=d):c=1;let f=r.const(`len`,(0,t._)`${o}.length`);if(e.setParams({min:c,max:l}),l===void 0&&c===0){(0,n.checkStrictMode)(s,`"minContains" == 0 without "maxContains": "contains" keyword ignored`);return}if(l!==void 0&&c>l){(0,n.checkStrictMode)(s,`"minContains" > "maxContains" is always invalid`),e.fail();return}if((0,n.alwaysValidSchema)(s,i)){let n=(0,t._)`${f} >= ${c}`;l!==void 0&&(n=(0,t._)`${n} && ${f} <= ${l}`),e.pass(n);return}s.items=!0;let p=r.name(`valid`);l===void 0&&c===1?h(p,()=>r.if(p,()=>r.break())):c===0?(r.let(p,!0),l!==void 0&&r.if((0,t._)`${o}.length > 0`,m)):(r.let(p,!1),m()),e.result(p,()=>e.reset());function m(){let e=r.name(`_valid`),t=r.let(`count`,0);h(e,()=>r.if(e,()=>g(t)))}function h(t,i){r.forRange(`i`,0,f,r=>{e.subschema({keyword:`contains`,dataProp:r,dataPropType:n.Type.Num,compositeRule:!0},t),i()})}function g(e){r.code((0,t._)`${e}++`),l===void 0?r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0).break()):(r.if((0,t._)`${e} > ${l}`,()=>r.assign(p,!1).break()),c===1?r.assign(p,!0):r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0)))}}}})),io=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateSchemaDeps=e.validatePropertyDeps=e.error=void 0;let t=K(),n=q(),r=Y();e.error={message:({params:{property:e,depsCount:n,deps:r}})=>{let i=n===1?`property`:`properties`;return(0,t.str)`must have ${i} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:n,deps:r,missingProperty:i}})=>(0,t._)`{property: ${e},
70
+ if(!Array.isArray(s))throw Error(`ajv implementation error`);let e=i.const(`vSchema`,c);p=(0,t.or)(...s.map((t,n)=>h(e,n)))}e.pass(p);function m(){i.assign(p,!1),i.forOf(`v`,c,e=>i.if((0,t._)`${f()}(${a}, ${e})`,()=>i.assign(p,!0).break()))}function h(e,n){let r=s[n];return typeof r==`object`&&r?(0,t._)`${f()}(${a}, ${e}[${n}])`:(0,t._)`${a} === ${r}`}}}})),$a=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Va(),n=Ha(),r=Wa(),i=Ga(),a=Ka(),o=qa(),s=Ja(),c=Xa(),l=Za(),u=Qa();e.default=[t.default,n.default,r.default,i.default,a.default,o.default,s.default,c.default,{keyword:`type`,schemaType:[`string`,`array`]},{keyword:`nullable`,schemaType:`boolean`},l.default,u.default]})),eo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateAdditionalItems=void 0;let t=K(),n=q(),r={keyword:`additionalItems`,type:`array`,schemaType:[`boolean`,`object`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{parentSchema:t,it:r}=e,{items:a}=t;if(!Array.isArray(a)){(0,n.checkStrictMode)(r,`"additionalItems" is ignored when "items" is not an array of schemas`);return}i(e,a)}};function i(e,r){let{gen:i,schema:a,data:o,keyword:s,it:c}=e;c.items=!0;let l=i.const(`len`,(0,t._)`${o}.length`);if(a===!1)e.setParams({len:r.length}),e.pass((0,t._)`${l} <= ${r.length}`);else if(typeof a==`object`&&!(0,n.alwaysValidSchema)(c,a)){let n=i.var(`valid`,(0,t._)`${l} <= ${r.length}`);i.if((0,t.not)(n),()=>u(n)),e.ok(n)}function u(a){i.forRange(`i`,r.length,l,r=>{e.subschema({keyword:s,dataProp:r,dataPropType:n.Type.Num},a),c.allErrors||i.if((0,t.not)(a),()=>i.break())})}}e.validateAdditionalItems=i,e.default=r})),to=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateTuple=void 0;let t=K(),n=q(),r=Y(),i={keyword:`items`,type:`array`,schemaType:[`object`,`array`,`boolean`],before:`uniqueItems`,code(e){let{schema:t,it:i}=e;if(Array.isArray(t))return a(e,`additionalItems`,t);i.items=!0,!(0,n.alwaysValidSchema)(i,t)&&e.ok((0,r.validateArray)(e))}};function a(e,r,i=e.schema){let{gen:a,parentSchema:o,data:s,keyword:c,it:l}=e;f(o),l.opts.unevaluated&&i.length&&l.items!==!0&&(l.items=n.mergeEvaluated.items(a,i.length,l.items));let u=a.name(`valid`),d=a.const(`len`,(0,t._)`${s}.length`);i.forEach((r,i)=>{(0,n.alwaysValidSchema)(l,r)||(a.if((0,t._)`${d} > ${i}`,()=>e.subschema({keyword:c,schemaProp:i,dataProp:i},u)),e.ok(u))});function f(e){let{opts:t,errSchemaPath:a}=l,o=i.length,s=o===e.minItems&&(o===e.maxItems||e[r]===!1);if(t.strictTuples&&!s){let e=`"${c}" is ${o}-tuple, but minItems or maxItems/${r} are not specified or different at path "${a}"`;(0,n.checkStrictMode)(l,e,t.strictTuples)}}}e.validateTuple=a,e.default=i})),no=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=to();e.default={keyword:`prefixItems`,type:`array`,schemaType:[`array`],before:`uniqueItems`,code:e=>(0,t.validateTuple)(e,`items`)}})),ro=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r=Y(),i=eo();e.default={keyword:`items`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{schema:t,parentSchema:a,it:o}=e,{prefixItems:s}=a;o.items=!0,!(0,n.alwaysValidSchema)(o,t)&&(s?(0,i.validateAdditionalItems)(e,s):e.ok((0,r.validateArray)(e)))}}})),io=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`contains`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,trackErrors:!0,error:{message:({params:{min:e,max:n}})=>n===void 0?(0,t.str)`must contain at least ${e} valid item(s)`:(0,t.str)`must contain at least ${e} and no more than ${n} valid item(s)`,params:({params:{min:e,max:n}})=>n===void 0?(0,t._)`{minContains: ${e}}`:(0,t._)`{minContains: ${e}, maxContains: ${n}}`},code(e){let{gen:r,schema:i,parentSchema:a,data:o,it:s}=e,c,l,{minContains:u,maxContains:d}=a;s.opts.next?(c=u===void 0?1:u,l=d):c=1;let f=r.const(`len`,(0,t._)`${o}.length`);if(e.setParams({min:c,max:l}),l===void 0&&c===0){(0,n.checkStrictMode)(s,`"minContains" == 0 without "maxContains": "contains" keyword ignored`);return}if(l!==void 0&&c>l){(0,n.checkStrictMode)(s,`"minContains" > "maxContains" is always invalid`),e.fail();return}if((0,n.alwaysValidSchema)(s,i)){let n=(0,t._)`${f} >= ${c}`;l!==void 0&&(n=(0,t._)`${n} && ${f} <= ${l}`),e.pass(n);return}s.items=!0;let p=r.name(`valid`);l===void 0&&c===1?h(p,()=>r.if(p,()=>r.break())):c===0?(r.let(p,!0),l!==void 0&&r.if((0,t._)`${o}.length > 0`,m)):(r.let(p,!1),m()),e.result(p,()=>e.reset());function m(){let e=r.name(`_valid`),t=r.let(`count`,0);h(e,()=>r.if(e,()=>g(t)))}function h(t,i){r.forRange(`i`,0,f,r=>{e.subschema({keyword:`contains`,dataProp:r,dataPropType:n.Type.Num,compositeRule:!0},t),i()})}function g(e){r.code((0,t._)`${e}++`),l===void 0?r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0).break()):(r.if((0,t._)`${e} > ${l}`,()=>r.assign(p,!1).break()),c===1?r.assign(p,!0):r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0)))}}}})),ao=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateSchemaDeps=e.validatePropertyDeps=e.error=void 0;let t=K(),n=q(),r=Y();e.error={message:({params:{property:e,depsCount:n,deps:r}})=>{let i=n===1?`property`:`properties`;return(0,t.str)`must have ${i} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:n,deps:r,missingProperty:i}})=>(0,t._)`{property: ${e},
71
71
  missingProperty: ${i},
72
72
  depsCount: ${n},
73
- deps: ${r}}`};let i={keyword:`dependencies`,type:`object`,schemaType:`object`,error:e.error,code(e){let[t,n]=a(e);o(e,t),s(e,n)}};function a({schema:e}){let t={},n={};for(let r in e){if(r===`__proto__`)continue;let i=Array.isArray(e[r])?t:n;i[r]=e[r]}return[t,n]}function o(e,n=e.schema){let{gen:i,data:a,it:o}=e;if(Object.keys(n).length===0)return;let s=i.let(`missing`);for(let c in n){let l=n[c];if(l.length===0)continue;let u=(0,r.propertyInData)(i,a,c,o.opts.ownProperties);e.setParams({property:c,depsCount:l.length,deps:l.join(`, `)}),o.allErrors?i.if(u,()=>{for(let t of l)(0,r.checkReportMissingProp)(e,t)}):(i.if((0,t._)`${u} && (${(0,r.checkMissingProp)(e,l,s)})`),(0,r.reportMissingProp)(e,s),i.else())}}e.validatePropertyDeps=o;function s(e,t=e.schema){let{gen:i,data:a,keyword:o,it:s}=e,c=i.name(`valid`);for(let l in t)(0,n.alwaysValidSchema)(s,t[l])||(i.if((0,r.propertyInData)(i,a,l,s.opts.ownProperties),()=>{let t=e.subschema({keyword:o,schemaProp:l},c);e.mergeValidEvaluated(t,c)},()=>i.var(c,!0)),e.ok(c))}e.validateSchemaDeps=s,e.default=i})),ao=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`propertyNames`,type:`object`,schemaType:[`object`,`boolean`],error:{message:`property name must be valid`,params:({params:e})=>(0,t._)`{propertyName: ${e.propertyName}}`},code(e){let{gen:r,schema:i,data:a,it:o}=e;if((0,n.alwaysValidSchema)(o,i))return;let s=r.name(`valid`);r.forIn(`key`,a,n=>{e.setParams({propertyName:n}),e.subschema({keyword:`propertyNames`,data:n,dataTypes:[`string`],propertyName:n,compositeRule:!0},s),r.if((0,t.not)(s),()=>{e.error(!0),o.allErrors||r.break()})}),e.ok(s)}}})),oo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=J(),i=q();e.default={keyword:`additionalProperties`,type:[`object`],schemaType:[`boolean`,`object`],allowUndefined:!0,trackErrors:!0,error:{message:`must NOT have additional properties`,params:({params:e})=>(0,n._)`{additionalProperty: ${e.additionalProperty}}`},code(e){let{gen:a,schema:o,parentSchema:s,data:c,errsCount:l,it:u}=e;
73
+ deps: ${r}}`};let i={keyword:`dependencies`,type:`object`,schemaType:`object`,error:e.error,code(e){let[t,n]=a(e);o(e,t),s(e,n)}};function a({schema:e}){let t={},n={};for(let r in e){if(r===`__proto__`)continue;let i=Array.isArray(e[r])?t:n;i[r]=e[r]}return[t,n]}function o(e,n=e.schema){let{gen:i,data:a,it:o}=e;if(Object.keys(n).length===0)return;let s=i.let(`missing`);for(let c in n){let l=n[c];if(l.length===0)continue;let u=(0,r.propertyInData)(i,a,c,o.opts.ownProperties);e.setParams({property:c,depsCount:l.length,deps:l.join(`, `)}),o.allErrors?i.if(u,()=>{for(let t of l)(0,r.checkReportMissingProp)(e,t)}):(i.if((0,t._)`${u} && (${(0,r.checkMissingProp)(e,l,s)})`),(0,r.reportMissingProp)(e,s),i.else())}}e.validatePropertyDeps=o;function s(e,t=e.schema){let{gen:i,data:a,keyword:o,it:s}=e,c=i.name(`valid`);for(let l in t)(0,n.alwaysValidSchema)(s,t[l])||(i.if((0,r.propertyInData)(i,a,l,s.opts.ownProperties),()=>{let t=e.subschema({keyword:o,schemaProp:l},c);e.mergeValidEvaluated(t,c)},()=>i.var(c,!0)),e.ok(c))}e.validateSchemaDeps=s,e.default=i})),oo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`propertyNames`,type:`object`,schemaType:[`object`,`boolean`],error:{message:`property name must be valid`,params:({params:e})=>(0,t._)`{propertyName: ${e.propertyName}}`},code(e){let{gen:r,schema:i,data:a,it:o}=e;if((0,n.alwaysValidSchema)(o,i))return;let s=r.name(`valid`);r.forIn(`key`,a,n=>{e.setParams({propertyName:n}),e.subschema({keyword:`propertyNames`,data:n,dataTypes:[`string`],propertyName:n,compositeRule:!0},s),r.if((0,t.not)(s),()=>{e.error(!0),o.allErrors||r.break()})}),e.ok(s)}}})),so=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=J(),i=q();e.default={keyword:`additionalProperties`,type:[`object`],schemaType:[`boolean`,`object`],allowUndefined:!0,trackErrors:!0,error:{message:`must NOT have additional properties`,params:({params:e})=>(0,n._)`{additionalProperty: ${e.additionalProperty}}`},code(e){let{gen:a,schema:o,parentSchema:s,data:c,errsCount:l,it:u}=e;
74
74
  /* istanbul ignore if */
75
- if(!l)throw Error(`ajv implementation error`);let{allErrors:d,opts:f}=u;if(u.props=!0,f.removeAdditional!==`all`&&(0,i.alwaysValidSchema)(u,o))return;let p=(0,t.allSchemaProperties)(s.properties),m=(0,t.allSchemaProperties)(s.patternProperties);h(),e.ok((0,n._)`${l} === ${r.default.errors}`);function h(){a.forIn(`key`,c,e=>{!p.length&&!m.length?v(e):a.if(g(e),()=>v(e))})}function g(r){let o;if(p.length>8){let e=(0,i.schemaRefOrVal)(u,s.properties,`properties`);o=(0,t.isOwnProperty)(a,e,r)}else o=p.length?(0,n.or)(...p.map(e=>(0,n._)`${r} === ${e}`)):n.nil;return m.length&&(o=(0,n.or)(o,...m.map(i=>(0,n._)`${(0,t.usePattern)(e,i)}.test(${r})`))),(0,n.not)(o)}function _(e){a.code((0,n._)`delete ${c}[${e}]`)}function v(t){if(f.removeAdditional===`all`||f.removeAdditional&&o===!1){_(t);return}if(o===!1){e.setParams({additionalProperty:t}),e.error(),d||a.break();return}if(typeof o==`object`&&!(0,i.alwaysValidSchema)(u,o)){let r=a.name(`valid`);f.removeAdditional===`failing`?(y(t,r,!1),a.if((0,n.not)(r),()=>{e.reset(),_(t)})):(y(t,r),d||a.if((0,n.not)(r),()=>a.break()))}}function y(t,n,r){let a={keyword:`additionalProperties`,dataProp:t,dataPropType:i.Type.Str};r===!1&&Object.assign(a,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(a,n)}}}})),so=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Da(),n=Y(),r=q(),i=oo();e.default={keyword:`properties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,parentSchema:s,data:c,it:l}=e;l.opts.removeAdditional===`all`&&s.additionalProperties===void 0&&i.default.code(new t.KeywordCxt(l,i.default,`additionalProperties`));let u=(0,n.allSchemaProperties)(o);for(let e of u)l.definedProperties.add(e);l.opts.unevaluated&&u.length&&l.props!==!0&&(l.props=r.mergeEvaluated.props(a,(0,r.toHash)(u),l.props));let d=u.filter(e=>!(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0)return;let f=a.name(`valid`);for(let t of d)p(t)?m(t):(a.if((0,n.propertyInData)(a,c,t,l.opts.ownProperties)),m(t),l.allErrors||a.else().var(f,!0),a.endIf()),e.it.definedProperties.add(t),e.ok(f);function p(e){return l.opts.useDefaults&&!l.compositeRule&&o[e].default!==void 0}function m(t){e.subschema({keyword:`properties`,schemaProp:t,dataProp:t},f)}}}})),co=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=q(),i=q();e.default={keyword:`patternProperties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,data:s,parentSchema:c,it:l}=e,{opts:u}=l,d=(0,t.allSchemaProperties)(o),f=d.filter(e=>(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0||f.length===d.length&&(!l.opts.unevaluated||l.props===!0))return;let p=u.strictSchema&&!u.allowMatchingProperties&&c.properties,m=a.name(`valid`);l.props!==!0&&!(l.props instanceof n.Name)&&(l.props=(0,i.evaluatedPropsToName)(a,l.props));let{props:h}=l;g();function g(){for(let e of d)p&&_(e),l.allErrors?v(e):(a.var(m,!0),v(e),a.if(m))}function _(e){for(let t in p)new RegExp(e).test(t)&&(0,r.checkStrictMode)(l,`property ${t} matches pattern ${e} (use allowMatchingProperties)`)}function v(r){a.forIn(`key`,s,o=>{a.if((0,n._)`${(0,t.usePattern)(e,r)}.test(${o})`,()=>{let t=f.includes(r);t||e.subschema({keyword:`patternProperties`,schemaProp:r,dataProp:o,dataPropType:i.Type.Str},m),l.opts.unevaluated&&h!==!0?a.assign((0,n._)`${h}[${o}]`,!0):!t&&!l.allErrors&&a.if((0,n.not)(m),()=>a.break())})})}}}})),lo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:`not`,schemaType:[`object`,`boolean`],trackErrors:!0,code(e){let{gen:n,schema:r,it:i}=e;if((0,t.alwaysValidSchema)(i,r)){e.fail();return}let a=n.name(`valid`);e.subschema({keyword:`not`,compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:`must NOT be valid`}}})),uo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`anyOf`,schemaType:`array`,trackErrors:!0,code:Y().validateUnion,error:{message:`must match a schema in anyOf`}}})),fo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`oneOf`,schemaType:`array`,trackErrors:!0,error:{message:`must match exactly one schema in oneOf`,params:({params:e})=>(0,t._)`{passingSchemas: ${e.passing}}`},code(e){let{gen:r,schema:i,parentSchema:a,it:o}=e;
75
+ if(!l)throw Error(`ajv implementation error`);let{allErrors:d,opts:f}=u;if(u.props=!0,f.removeAdditional!==`all`&&(0,i.alwaysValidSchema)(u,o))return;let p=(0,t.allSchemaProperties)(s.properties),m=(0,t.allSchemaProperties)(s.patternProperties);h(),e.ok((0,n._)`${l} === ${r.default.errors}`);function h(){a.forIn(`key`,c,e=>{!p.length&&!m.length?v(e):a.if(g(e),()=>v(e))})}function g(r){let o;if(p.length>8){let e=(0,i.schemaRefOrVal)(u,s.properties,`properties`);o=(0,t.isOwnProperty)(a,e,r)}else o=p.length?(0,n.or)(...p.map(e=>(0,n._)`${r} === ${e}`)):n.nil;return m.length&&(o=(0,n.or)(o,...m.map(i=>(0,n._)`${(0,t.usePattern)(e,i)}.test(${r})`))),(0,n.not)(o)}function _(e){a.code((0,n._)`delete ${c}[${e}]`)}function v(t){if(f.removeAdditional===`all`||f.removeAdditional&&o===!1){_(t);return}if(o===!1){e.setParams({additionalProperty:t}),e.error(),d||a.break();return}if(typeof o==`object`&&!(0,i.alwaysValidSchema)(u,o)){let r=a.name(`valid`);f.removeAdditional===`failing`?(y(t,r,!1),a.if((0,n.not)(r),()=>{e.reset(),_(t)})):(y(t,r),d||a.if((0,n.not)(r),()=>a.break()))}}function y(t,n,r){let a={keyword:`additionalProperties`,dataProp:t,dataPropType:i.Type.Str};r===!1&&Object.assign(a,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(a,n)}}}})),co=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Oa(),n=Y(),r=q(),i=so();e.default={keyword:`properties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,parentSchema:s,data:c,it:l}=e;l.opts.removeAdditional===`all`&&s.additionalProperties===void 0&&i.default.code(new t.KeywordCxt(l,i.default,`additionalProperties`));let u=(0,n.allSchemaProperties)(o);for(let e of u)l.definedProperties.add(e);l.opts.unevaluated&&u.length&&l.props!==!0&&(l.props=r.mergeEvaluated.props(a,(0,r.toHash)(u),l.props));let d=u.filter(e=>!(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0)return;let f=a.name(`valid`);for(let t of d)p(t)?m(t):(a.if((0,n.propertyInData)(a,c,t,l.opts.ownProperties)),m(t),l.allErrors||a.else().var(f,!0),a.endIf()),e.it.definedProperties.add(t),e.ok(f);function p(e){return l.opts.useDefaults&&!l.compositeRule&&o[e].default!==void 0}function m(t){e.subschema({keyword:`properties`,schemaProp:t,dataProp:t},f)}}}})),lo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Y(),n=K(),r=q(),i=q();e.default={keyword:`patternProperties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,data:s,parentSchema:c,it:l}=e,{opts:u}=l,d=(0,t.allSchemaProperties)(o),f=d.filter(e=>(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0||f.length===d.length&&(!l.opts.unevaluated||l.props===!0))return;let p=u.strictSchema&&!u.allowMatchingProperties&&c.properties,m=a.name(`valid`);l.props!==!0&&!(l.props instanceof n.Name)&&(l.props=(0,i.evaluatedPropsToName)(a,l.props));let{props:h}=l;g();function g(){for(let e of d)p&&_(e),l.allErrors?v(e):(a.var(m,!0),v(e),a.if(m))}function _(e){for(let t in p)new RegExp(e).test(t)&&(0,r.checkStrictMode)(l,`property ${t} matches pattern ${e} (use allowMatchingProperties)`)}function v(r){a.forIn(`key`,s,o=>{a.if((0,n._)`${(0,t.usePattern)(e,r)}.test(${o})`,()=>{let t=f.includes(r);t||e.subschema({keyword:`patternProperties`,schemaProp:r,dataProp:o,dataPropType:i.Type.Str},m),l.opts.unevaluated&&h!==!0?a.assign((0,n._)`${h}[${o}]`,!0):!t&&!l.allErrors&&a.if((0,n.not)(m),()=>a.break())})})}}}})),uo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:`not`,schemaType:[`object`,`boolean`],trackErrors:!0,code(e){let{gen:n,schema:r,it:i}=e;if((0,t.alwaysValidSchema)(i,r)){e.fail();return}let a=n.name(`valid`);e.subschema({keyword:`not`,compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:`must NOT be valid`}}})),fo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`anyOf`,schemaType:`array`,trackErrors:!0,code:Y().validateUnion,error:{message:`must match a schema in anyOf`}}})),po=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q();e.default={keyword:`oneOf`,schemaType:`array`,trackErrors:!0,error:{message:`must match exactly one schema in oneOf`,params:({params:e})=>(0,t._)`{passingSchemas: ${e.passing}}`},code(e){let{gen:r,schema:i,parentSchema:a,it:o}=e;
76
76
  /* istanbul ignore if */
77
- if(!Array.isArray(i))throw Error(`ajv implementation error`);if(o.opts.discriminator&&a.discriminator)return;let s=i,c=r.let(`valid`,!1),l=r.let(`passing`,null),u=r.name(`_valid`);e.setParams({passing:l}),r.block(d),e.result(c,()=>e.reset(),()=>e.error(!0));function d(){s.forEach((i,a)=>{let s;(0,n.alwaysValidSchema)(o,i)?r.var(u,!0):s=e.subschema({keyword:`oneOf`,schemaProp:a,compositeRule:!0},u),a>0&&r.if((0,t._)`${u} && ${c}`).assign(c,!1).assign(l,(0,t._)`[${l}, ${a}]`).else(),r.if(u,()=>{r.assign(c,!0),r.assign(l,a),s&&e.mergeEvaluated(s,t.Name)})})}}}})),po=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:`allOf`,schemaType:`array`,code(e){let{gen:n,schema:r,it:i}=e;
77
+ if(!Array.isArray(i))throw Error(`ajv implementation error`);if(o.opts.discriminator&&a.discriminator)return;let s=i,c=r.let(`valid`,!1),l=r.let(`passing`,null),u=r.name(`_valid`);e.setParams({passing:l}),r.block(d),e.result(c,()=>e.reset(),()=>e.error(!0));function d(){s.forEach((i,a)=>{let s;(0,n.alwaysValidSchema)(o,i)?r.var(u,!0):s=e.subschema({keyword:`oneOf`,schemaProp:a,compositeRule:!0},u),a>0&&r.if((0,t._)`${u} && ${c}`).assign(c,!1).assign(l,(0,t._)`[${l}, ${a}]`).else(),r.if(u,()=>{r.assign(c,!0),r.assign(l,a),s&&e.mergeEvaluated(s,t.Name)})})}}}})),mo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:`allOf`,schemaType:`array`,code(e){let{gen:n,schema:r,it:i}=e;
78
78
  /* istanbul ignore if */
79
- if(!Array.isArray(r))throw Error(`ajv implementation error`);let a=n.name(`valid`);r.forEach((n,r)=>{if((0,t.alwaysValidSchema)(i,n))return;let o=e.subschema({keyword:`allOf`,schemaProp:r},a);e.ok(a),e.mergeEvaluated(o)})}}})),mo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r={keyword:`if`,schemaType:[`object`,`boolean`],trackErrors:!0,error:{message:({params:e})=>(0,t.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,t._)`{failingKeyword: ${e.ifClause}}`},code(e){let{gen:r,parentSchema:a,it:o}=e;a.then===void 0&&a.else===void 0&&(0,n.checkStrictMode)(o,`"if" without "then" and "else" is ignored`);let s=i(o,`then`),c=i(o,`else`);if(!s&&!c)return;let l=r.let(`valid`,!0),u=r.name(`_valid`);if(d(),e.reset(),s&&c){let t=r.let(`ifClause`);e.setParams({ifClause:t}),r.if(u,f(`then`,t),f(`else`,t))}else s?r.if(u,f(`then`)):r.if((0,t.not)(u),f(`else`));e.pass(l,()=>e.error(!0));function d(){let t=e.subschema({keyword:`if`,compositeRule:!0,createErrors:!1,allErrors:!1},u);e.mergeEvaluated(t)}function f(n,i){return()=>{let a=e.subschema({keyword:n},u);r.assign(l,u),e.mergeValidEvaluated(a,l),i?r.assign(i,(0,t._)`${n}`):e.setParams({ifClause:n})}}}};function i(e,t){let r=e.schema[t];return r!==void 0&&!(0,n.alwaysValidSchema)(e,r)}e.default=r})),ho=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:[`then`,`else`],schemaType:[`object`,`boolean`],code({keyword:e,parentSchema:n,it:r}){n.if===void 0&&(0,t.checkStrictMode)(r,`"${e}" without "if" is ignored`)}}})),go=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=$a(),n=to(),r=eo(),i=no(),a=ro(),o=io(),s=ao(),c=oo(),l=so(),u=co(),d=lo(),f=uo(),p=fo(),m=po(),h=mo(),g=ho();function _(e=!1){let _=[d.default,f.default,p.default,m.default,h.default,g.default,s.default,c.default,o.default,l.default,u.default];return e?_.push(n.default,i.default):_.push(t.default,r.default),_.push(a.default),_}e.default=_})),_o=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:`format`,type:[`number`,`string`],schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,t._)`{format: ${e}}`},code(e,n){let{gen:r,data:i,$data:a,schema:o,schemaCode:s,it:c}=e,{opts:l,errSchemaPath:u,schemaEnv:d,self:f}=c;if(!l.validateFormats)return;a?p():m();function p(){let a=r.scopeValue(`formats`,{ref:f.formats,code:l.code.formats}),o=r.const(`fDef`,(0,t._)`${a}[${s}]`),c=r.let(`fType`),u=r.let(`format`);r.if((0,t._)`typeof ${o} == "object" && !(${o} instanceof RegExp)`,()=>r.assign(c,(0,t._)`${o}.type || "string"`).assign(u,(0,t._)`${o}.validate`),()=>r.assign(c,(0,t._)`"string"`).assign(u,o)),e.fail$data((0,t.or)(p(),m()));function p(){return l.strictSchema===!1?t.nil:(0,t._)`${s} && !${u}`}function m(){let e=d.$async?(0,t._)`(${o}.async ? await ${u}(${i}) : ${u}(${i}))`:(0,t._)`${u}(${i})`,r=(0,t._)`(typeof ${u} == "function" ? ${e} : ${u}.test(${i}))`;return(0,t._)`${u} && ${u} !== true && ${c} === ${n} && !${r}`}}function m(){let a=f.formats[o];if(!a){m();return}if(a===!0)return;let[s,c,p]=h(a);s===n&&e.pass(g());function m(){if(l.strictSchema===!1){f.logger.warn(e());return}throw Error(e());function e(){return`unknown format "${o}" ignored in schema at path "${u}"`}}function h(e){let n=e instanceof RegExp?(0,t.regexpCode)(e):l.code.formats?(0,t._)`${l.code.formats}${(0,t.getProperty)(o)}`:void 0,i=r.scopeValue(`formats`,{key:o,ref:e,code:n});return typeof e==`object`&&!(e instanceof RegExp)?[e.type||`string`,e.validate,(0,t._)`${i}.validate`]:[`string`,e,i]}function g(){if(typeof a==`object`&&!(a instanceof RegExp)&&a.async){if(!d.$async)throw Error(`async format in sync schema`);return(0,t._)`await ${p}(${i})`}return typeof c==`function`?(0,t._)`${p}(${i})`:(0,t._)`${p}.test(${i})`}}}}})),vo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=[_o().default]})),yo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.contentVocabulary=e.metadataVocabulary=void 0,e.metadataVocabulary=[`title`,`description`,`default`,`deprecated`,`readOnly`,`writeOnly`,`examples`],e.contentVocabulary=[`contentMediaType`,`contentEncoding`,`contentSchema`]})),bo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=za(),n=Qa(),r=go(),i=vo(),a=yo();e.default=[t.default,n.default,(0,r.default)(),i.default,a.metadataVocabulary,a.contentVocabulary]})),xo=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DiscrError=void 0;var t;(function(e){e.Tag=`tag`,e.Mapping=`mapping`})(t||(e.DiscrError=t={}))})),So=/* @__PURE__ */ N((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=xo(),r=Aa(),i=ka(),a=q();e.default={keyword:`discriminator`,type:`object`,schemaType:`object`,error:{message:({params:{discrError:e,tagName:t}})=>e===n.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:n,tagName:r}})=>(0,t._)`{error: ${e}, tag: ${r}, tagValue: ${n}}`},code(e){let{gen:o,data:s,schema:c,parentSchema:l,it:u}=e,{oneOf:d}=l;if(!u.opts.discriminator)throw Error(`discriminator: requires discriminator option`);let f=c.propertyName;if(typeof f!=`string`)throw Error(`discriminator: requires propertyName`);if(c.mapping)throw Error(`discriminator: mapping is not supported`);if(!d)throw Error(`discriminator: requires oneOf keyword`);let p=o.let(`valid`,!1),m=o.const(`tag`,(0,t._)`${s}${(0,t.getProperty)(f)}`);o.if((0,t._)`typeof ${m} == "string"`,()=>h(),()=>e.error(!1,{discrError:n.DiscrError.Tag,tag:m,tagName:f})),e.ok(p);function h(){let r=_();o.if(!1);for(let e in r)o.elseIf((0,t._)`${m} === ${e}`),o.assign(p,g(r[e]));o.else(),e.error(!1,{discrError:n.DiscrError.Mapping,tag:m,tagName:f}),o.endIf()}function g(n){let r=o.name(`valid`),i=e.subschema({keyword:`oneOf`,schemaProp:n},r);return e.mergeEvaluated(i,t.Name),r}function _(){let e={},t=o(l),n=!0;for(let e=0;e<d.length;e++){let c=d[e];if(c?.$ref&&!(0,a.schemaHasRulesButRef)(c,u.self.RULES)){let e=c.$ref;if(c=r.resolveRef.call(u.self,u.schemaEnv.root,u.baseId,e),c instanceof r.SchemaEnv&&(c=c.schema),c===void 0)throw new i.default(u.opts.uriResolver,u.baseId,e)}let l=c?.properties?.[f];if(typeof l!=`object`)throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${f}"`);n&&=t||o(c),s(l,e)}if(!n)throw Error(`discriminator: "${f}" must be required`);return e;function o({required:e}){return Array.isArray(e)&&e.includes(f)}function s(e,t){if(e.const)c(e.const,t);else if(e.enum)for(let n of e.enum)c(n,t);else throw Error(`discriminator: "properties/${f}" must have "const" or "enum"`)}function c(t,n){if(typeof t!=`string`||t in e)throw Error(`discriminator: "${f}" values must be unique strings`);e[t]=n}}}}})),Co=/* @__PURE__ */ N(((e,t)=>{t.exports={$schema:`http://json-schema.org/draft-07/schema#`,$id:`http://json-schema.org/draft-07/schema#`,title:`Core schema meta-schema`,definitions:{schemaArray:{type:`array`,minItems:1,items:{$ref:`#`}},nonNegativeInteger:{type:`integer`,minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:`#/definitions/nonNegativeInteger`},{default:0}]},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},uniqueItems:!0,default:[]}},type:[`object`,`boolean`],properties:{$id:{type:`string`,format:`uri-reference`},$schema:{type:`string`,format:`uri`},$ref:{type:`string`,format:`uri-reference`},$comment:{type:`string`},title:{type:`string`},description:{type:`string`},default:!0,readOnly:{type:`boolean`,default:!1},examples:{type:`array`,items:!0},multipleOf:{type:`number`,exclusiveMinimum:0},maximum:{type:`number`},exclusiveMaximum:{type:`number`},minimum:{type:`number`},exclusiveMinimum:{type:`number`},maxLength:{$ref:`#/definitions/nonNegativeInteger`},minLength:{$ref:`#/definitions/nonNegativeIntegerDefault0`},pattern:{type:`string`,format:`regex`},additionalItems:{$ref:`#`},items:{anyOf:[{$ref:`#`},{$ref:`#/definitions/schemaArray`}],default:!0},maxItems:{$ref:`#/definitions/nonNegativeInteger`},minItems:{$ref:`#/definitions/nonNegativeIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},contains:{$ref:`#`},maxProperties:{$ref:`#/definitions/nonNegativeInteger`},minProperties:{$ref:`#/definitions/nonNegativeIntegerDefault0`},required:{$ref:`#/definitions/stringArray`},additionalProperties:{$ref:`#`},definitions:{type:`object`,additionalProperties:{$ref:`#`},default:{}},properties:{type:`object`,additionalProperties:{$ref:`#`},default:{}},patternProperties:{type:`object`,additionalProperties:{$ref:`#`},propertyNames:{format:`regex`},default:{}},dependencies:{type:`object`,additionalProperties:{anyOf:[{$ref:`#`},{$ref:`#/definitions/stringArray`}]}},propertyNames:{$ref:`#`},const:!0,enum:{type:`array`,items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:`#/definitions/simpleTypes`},{type:`array`,items:{$ref:`#/definitions/simpleTypes`},minItems:1,uniqueItems:!0}]},format:{type:`string`},contentMediaType:{type:`string`},contentEncoding:{type:`string`},if:{$ref:`#`},then:{$ref:`#`},else:{$ref:`#`},allOf:{$ref:`#/definitions/schemaArray`},anyOf:{$ref:`#/definitions/schemaArray`},oneOf:{$ref:`#/definitions/schemaArray`},not:{$ref:`#`}},default:!0}}));const wo=(/* @__PURE__ */ ht((/* @__PURE__ */ N(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MissingRefError=e.ValidationError=e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=e.Ajv=void 0;let n=Ia(),r=bo(),i=So(),a=Co(),o=[`/properties`],s=`http://json-schema.org/draft-07/schema`;var c=class extends n.default{_addVocabularies(){super._addVocabularies(),r.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(a,o):a;this.addMetaSchema(e,s,!1),this.refs[`http://json-schema.org/schema`]=s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s)?s:void 0)}};e.Ajv=c,t.exports=e=c,t.exports.Ajv=c,Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var l=Da();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=K();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var d=Oa();Object.defineProperty(e,"ValidationError",{enumerable:!0,get:function(){return d.default}});var f=ka();Object.defineProperty(e,"MissingRefError",{enumerable:!0,get:function(){return f.default}})})))(),1)).default,To=/* @__PURE__ */ new Set([`type`,`properties`,`items`,`required`,`enum`,`default`,`description`,`format`,`additionalProperties`]),Eo=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`array`,`object`,`null`]),Do=new wo({allErrors:!0,coerceTypes:!1,strict:!1,useDefaults:!1});function Oo(e,t=`schema`){let n=[];return Mo(e,t,n),n.length===0&&!Do.validateSchema(e)&&n.push(...No(Do.errors,t)),n}function ko(e,t){let n=Fo(t,e,`input`);return n.ok?W(n.value)?{ok:!0,value:n.value}:{ok:!1,issues:[`input must be an object`]}:{ok:!1,issues:n.issues}}function Ao(e){if(e===``)return{ok:!0,segments:[]};if(!e.startsWith(`/`))return{ok:!1,segments:[],issue:`must start with /`};let t=e.slice(1).split(`/`),n=[];for(let e of t){if(e.match(/~(?![01])/))return{ok:!1,segments:[],issue:`contains invalid escape sequence`};n.push(e.replace(/~1/g,`/`).replace(/~0/g,`~`))}return{ok:!0,segments:n}}function jo(e,t){let n=Ao(t);if(!n.ok)return;let r=e;for(let e of n.segments){if(Array.isArray(r)){if(!/^(0|[1-9]\d*)$/.test(e))return;r=r[Number(e)];continue}if(W(r)){if(e===`__proto__`||e===`constructor`||e===`prototype`||!Object.prototype.hasOwnProperty.call(r,e))return;r=r[e];continue}return}return r}function Mo(e,t,n){if(!W(e)){n.push(`${t} must be an object`);return}for(let r of Object.keys(e))To.has(r)||n.push(`${t} has unsupported keyword "${r}"`);if(`type`in e&&Po(e.type,`${t}.type`,n),`properties`in e){if(!W(e.properties))n.push(`${t}.properties must be an object`);else for(let[r,i]of Object.entries(e.properties))Mo(i,`${t}.properties.${r}`,n)}if(`items`in e&&Mo(e.items,`${t}.items`,n),`required`in e&&(!Array.isArray(e.required)||!e.required.every(e=>typeof e==`string`))&&n.push(`${t}.required must be an array of strings`),`enum`in e&&!Array.isArray(e.enum)&&n.push(`${t}.enum must be an array`),`description`in e&&typeof e.description!=`string`&&n.push(`${t}.description must be a string`),`format`in e&&typeof e.format!=`string`&&n.push(`${t}.format must be a string`),`additionalProperties`in e){let r=e.additionalProperties;r!==!0&&r!==!1&&!W(r)?n.push(`${t}.additionalProperties must be a boolean or schema object`):W(r)&&Mo(r,`${t}.additionalProperties`,n)}}function No(e,t){return!e||e.length===0?[`${t} is invalid`]:e.map(e=>`${e.instancePath?`${t}${e.instancePath.replace(/\//g,`.`)}`:t} ${e.message??`is invalid`}${e.keyword?` (${e.keyword})`:``}`)}function Po(e,t,n){let r=Array.isArray(e)?e:[e];if(r.length===0){n.push(`${t} must not be empty`);return}for(let e of r)Eo.has(e)||n.push(`${t} has unsupported type "${String(e)}"`)}function Fo(e,t,n){if((e==null||e===``)&&t.default!==void 0&&(e=t.default),t.enum&&e!==void 0){let r=t.enum.map(Lo);if(!r.includes(Lo(e)))return{ok:!1,issues:[`${n} must be one of: ${r.join(`, `)}`]}}let r=Io(t);if(r.size===0)return{ok:!0,value:e};if(r.size>1){if(Array.isArray(e)&&r.has(`array`)){if(!t.items)return{ok:!0,value:e};let r=[],i=[];return e.forEach((e,a)=>{let o=Fo(e,t.items,`${n}.${a}`);o.ok?r[a]=o.value:i.push(...o.issues)}),i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(!(W(e)&&r.has(`object`))&&r.has(`string`)&&!Array.isArray(e)&&!W(e))return{ok:!0,value:String(e)}}if(r.has(`object`)){if(!W(e))return{ok:!1,issues:[`${n} must be an object`]};let r={...e},i=[];for(let e of t.required??[]){let t=r[e];(t==null||t===``)&&i.push(`Missing required input "${e}"`)}for(let[e,a]of Object.entries(t.properties??{})){let t=r[e];if((t==null||t===``)&&a.default===void 0)continue;let o=Fo(t,a,`${n}.${e}`);o.ok?r[e]=o.value:i.push(...o.issues)}if(t.additionalProperties===!1)for(let e of Object.keys(r))t.properties?.[e]||i.push(`Unknown input "${e}"`);return i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(r.has(`array`)){if(!Array.isArray(e))return{ok:!1,issues:[`${n} must be an array`]};if(!t.items)return{ok:!0,value:e};let r=[],i=[];return e.forEach((e,a)=>{let o=Fo(e,t.items,`${n}.${a}`);o.ok?r[a]=o.value:i.push(...o.issues)}),i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(r.has(`string`))return{ok:!0,value:String(e)};if(r.has(`number`)||r.has(`integer`)){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?r.has(`integer`)&&!Number.isInteger(t)?{ok:!1,issues:[`${n} must be an integer`]}:{ok:!0,value:t}:{ok:!1,issues:[`${n} must be a number`]}}return r.has(`boolean`)?typeof e==`boolean`?{ok:!0,value:e}:e===`true`||e===`1`?{ok:!0,value:!0}:e===`false`||e===`0`?{ok:!0,value:!1}:{ok:!1,issues:[`${n} must be a boolean`]}:r.has(`null`)?e===null?{ok:!0,value:e}:{ok:!1,issues:[`${n} must be null`]}:{ok:!0,value:e}}function Io(e){let t=e.type===void 0?[]:Array.isArray(e.type)?e.type:[e.type];return new Set(t)}function Lo(e){return e==null?``:typeof e==`object`?JSON.stringify(e)??``:String(e)}const X=`[redacted]`;function Ro(e){return e==null?``:typeof e==`object`?JSON.stringify(e)??``:String(e)}function zo(e,t,n,r){let i={},a={},o=[],s=!1;for(let[c,l]of Object.entries(e.input)){let e=Go(l,t,n,r);i[c]=e.value,a[c]=e.redacted,e.sensitive&&(s=!0,o.push(c))}return{value:i,redacted:a,sensitiveKeys:o,sensitive:s}}function Bo(e,t,n){let r={},i=[];for(let[a,o]of Object.entries(e.input)){let e=Ko(o,t,n);r[a]=e.redacted,e.sensitive&&i.push(a)}return{redacted:r,sensitiveKeys:i}}function Vo(e,t,n,r){return Yo(e,e=>Go(e,t,n,r))}function Ho(e){return Yo(e,e=>Z(e,e,!1,e!==void 0))}function Uo(e){return{...e.data===void 0?{}:{data:X},...e.artifacts?{artifacts:e.artifacts.map(es)}:{},...e.warnings?{warnings:e.warnings.map(e=>({code:e.code,message:e.message}))}:{},metadata:{...e.metadata?.step?{step:e.metadata.step}:{},redacted:!0}}}function Wo(e){return{code:e.code,message:X,...e.step?{step:e.step}:{},details:{redacted:!0}}}function Go(e,t,n,r){if(Array.isArray(e)){let i=e.map(e=>Go(e,t,n,r));return Z(i.map(e=>e.value),i.map(e=>e.redacted),i.some(e=>e.sensitive))}if(!ts(e)){if(!W(e))return Z(e,e,!1,e!==void 0);let i={},a={},o=!1;for(let[s,c]of Object.entries(e)){let e=Go(c,t,n,r);i[s]=e.value,a[s]=e.redacted,o||=e.sensitive}return Z(i,a,o)}if(`$input`in e){let t=jo(n,e.$input);return Z(t,t,!1,t!==void 0)}if(`$from`in e){let t=e.$from,n=r.get(t);if(!n)throw new U(`pipeline_reference_error`,`Step output not found: ${t}`);let i=typeof e.path==`string`?e.path:``,a=jo(n,i);if(a===void 0)throw new U(`pipeline_reference_error`,`Step output path not found: ${t}${i}`);return Z(a,a,!1,!0)}if(`$env`in e){let n=qo(t.env,e.$env,!1);return Z(n,n,!1,n!==void 0)}if(`$secret`in e){let n=qo(t.secrets,e.$secret,!0);return Z(n,X,!0,n!==void 0)}if(`$concat`in e){let i=e.$concat.map(e=>Go(e,t,n,r)),a=i.map(e=>Ro(e.value)).join(``),o=i.some(e=>e.sensitive);return Z(a,i.map(e=>e.sensitive?X:Ro(e.value)).join(``),o)}if(`$coalesce`in e){let i=e.$coalesce,a;for(let e of i)try{let i=Go(e,t,n,r);if(i.exists&&i.value!==void 0&&i.value!==null)return i}catch(e){a=e;continue}if(a)throw a;return Z(void 0,void 0,!1,!1)}if(`$js`in e){let i=e.$js,a=e.args??{},o={},s={},c=!1;for(let[e,i]of Object.entries(a)){let a=Go(i,t,n,r);o[e]=a.value,s[e]=a.redacted,c||=a.sensitive}try{let e=Function(`args`,`return (${i})`)(o);return Z(e,c?X:e,c)}catch(e){throw new U(`pipeline_js_error`,`$js expression failed: ${e instanceof Error?e.message:String(e)}`)}}return Z(e,e,!1)}function Ko(e,t,n){if(Array.isArray(e)){let r=e.map(e=>Ko(e,t,n));return Z(r.map(e=>e.value),r.map(e=>e.redacted),r.some(e=>e.sensitive))}if(!ts(e)){if(!W(e))return Z(e,e,!1,e!==void 0);let r={},i=!1;for(let[a,o]of Object.entries(e)){let e=Ko(o,t,n);r[a]=e.redacted,i||=e.sensitive}return Z(r,r,i)}if(`$input`in e){let t=jo(n,e.$input);return Z(t,t,!1,t!==void 0)}if(`$from`in e)return Z({...e},{...e},!1);if(`$env`in e){let n=qo(t.env,e.$env,!1);return Z(n,n,!1,n!==void 0)}if(`$secret`in e)return qo(t.secrets,e.$secret,!0),Z(X,X,!0,!0);if(`$concat`in e){let r=e.$concat.map(e=>Ko(e,t,n));if(r.some((t,n)=>{let r=e.$concat[n];return W(r)&&`$from`in r}))return Z({...e},{...e},r.some(e=>e.sensitive));let i=r.map(e=>Ro(e.value)).join(``),a=r.some(e=>e.sensitive);return Z(i,r.map(e=>e.sensitive?X:Ro(e.value)).join(``),a)}if(`$coalesce`in e){let r=e.$coalesce;if(r.some(e=>W(e)&&`$from`in e))return Z({...e},{...e},!1);for(let e of r){let r=Ko(e,t,n);if(r.exists&&r.value!==void 0&&r.value!==null)return r}return Z(void 0,void 0,!1,!1)}return`$js`in e?Z({...e},{...e},!1):Z(e,e,!1)}function qo(e,t,n){if(!Jo(e,t))throw new U(n?`pipeline_secret_error`:`pipeline_env_error`,`${n?`Secret`:`Environment`} binding is not declared: ${t}`);let r=e[t],i=typeof r==`string`?{from:`env`,name:r,required:!0}:r,a=i.from===`env`||i.from===void 0?process.env[i.name]:void 0;if(a!==void 0&&a!==``)return a;if(i.default!==void 0)return i.default;if(i.required!==!1)throw new U(n?`pipeline_secret_error`:`pipeline_env_error`,`${n?`Secret`:`Environment`} binding not found: ${t}`)}function Jo(e,t){return!!e&&Object.prototype.hasOwnProperty.call(e,t)}function Z(e,t,n,r=!0){return{value:e,redacted:t,sensitive:n,exists:r}}function Yo(e,t){if(typeof e==`boolean`)return e;if(W(e)&&`$exists`in e)try{return t(e.$exists).exists}catch(e){if(e instanceof U&&e.code===`pipeline_reference_error`)return!1;throw e}if(W(e)&&`$and`in e){if(!Array.isArray(e.$and)||e.$and.length===0)throw $o(`$and must be a non-empty array`);return e.$and.every(e=>Yo(e,t))}if(W(e)&&`$or`in e){if(!Array.isArray(e.$or)||e.$or.length===0)throw $o(`$or must be a non-empty array`);return e.$or.some(e=>Yo(e,t))}if(W(e)&&`$not`in e)return!Yo(e.$not,t);let n=Xo(e);if(n){let[e,r]=n.operands,i=t(e).value,a=t(r).value;switch(n.operator){case`$eq`:return Zo(i,a);case`$ne`:return!Zo(i,a);case`$gt`:return Qo(i,a,n.operator)>0;case`$gte`:return Qo(i,a,n.operator)>=0;case`$lt`:return Qo(i,a,n.operator)<0;case`$lte`:return Qo(i,a,n.operator)<=0;case`$in`:if(!Array.isArray(a))throw $o(`$in right operand must be an array`);return a.some(e=>Zo(e,i));case`$contains`:if(Array.isArray(i))return i.some(e=>Zo(e,a));if(typeof i==`string`&&typeof a==`string`)return i.includes(a);throw $o(`$contains left operand must be an array or string`)}}return!!t(e).value}function Xo(e){if(W(e)){for(let t of[`$eq`,`$ne`,`$gt`,`$gte`,`$lt`,`$lte`,`$in`,`$contains`])if(t in e){if(!Array.isArray(e[t])||e[t].length!==2)throw $o(`${t} must be a two-item array`);return{operator:t,operands:e[t]}}}}function Zo(e,t){return JSON.stringify(e)===JSON.stringify(t)}function Qo(e,t,n){if(typeof e==`number`&&Number.isFinite(e)&&typeof t==`number`&&Number.isFinite(t))return e-t;if(typeof e==`string`&&typeof t==`string`)return e.localeCompare(t);throw $o(`${n} operands must both be finite numbers or both be strings`)}function $o(e){return new U(`pipeline_condition_error`,e)}function es(e){return{id:e.id,kind:e.kind,mediaType:e.mediaType,metadata:e.metadata?{redacted:!0}:void 0}}function ts(e){return W(e)&&(`$input`in e||`$from`in e||`$env`in e||`$secret`in e||`$concat`in e||`$coalesce`in e||`$js`in e)}const ns={description:`Conditional branch selection from a list of cases`,paths:[{path:`/data/selected`,description:`Key of the matched case`},{path:`/data/value`,description:`Value of the matched case`},{path:`/data/matched`,description:`Whether a case was matched (boolean)`}]},rs={description:`Select first available value from candidates`,paths:[{path:`/data/source`,description:`Source identifier of the selected candidate`},{path:`/data/value`,description:`Value of the selected candidate`},{path:`/data/matched`,description:`Whether a candidate was matched (boolean)`}]},is={description:`Assert a condition is true`,paths:[{path:`/data/ok`,description:`Whether the assertion passed (boolean)`},{path:`/data/message`,description:`Assertion message`}]};function as(e){ji(`logic/switch`,e=>{let t=os(e.cases);for(let e of t)if(Ho(e.condition))return{data:{selected:e.key,value:e.value,matched:!0}};if(`defaultValue`in e)return{data:{selected:typeof e.defaultKey==`string`?e.defaultKey:`default`,value:e.defaultValue,matched:!1}};throw new U(`logic_no_match`,`logic/switch did not match any case`,{step:`logic/switch`,details:{caseCount:t.length}})},e,ns),ji(`logic/select`,e=>{let t=ss(e.candidates);for(let e of t)if((e.available===void 0||Ho(e.available))&&e.value!==void 0&&e.value!==null)return{data:{source:e.source,value:e.value,matched:!0}};if(`defaultValue`in e)return{data:{source:typeof e.defaultSource==`string`?e.defaultSource:`default`,value:e.defaultValue,matched:!1}};throw new U(`logic_no_candidate`,`logic/select did not receive an available candidate`,{step:`logic/select`,details:{candidateCount:t.length}})},e,rs),ji(`logic/assert`,e=>{let t=typeof e.message==`string`?e.message:`Logic assertion failed`,n=W(e.metadata)?e.metadata:void 0;if(!Ho(cs(e.condition))){if(e.soft===!0)return{data:{ok:!1,message:t,...n?{metadata:n}:{}}};throw new U(`logic_assertion_failed`,t,{step:`logic/assert`,details:n??{}})}return{data:{ok:!0,...e.message===void 0?{}:{message:t},...n?{metadata:n}:{}}}},e,is)}function os(e){if(!Array.isArray(e))throw new U(`logic_input_error`,`cases must be an array`,{step:`logic/switch`});return e}function ss(e){if(!Array.isArray(e))throw new U(`logic_input_error`,`candidates must be an array`,{step:`logic/select`});return e}function cs(e){if(e===void 0)throw new U(`logic_input_error`,`condition is required`,{step:`logic/assert`});return e}const ls={description:`Execute inline JavaScript; output shape is user-defined by the return value`,paths:[{path:`/data`,description:`Return value of the script (user-defined structure)`}]};function us(e){ji(`script/js`,e=>{let t=e.code;if(!t||typeof t!=`string`)throw new U(`script_js_error`,`script/js requires a 'code' string input`,{step:`script/js`});let n=e.args??{};try{return{data:Function(`args`,t)(n)??{}}}catch(e){throw new U(`script_js_error`,`script/js execution failed: ${e instanceof Error?e.message:String(e)}`,{step:`script/js`})}},e,ls)}const ds=/* @__PURE__ */ new WeakSet;function fs(e=Ai()){return ds.has(e)?e:(ds.add(e),aa(e),as(e),us(e),e)}function ps(e){let t=e.steps.map((t,n)=>({step:t,dependencies:[],dependents:[],index:n+1,total:e.steps.length})),n=new Map(t.map(e=>[e.step.id,e]));for(let r of t){let t=new Set(r.step.dependsOn??[]);Bi(r.step.input,t),r.step.when!==void 0&&Bi(r.step.when,t),r.dependencies=Array.from(t).sort((t,n)=>e.steps.findIndex(e=>e.id===t)-e.steps.findIndex(e=>e.id===n));for(let e of r.dependencies)n.get(e)?.dependents.push(r.step.id)}return t}function ms(e){let t=new Set(e.map(e=>e.step.id)),n=/* @__PURE__ */ new Set,r=[];for(;t.size>0;){let i=!1;for(let a of e)t.has(a.step.id)&&a.dependencies.every(e=>n.has(e))&&(r.push(a),n.add(a.step.id),t.delete(a.step.id),i=!0);if(!i)break}return r}function hs(e,t,n){return e.filter(e=>t.has(e.step.id)?e.dependencies.every(e=>{let t=n.get(e);return t?.status===`succeeded`||t?.status===`failed`||t?.status===`skipped`}):!1)}function gs(e,t){let n=new Map(e.map((e,t)=>[e.step.id,t]));return[...t].sort((e,t)=>(n.get(e.id)??0)-(n.get(t.id)??0))}function _s(e){if(e===void 0)return 1;if(!Number.isInteger(e)||e<1)throw new U(`pipeline_validation_error`,`Invalid pipeline execution options`,{details:{issues:[`concurrency must be a positive integer`]}});return Math.min(e,64)}const vs=`workflow/v1`;function ys(e,t=Ai()){let n=Ss(e);return n.length>0?n:Cs(e,t)}function bs(e,t=Ai()){if(Ss(e).length>0)return[];let n=[],r=new Map(e.steps.map(e=>[e.id,e.type]));for(let i of e.steps)Es(i.input,i.id,r,t,n);return n}function xs(e,t){if(!e.inputs)return t;let n=ko(e.inputs,t);if(n.ok)return n.value;throw new U(`pipeline_validation_error`,`Invalid pipeline runtime input`,{details:{issues:n.issues}})}function Ss(e){let t=[];if(!W(e))return t.push(`structural: pipeline must be an object`),t;if(e.version!==`workflow/v1`&&t.push(`structural: pipeline.version must be "${vs}"`),!Array.isArray(e.steps))return t.push(`structural: pipeline.steps must be an array`),t;e.steps.length===0&&t.push(`structural: pipeline.steps must contain at least one step`);for(let[n,r]of e.steps.entries()){if(!W(r)){t.push(`structural: step at index ${n} must be an object`);continue}(!r.id||typeof r.id!=`string`)&&t.push(`structural: step at index ${n} must have a string id`),(!r.type||typeof r.type!=`string`)&&t.push(`structural: step at index ${n} must have a string type`),W(r.input)||t.push(`structural: step at index ${n} must have an input object`)}return t}function Cs(e,t){let n=[];e.inputs&&n.push(...Oo(e.inputs,`pipeline.inputs`));let r=e.steps,i=/* @__PURE__ */ new Set;for(let[e,a]of r.entries()){let r=a.id||`#${e}`;i.has(a.id)&&n.push(`duplicate step id "${a.id}"`),i.add(a.id),t.hasStep(a.type)||n.push(`semantic: step "${r}" references unknown type "${a.type}"`),a.dependsOn!==void 0&&(!Array.isArray(a.dependsOn)||!a.dependsOn.every(e=>typeof e==`string`))&&n.push(`semantic: step "${r}" dependsOn must be an array of step id strings`),a.retry!==void 0&&Ts(a.retry,r,n),a.timeout!==void 0&&zi(a.timeout)===void 0&&n.push(`semantic: step "${r}" timeout must be a positive number of seconds or duration string`),a.type===`script/js`&&typeof(W(a.input)?a.input.code:void 0)!=`string`&&n.push(`semantic: step "${r}" (script/js) requires a literal string "code"; code sourced from another step ($from) or an expression is not allowed, since it would execute untrusted text as host code`)}for(let e of r){for(let t of e.dependsOn??[])i.has(t)||n.push(`semantic: step "${e.id}" references missing step "${t}"`),t===e.id&&n.push(`semantic: step "${e.id}" references itself`);ws(e.input,e.id,i,n)}let a=/* @__PURE__ */ new Map;for(let e of r){let t=new Set(e.dependsOn??[]);Bi(e.input,t),e.when!==void 0&&Bi(e.when,t),a.set(e.id,t)}for(let e of Ds(a))n.push(`semantic: pipeline graph contains cycle: ${e.join(` -> `)}`);return n}function ws(e,t,n,r){if(Array.isArray(e)){e.forEach(e=>ws(e,t,n,r));return}if(W(e)){`$from`in e&&typeof e.$from==`string`&&(n.has(e.$from)||r.push(`semantic: step "${t}" $from references missing step "${e.$from}"`));for(let i of Object.values(e))ws(i,t,n,r)}}function Ts(e,t,n){if(!W(e)){n.push(`step "${t}" retry must be an object`);return}let r=e.maxAttempts;r!==void 0&&(typeof r!=`number`||!Number.isInteger(r)||r<1)&&n.push(`step "${t}" retry.maxAttempts must be a positive integer`),e.backoff!==void 0&&e.backoff!==`none`&&e.backoff!==`linear`&&e.backoff!==`exponential`&&n.push(`step "${t}" retry.backoff must be none, linear, or exponential`)}function Es(e,t,n,r,i){if(Array.isArray(e)){e.forEach(e=>Es(e,t,n,r,i));return}if(W(e)){if(`$from`in e&&typeof e.$from==`string`&&typeof e.path==`string`){let a=n.get(e.$from);if(a){let n=r.getOutputSchema(a);if(n){let r=e.path;if(!n.paths.some(e=>r===e.path||r.startsWith(e.path+`/`))){let o=n.paths.map(e=>e.path).join(`, `);i.push(`hint: step "${t}" references path "${r}" from "${e.$from}" (${a}), which is not a known output path. Known paths: ${o}`)}}}return}for(let a of Object.values(e))Es(a,t,n,r,i)}}function Ds(e){let t=[],n=/* @__PURE__ */ new Set,r=/* @__PURE__ */ new Set,i=[],a=o=>{if(n.has(o)){let e=i.indexOf(o);t.push([...i.slice(e),o]);return}if(!r.has(o)){n.add(o),i.push(o);for(let t of e.get(o)??[])e.has(t)&&a(t);i.pop(),n.delete(o),r.add(o)}};for(let t of e.keys())a(t);return t}async function Os(e,t={},n={}){return await As(e,t,n)}async function*ks(e,t={},n={}){let r=new Bs(1024),i=new AbortController,a=()=>i.abort();n.signal?.aborted?a():n.signal?.addEventListener(`abort`,a,{once:!0});let o=!1,s;As(e,t,{...n,signal:i.signal,onEvent:async e=>{await r.push(e)}}).then(()=>{o=!0,r.close()},e=>{s=e,o=!0,r.close()});try{for(;!o||r.size>0;){let e=await r.shift();if(e){yield e;continue}if(s)throw s}if(s)throw s}finally{i.abort(),n.signal?.removeEventListener(`abort`,a),r.close()}}async function As(e,t,n){let r=n.stepDispatcher??Ai(),i=ys(e,r);if(i.length>0)throw new U(`pipeline_validation_error`,`Invalid pipeline definition`,{details:{issues:i}});let a=xs(e,t);if(n.basePath){let t=await Vi(e.steps,n.basePath);if(t.length>0)throw new U(`pipeline_file_not_found`,t.join(`; `),{details:{issues:t}})}let o=Pi(),s=ps(e),c=_s(n.concurrency),l=[],u=/* @__PURE__ */ new Map,d=/* @__PURE__ */ new Map,f=[],p=async e=>{await n.onEvent?.(e)};if(await p({type:`pipeline.started`,timestamp:Q(),status:n.dryRun?`planned`:`running`,stepCount:e.steps.length,dryRun:!!n.dryRun}),n.dryRun){for(let t of ms(s)){let n=Bo(t.step,e,a),r=Ni(t.step.type,n.redacted,o.settings),i={id:t.step.id,type:t.step.type,status:`planned`,dependencies:t.dependencies,input:r,...t.step.when===void 0?{}:{condition:`pending`}};l.push(i),await p({type:`step.input.resolved`,timestamp:Q(),status:`planned`,step:$(t),input:Ps(r,n.sensitiveKeys)}),await p({type:`step.planned`,timestamp:Q(),status:`planned`,step:$(t),input:Ps(r,n.sensitiveKeys),...t.step.when===void 0?{}:{condition:`pending`}})}return await p({type:`pipeline.planned`,timestamp:Q(),status:`planned`,stepCount:l.length,artifactCount:f.length}),{status:`planned`,version:vs,steps:l,artifacts:f}}let m=new Set(s.map(e=>e.step.id)),h=/* @__PURE__ */ new Map;for(;m.size>0||h.size>0;){let t=!1;for(let i of hs(s,m,u)){if(h.size>=c)break;if(!m.has(i.step.id))continue;let s=i.dependencies.map(e=>u.get(e)),g=s.find(e=>e?.status===`failed`);if(g){let e=`dependency ${g.id} failed`;Ns(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}if(s.length>0&&s.every(e=>e?.status===`skipped`)){let e=`all dependencies skipped`;Ns(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}if(!(i.step.when===void 0||Vo(i.step.when,e,a,d))){let e=`condition evaluated to false`;Ns(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e,condition:`false`}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}let _=js(i,e,a,d,f,p,n,o,r);h.set(i.step.id,_),m.delete(i.step.id),t=!0}if(h.size>0){let e=await Promise.race(h.values());h.delete(e.id),Ns(l,u,e),t=!0}if(!t)throw new U(`pipeline_graph_error`,`Workflow graph did not make progress`,{details:{remaining:Array.from(m)}})}let g=gs(s,l),_=g.find(e=>e.status===`failed`);if(_?.error){let e=s.find(e=>e.step.id===_.id);return await p({type:`pipeline.failed`,timestamp:Q(),status:`failed`,stepCount:g.length,artifactCount:f.length,failedStep:e?$(e):{id:_.id,type:_.type,dependencies:_.dependencies,index:g.findIndex(e=>e.id===_.id)+1,total:g.length},error:_.error}),{status:`failed`,version:vs,steps:g,artifacts:f}}return await p({type:`pipeline.succeeded`,timestamp:Q(),status:`succeeded`,stepCount:g.length,artifactCount:f.length}),{status:`succeeded`,version:vs,steps:g,artifacts:f}}async function js(e,t,n,r,i,a,o,s,c){let l=Math.max(1,Math.floor(e.step.retry?.maxAttempts??1)),u,d,f=!1,p=(/* @__PURE__ */ new Date()).toISOString(),m=p;for(let h=1;h<=l;h++){p=(/* @__PURE__ */ new Date()).toISOString(),await a({type:`step.started`,timestamp:Q(),status:`running`,step:$(e),timing:{startedAt:p},attempt:h});try{let l=zo(e.step,t,n,r),u=l.value,g=l.redacted;if(o.basePath){let t=Li(u,o.basePath);u=t.input,g=Li(l.redacted,o.basePath).input;let n=await Ri(u,t.resolvedKeys.filter(e=>!Fi.includes(e)),e.step.id);if(n.length>0)throw new U(`pipeline_file_not_found`,n.join(`; `),{step:e.step.type,details:{issues:n}})}d=g,f=l.sensitive,await a({type:`step.input.resolved`,timestamp:Q(),status:`running`,step:$(e),input:Ps(g,l.sensitiveKeys)});let _=await Ms(e.step,u,o,$(e),a,s,c);r.set(e.step.id,_);let v=l.sensitive?Uo(_):_;v.artifacts&&i.push(...v.artifacts),m=(/* @__PURE__ */ new Date()).toISOString();for(let t of v.artifacts??[])await a({type:`artifact.created`,timestamp:Q(),status:`running`,step:$(e),artifact:t});return await a({type:`step.succeeded`,timestamp:Q(),status:`running`,step:$(e),timing:Ls(p,m),output:Fs(v),attempt:h,...v.warnings&&v.warnings.length>0?{warnings:v.warnings}:{}}),{id:e.step.id,type:e.step.type,status:`succeeded`,dependencies:e.dependencies,input:l.redacted,output:v,startedAt:p,finishedAt:m,attempts:h,...e.step.when===void 0?{}:{condition:`true`}}}catch(t){let n=Di(t,e.step.type);if(u=f?Wo(n.toJSON()):n.toJSON(),m=(/* @__PURE__ */ new Date()).toISOString(),h<l){await a({type:`step.retrying`,timestamp:Q(),status:`running`,step:$(e),attempt:h,nextAttempt:h+1,error:u});let t=Rs(e.step.retry?.backoff,h,o.retryDelayBaseMs??100);t>0&&await(o.sleep??zs)(t);continue}}}let h=u??{code:`pipeline_step_failed`,message:`Step ${e.step.id} failed`,step:e.step.type,details:{}};return await a({type:`step.failed`,timestamp:Q(),status:`failed`,step:$(e),timing:Ls(p,m),attempt:l,error:h}),{id:e.step.id,type:e.step.type,status:`failed`,dependencies:e.dependencies,...d?{input:d}:{},error:h,startedAt:p,finishedAt:m,attempts:l}}async function Ms(e,t,n,r,i,a,o){let s=zi(e.timeout)??n.timeoutSeconds,c={dryRun:!1,signal:n.signal,timeoutSeconds:s,blRequestTimeoutSeconds:n.blRequestTimeoutSeconds,emitEvent:async e=>{e.type===`step.polling`&&await i({...e,type:`step.polling`,timestamp:e.timestamp??Q(),status:`running`,step:r,taskId:e.taskId,taskStatus:e.taskStatus,elapsedMs:e.elapsedMs,pollAttempt:e.pollAttempt})},blEnv:a};if(!s)return await o.executeStep(e.type,t,c);let l=new AbortController,u=()=>l.abort();n.signal?.aborted?u():n.signal?.addEventListener(`abort`,u,{once:!0});let d=s*1e3,f=setTimeout(()=>l.abort(),d);c.signal=l.signal;try{return await Promise.race([o.executeStep(e.type,t,c),new Promise((t,n)=>{l.signal.addEventListener(`abort`,()=>{n(new U(`step_timeout`,`Step ${e.id} exceeded timeout ${s}s`,{step:e.type}))},{once:!0})})])}finally{clearTimeout(f),n.signal?.removeEventListener(`abort`,u)}}function Ns(e,t,n){e.push(n),t.set(n.id,n)}function Q(){return(/* @__PURE__ */ new Date()).toISOString()}function $(e){return{id:e.step.id,type:e.step.type,dependencies:e.dependencies,index:e.index,total:e.total}}function Ps(e,t=[]){return{keys:Object.keys(e).sort(),...t.length>0?{redactedKeys:t.sort()}:{}}}function Fs(e){return{...e.data===void 0?{}:{dataType:Is(e.data)},artifactCount:e.artifacts?.length??0,warningCount:e.warnings?.length??0,...e.metadata?{metadata:e.metadata}:{}}}function Is(e){return Array.isArray(e)?`array`:e===null?`null`:typeof e}function Ls(e,t){return{startedAt:e,finishedAt:t,durationMs:Math.max(0,Date.parse(t)-Date.parse(e))}}function Rs(e=`none`,t,n){return e===`none`?0:e===`linear`?n*t:n*2**(t-1)}function zs(e){return new Promise(t=>setTimeout(t,e))}var Bs=class{items=[];takers=[];pushWaiters=[];closed=!1;maxSize;constructor(e){this.maxSize=e}get size(){return this.items.length}async push(e){for(;!this.closed&&this.items.length>=this.maxSize;)await new Promise(e=>this.pushWaiters.push(e));if(this.closed)return;let t=this.takers.shift();if(t){t(e);return}this.items.push(e)}async shift(){let e=this.items.shift();if(e!==void 0)return this.wakePushWaiter(),e;if(!this.closed)return await new Promise(e=>this.takers.push(e))}close(){if(!this.closed){this.closed=!0;for(let e of this.takers.splice(0))e(void 0);for(let e of this.pushWaiters.splice(0))e()}}wakePushWaiter(){this.pushWaiters.shift()?.()}};export{xn as API_KEY_PAGE,bn as BAILIAN_CONSOLE,yn as BAILIAN_CONSOLE_ROOT,Ei as BOOL_FLAG_PROMPT_EXTEND_API_DEFAULT,wi as BOOL_FLAG_PROMPT_EXTEND_CLI_TRUE,Ti as BOOL_FLAG_PROMPT_EXTEND_IMAGE_GENERATE,Ci as BOOL_FLAG_WATERMARK,Cr as CLI_VERSION,Pt as CommandRegistry,wn as MCP_WEBSEARCH_PAGE,Bt as NPM_PACKAGE,zt as NPM_REGISTRY,Sn as TOKEN_PLAN_PAGE,Tn as VOICE_TTS_PAGE,F as ansi,sn as checkForUpdate,bs as collectPipelineHints,ys as collectPipelineIssues,un as compose,Sr as createCli,Kr as createProgressBar,Gr as createSpinner,B as displayWidth,Jr as downloadFile,Qr as downloadParallel,Tr as emitBare,Er as emitRequestId,wr as emitResult,vi as ensureBinaryPathEntries,Os as executePipeline,ai as fetchBinaryChannelManifest,ii as fetchBinaryChannelVersion,$t as fetchLatestVersion,Yr as formatBytes,Dr as formatTable,ni as getBinaryBinRoot,ri as getBinaryCurrentPath,V as getBinaryShareRoot,H as getBinaryVersionsDir,Xr as getConcurrency,tn as getPendingUpdateNotification,z as handleError,fs as initPipelineSteps,xt as isTerminal,ci as isValidUpdateTargetVersion,Lt as maybeShowStatusBar,Cn as mcpMarketplaceDetailPage,oi as normalizeBinaryVersion,kr as padEnd,yt as parseFlags,vt as parsePath,Si as performBinaryUpdate,qr as poll,Et as printQuickStart,Tt as printWelcomeBanner,xi as pruneBinaryVersions,hi as readCurrentVersionDir,Ur as renderBoxTable,Vr as renderGauge,Ft as resolve,ui as resolveBinaryDownloadSpec,ei as resolveImageSize,Zr as runConcurrent,vn as setupProxyFromEnv,ks as streamPipelineEvents,St as supportsColor,_i as switchCurrentToVersion};
79
+ if(!Array.isArray(r))throw Error(`ajv implementation error`);let a=n.name(`valid`);r.forEach((n,r)=>{if((0,t.alwaysValidSchema)(i,n))return;let o=e.subschema({keyword:`allOf`,schemaProp:r},a);e.ok(a),e.mergeEvaluated(o)})}}})),ho=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=q(),r={keyword:`if`,schemaType:[`object`,`boolean`],trackErrors:!0,error:{message:({params:e})=>(0,t.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,t._)`{failingKeyword: ${e.ifClause}}`},code(e){let{gen:r,parentSchema:a,it:o}=e;a.then===void 0&&a.else===void 0&&(0,n.checkStrictMode)(o,`"if" without "then" and "else" is ignored`);let s=i(o,`then`),c=i(o,`else`);if(!s&&!c)return;let l=r.let(`valid`,!0),u=r.name(`_valid`);if(d(),e.reset(),s&&c){let t=r.let(`ifClause`);e.setParams({ifClause:t}),r.if(u,f(`then`,t),f(`else`,t))}else s?r.if(u,f(`then`)):r.if((0,t.not)(u),f(`else`));e.pass(l,()=>e.error(!0));function d(){let t=e.subschema({keyword:`if`,compositeRule:!0,createErrors:!1,allErrors:!1},u);e.mergeEvaluated(t)}function f(n,i){return()=>{let a=e.subschema({keyword:n},u);r.assign(l,u),e.mergeValidEvaluated(a,l),i?r.assign(i,(0,t._)`${n}`):e.setParams({ifClause:n})}}}};function i(e,t){let r=e.schema[t];return r!==void 0&&!(0,n.alwaysValidSchema)(e,r)}e.default=r})),go=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=q();e.default={keyword:[`then`,`else`],schemaType:[`object`,`boolean`],code({keyword:e,parentSchema:n,it:r}){n.if===void 0&&(0,t.checkStrictMode)(r,`"${e}" without "if" is ignored`)}}})),_o=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=eo(),n=no(),r=to(),i=ro(),a=io(),o=ao(),s=oo(),c=so(),l=co(),u=lo(),d=uo(),f=fo(),p=po(),m=mo(),h=ho(),g=go();function _(e=!1){let _=[d.default,f.default,p.default,m.default,h.default,g.default,s.default,c.default,o.default,l.default,u.default];return e?_.push(n.default,i.default):_.push(t.default,r.default),_.push(a.default),_}e.default=_})),vo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K();e.default={keyword:`format`,type:[`number`,`string`],schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,t._)`{format: ${e}}`},code(e,n){let{gen:r,data:i,$data:a,schema:o,schemaCode:s,it:c}=e,{opts:l,errSchemaPath:u,schemaEnv:d,self:f}=c;if(!l.validateFormats)return;a?p():m();function p(){let a=r.scopeValue(`formats`,{ref:f.formats,code:l.code.formats}),o=r.const(`fDef`,(0,t._)`${a}[${s}]`),c=r.let(`fType`),u=r.let(`format`);r.if((0,t._)`typeof ${o} == "object" && !(${o} instanceof RegExp)`,()=>r.assign(c,(0,t._)`${o}.type || "string"`).assign(u,(0,t._)`${o}.validate`),()=>r.assign(c,(0,t._)`"string"`).assign(u,o)),e.fail$data((0,t.or)(p(),m()));function p(){return l.strictSchema===!1?t.nil:(0,t._)`${s} && !${u}`}function m(){let e=d.$async?(0,t._)`(${o}.async ? await ${u}(${i}) : ${u}(${i}))`:(0,t._)`${u}(${i})`,r=(0,t._)`(typeof ${u} == "function" ? ${e} : ${u}.test(${i}))`;return(0,t._)`${u} && ${u} !== true && ${c} === ${n} && !${r}`}}function m(){let a=f.formats[o];if(!a){m();return}if(a===!0)return;let[s,c,p]=h(a);s===n&&e.pass(g());function m(){if(l.strictSchema===!1){f.logger.warn(e());return}throw Error(e());function e(){return`unknown format "${o}" ignored in schema at path "${u}"`}}function h(e){let n=e instanceof RegExp?(0,t.regexpCode)(e):l.code.formats?(0,t._)`${l.code.formats}${(0,t.getProperty)(o)}`:void 0,i=r.scopeValue(`formats`,{key:o,ref:e,code:n});return typeof e==`object`&&!(e instanceof RegExp)?[e.type||`string`,e.validate,(0,t._)`${i}.validate`]:[`string`,e,i]}function g(){if(typeof a==`object`&&!(a instanceof RegExp)&&a.async){if(!d.$async)throw Error(`async format in sync schema`);return(0,t._)`await ${p}(${i})`}return typeof c==`function`?(0,t._)`${p}(${i})`:(0,t._)`${p}.test(${i})`}}}}})),yo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=[vo().default]})),bo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.contentVocabulary=e.metadataVocabulary=void 0,e.metadataVocabulary=[`title`,`description`,`default`,`deprecated`,`readOnly`,`writeOnly`,`examples`],e.contentVocabulary=[`contentMediaType`,`contentEncoding`,`contentSchema`]})),xo=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Ba(),n=$a(),r=_o(),i=yo(),a=bo();e.default=[t.default,n.default,(0,r.default)(),i.default,a.metadataVocabulary,a.contentVocabulary]})),So=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DiscrError=void 0;var t;(function(e){e.Tag=`tag`,e.Mapping=`mapping`})(t||(e.DiscrError=t={}))})),Co=/* @__PURE__ */ P((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=K(),n=So(),r=ja(),i=Aa(),a=q();e.default={keyword:`discriminator`,type:`object`,schemaType:`object`,error:{message:({params:{discrError:e,tagName:t}})=>e===n.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:n,tagName:r}})=>(0,t._)`{error: ${e}, tag: ${r}, tagValue: ${n}}`},code(e){let{gen:o,data:s,schema:c,parentSchema:l,it:u}=e,{oneOf:d}=l;if(!u.opts.discriminator)throw Error(`discriminator: requires discriminator option`);let f=c.propertyName;if(typeof f!=`string`)throw Error(`discriminator: requires propertyName`);if(c.mapping)throw Error(`discriminator: mapping is not supported`);if(!d)throw Error(`discriminator: requires oneOf keyword`);let p=o.let(`valid`,!1),m=o.const(`tag`,(0,t._)`${s}${(0,t.getProperty)(f)}`);o.if((0,t._)`typeof ${m} == "string"`,()=>h(),()=>e.error(!1,{discrError:n.DiscrError.Tag,tag:m,tagName:f})),e.ok(p);function h(){let r=_();o.if(!1);for(let e in r)o.elseIf((0,t._)`${m} === ${e}`),o.assign(p,g(r[e]));o.else(),e.error(!1,{discrError:n.DiscrError.Mapping,tag:m,tagName:f}),o.endIf()}function g(n){let r=o.name(`valid`),i=e.subschema({keyword:`oneOf`,schemaProp:n},r);return e.mergeEvaluated(i,t.Name),r}function _(){let e={},t=o(l),n=!0;for(let e=0;e<d.length;e++){let c=d[e];if(c?.$ref&&!(0,a.schemaHasRulesButRef)(c,u.self.RULES)){let e=c.$ref;if(c=r.resolveRef.call(u.self,u.schemaEnv.root,u.baseId,e),c instanceof r.SchemaEnv&&(c=c.schema),c===void 0)throw new i.default(u.opts.uriResolver,u.baseId,e)}let l=c?.properties?.[f];if(typeof l!=`object`)throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${f}"`);n&&=t||o(c),s(l,e)}if(!n)throw Error(`discriminator: "${f}" must be required`);return e;function o({required:e}){return Array.isArray(e)&&e.includes(f)}function s(e,t){if(e.const)c(e.const,t);else if(e.enum)for(let n of e.enum)c(n,t);else throw Error(`discriminator: "properties/${f}" must have "const" or "enum"`)}function c(t,n){if(typeof t!=`string`||t in e)throw Error(`discriminator: "${f}" values must be unique strings`);e[t]=n}}}}})),wo=/* @__PURE__ */ P(((e,t)=>{t.exports={$schema:`http://json-schema.org/draft-07/schema#`,$id:`http://json-schema.org/draft-07/schema#`,title:`Core schema meta-schema`,definitions:{schemaArray:{type:`array`,minItems:1,items:{$ref:`#`}},nonNegativeInteger:{type:`integer`,minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:`#/definitions/nonNegativeInteger`},{default:0}]},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},uniqueItems:!0,default:[]}},type:[`object`,`boolean`],properties:{$id:{type:`string`,format:`uri-reference`},$schema:{type:`string`,format:`uri`},$ref:{type:`string`,format:`uri-reference`},$comment:{type:`string`},title:{type:`string`},description:{type:`string`},default:!0,readOnly:{type:`boolean`,default:!1},examples:{type:`array`,items:!0},multipleOf:{type:`number`,exclusiveMinimum:0},maximum:{type:`number`},exclusiveMaximum:{type:`number`},minimum:{type:`number`},exclusiveMinimum:{type:`number`},maxLength:{$ref:`#/definitions/nonNegativeInteger`},minLength:{$ref:`#/definitions/nonNegativeIntegerDefault0`},pattern:{type:`string`,format:`regex`},additionalItems:{$ref:`#`},items:{anyOf:[{$ref:`#`},{$ref:`#/definitions/schemaArray`}],default:!0},maxItems:{$ref:`#/definitions/nonNegativeInteger`},minItems:{$ref:`#/definitions/nonNegativeIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},contains:{$ref:`#`},maxProperties:{$ref:`#/definitions/nonNegativeInteger`},minProperties:{$ref:`#/definitions/nonNegativeIntegerDefault0`},required:{$ref:`#/definitions/stringArray`},additionalProperties:{$ref:`#`},definitions:{type:`object`,additionalProperties:{$ref:`#`},default:{}},properties:{type:`object`,additionalProperties:{$ref:`#`},default:{}},patternProperties:{type:`object`,additionalProperties:{$ref:`#`},propertyNames:{format:`regex`},default:{}},dependencies:{type:`object`,additionalProperties:{anyOf:[{$ref:`#`},{$ref:`#/definitions/stringArray`}]}},propertyNames:{$ref:`#`},const:!0,enum:{type:`array`,items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:`#/definitions/simpleTypes`},{type:`array`,items:{$ref:`#/definitions/simpleTypes`},minItems:1,uniqueItems:!0}]},format:{type:`string`},contentMediaType:{type:`string`},contentEncoding:{type:`string`},if:{$ref:`#`},then:{$ref:`#`},else:{$ref:`#`},allOf:{$ref:`#/definitions/schemaArray`},anyOf:{$ref:`#/definitions/schemaArray`},oneOf:{$ref:`#/definitions/schemaArray`},not:{$ref:`#`}},default:!0}}));const To=(/* @__PURE__ */ mt((/* @__PURE__ */ P(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MissingRefError=e.ValidationError=e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=e.Ajv=void 0;let n=La(),r=xo(),i=Co(),a=wo(),o=[`/properties`],s=`http://json-schema.org/draft-07/schema`;var c=class extends n.default{_addVocabularies(){super._addVocabularies(),r.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(a,o):a;this.addMetaSchema(e,s,!1),this.refs[`http://json-schema.org/schema`]=s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s)?s:void 0)}};e.Ajv=c,t.exports=e=c,t.exports.Ajv=c,Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var l=Oa();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=K();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var d=ka();Object.defineProperty(e,"ValidationError",{enumerable:!0,get:function(){return d.default}});var f=Aa();Object.defineProperty(e,"MissingRefError",{enumerable:!0,get:function(){return f.default}})})))(),1)).default,Eo=/* @__PURE__ */ new Set([`type`,`properties`,`items`,`required`,`enum`,`default`,`description`,`format`,`additionalProperties`]),Do=/* @__PURE__ */ new Set([`string`,`number`,`integer`,`boolean`,`array`,`object`,`null`]),Oo=new To({allErrors:!0,coerceTypes:!1,strict:!1,useDefaults:!1});function ko(e,t=`schema`){let n=[];return No(e,t,n),n.length===0&&!Oo.validateSchema(e)&&n.push(...Po(Oo.errors,t)),n}function Ao(e,t){let n=Io(t,e,`input`);return n.ok?W(n.value)?{ok:!0,value:n.value}:{ok:!1,issues:[`input must be an object`]}:{ok:!1,issues:n.issues}}function jo(e){if(e===``)return{ok:!0,segments:[]};if(!e.startsWith(`/`))return{ok:!1,segments:[],issue:`must start with /`};let t=e.slice(1).split(`/`),n=[];for(let e of t){if(e.match(/~(?![01])/))return{ok:!1,segments:[],issue:`contains invalid escape sequence`};n.push(e.replace(/~1/g,`/`).replace(/~0/g,`~`))}return{ok:!0,segments:n}}function Mo(e,t){let n=jo(t);if(!n.ok)return;let r=e;for(let e of n.segments){if(Array.isArray(r)){if(!/^(0|[1-9]\d*)$/.test(e))return;r=r[Number(e)];continue}if(W(r)){if(e===`__proto__`||e===`constructor`||e===`prototype`||!Object.prototype.hasOwnProperty.call(r,e))return;r=r[e];continue}return}return r}function No(e,t,n){if(!W(e)){n.push(`${t} must be an object`);return}for(let r of Object.keys(e))Eo.has(r)||n.push(`${t} has unsupported keyword "${r}"`);if(`type`in e&&Fo(e.type,`${t}.type`,n),`properties`in e){if(!W(e.properties))n.push(`${t}.properties must be an object`);else for(let[r,i]of Object.entries(e.properties))No(i,`${t}.properties.${r}`,n)}if(`items`in e&&No(e.items,`${t}.items`,n),`required`in e&&(!Array.isArray(e.required)||!e.required.every(e=>typeof e==`string`))&&n.push(`${t}.required must be an array of strings`),`enum`in e&&!Array.isArray(e.enum)&&n.push(`${t}.enum must be an array`),`description`in e&&typeof e.description!=`string`&&n.push(`${t}.description must be a string`),`format`in e&&typeof e.format!=`string`&&n.push(`${t}.format must be a string`),`additionalProperties`in e){let r=e.additionalProperties;r!==!0&&r!==!1&&!W(r)?n.push(`${t}.additionalProperties must be a boolean or schema object`):W(r)&&No(r,`${t}.additionalProperties`,n)}}function Po(e,t){return!e||e.length===0?[`${t} is invalid`]:e.map(e=>`${e.instancePath?`${t}${e.instancePath.replace(/\//g,`.`)}`:t} ${e.message??`is invalid`}${e.keyword?` (${e.keyword})`:``}`)}function Fo(e,t,n){let r=Array.isArray(e)?e:[e];if(r.length===0){n.push(`${t} must not be empty`);return}for(let e of r)Do.has(e)||n.push(`${t} has unsupported type "${String(e)}"`)}function Io(e,t,n){if((e==null||e===``)&&t.default!==void 0&&(e=t.default),t.enum&&e!==void 0){let r=t.enum.map(Ro);if(!r.includes(Ro(e)))return{ok:!1,issues:[`${n} must be one of: ${r.join(`, `)}`]}}let r=Lo(t);if(r.size===0)return{ok:!0,value:e};if(r.size>1){if(Array.isArray(e)&&r.has(`array`)){if(!t.items)return{ok:!0,value:e};let r=[],i=[];return e.forEach((e,a)=>{let o=Io(e,t.items,`${n}.${a}`);o.ok?r[a]=o.value:i.push(...o.issues)}),i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(!(W(e)&&r.has(`object`))&&r.has(`string`)&&!Array.isArray(e)&&!W(e))return{ok:!0,value:String(e)}}if(r.has(`object`)){if(!W(e))return{ok:!1,issues:[`${n} must be an object`]};let r={...e},i=[];for(let e of t.required??[]){let t=r[e];(t==null||t===``)&&i.push(`Missing required input "${e}"`)}for(let[e,a]of Object.entries(t.properties??{})){let t=r[e];if((t==null||t===``)&&a.default===void 0)continue;let o=Io(t,a,`${n}.${e}`);o.ok?r[e]=o.value:i.push(...o.issues)}if(t.additionalProperties===!1)for(let e of Object.keys(r))t.properties?.[e]||i.push(`Unknown input "${e}"`);return i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(r.has(`array`)){if(!Array.isArray(e))return{ok:!1,issues:[`${n} must be an array`]};if(!t.items)return{ok:!0,value:e};let r=[],i=[];return e.forEach((e,a)=>{let o=Io(e,t.items,`${n}.${a}`);o.ok?r[a]=o.value:i.push(...o.issues)}),i.length>0?{ok:!1,issues:i}:{ok:!0,value:r}}if(r.has(`string`))return{ok:!0,value:String(e)};if(r.has(`number`)||r.has(`integer`)){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?r.has(`integer`)&&!Number.isInteger(t)?{ok:!1,issues:[`${n} must be an integer`]}:{ok:!0,value:t}:{ok:!1,issues:[`${n} must be a number`]}}return r.has(`boolean`)?typeof e==`boolean`?{ok:!0,value:e}:e===`true`||e===`1`?{ok:!0,value:!0}:e===`false`||e===`0`?{ok:!0,value:!1}:{ok:!1,issues:[`${n} must be a boolean`]}:r.has(`null`)?e===null?{ok:!0,value:e}:{ok:!1,issues:[`${n} must be null`]}:{ok:!0,value:e}}function Lo(e){let t=e.type===void 0?[]:Array.isArray(e.type)?e.type:[e.type];return new Set(t)}function Ro(e){return e==null?``:typeof e==`object`?JSON.stringify(e)??``:String(e)}const X=`[redacted]`;function zo(e){return e==null?``:typeof e==`object`?JSON.stringify(e)??``:String(e)}function Bo(e,t,n,r){let i={},a={},o=[],s=!1;for(let[c,l]of Object.entries(e.input)){let e=Ko(l,t,n,r);i[c]=e.value,a[c]=e.redacted,e.sensitive&&(s=!0,o.push(c))}return{value:i,redacted:a,sensitiveKeys:o,sensitive:s}}function Vo(e,t,n){let r={},i=[];for(let[a,o]of Object.entries(e.input)){let e=qo(o,t,n);r[a]=e.redacted,e.sensitive&&i.push(a)}return{redacted:r,sensitiveKeys:i}}function Ho(e,t,n,r){return Xo(e,e=>Ko(e,t,n,r))}function Uo(e){return Xo(e,e=>Z(e,e,!1,e!==void 0))}function Wo(e){return{...e.data===void 0?{}:{data:X},...e.artifacts?{artifacts:e.artifacts.map(ts)}:{},...e.warnings?{warnings:e.warnings.map(e=>({code:e.code,message:e.message}))}:{},metadata:{...e.metadata?.step?{step:e.metadata.step}:{},redacted:!0}}}function Go(e){return{code:e.code,message:X,...e.step?{step:e.step}:{},details:{redacted:!0}}}function Ko(e,t,n,r){if(Array.isArray(e)){let i=e.map(e=>Ko(e,t,n,r));return Z(i.map(e=>e.value),i.map(e=>e.redacted),i.some(e=>e.sensitive))}if(!ns(e)){if(!W(e))return Z(e,e,!1,e!==void 0);let i={},a={},o=!1;for(let[s,c]of Object.entries(e)){let e=Ko(c,t,n,r);i[s]=e.value,a[s]=e.redacted,o||=e.sensitive}return Z(i,a,o)}if(`$input`in e){let t=Mo(n,e.$input);return Z(t,t,!1,t!==void 0)}if(`$from`in e){let t=e.$from,n=r.get(t);if(!n)throw new U(`pipeline_reference_error`,`Step output not found: ${t}`);let i=typeof e.path==`string`?e.path:``,a=Mo(n,i);if(a===void 0)throw new U(`pipeline_reference_error`,`Step output path not found: ${t}${i}`);return Z(a,a,!1,!0)}if(`$env`in e){let n=Jo(t.env,e.$env,!1);return Z(n,n,!1,n!==void 0)}if(`$secret`in e){let n=Jo(t.secrets,e.$secret,!0);return Z(n,X,!0,n!==void 0)}if(`$concat`in e){let i=e.$concat.map(e=>Ko(e,t,n,r)),a=i.map(e=>zo(e.value)).join(``),o=i.some(e=>e.sensitive);return Z(a,i.map(e=>e.sensitive?X:zo(e.value)).join(``),o)}if(`$coalesce`in e){let i=e.$coalesce,a;for(let e of i)try{let i=Ko(e,t,n,r);if(i.exists&&i.value!==void 0&&i.value!==null)return i}catch(e){a=e;continue}if(a)throw a;return Z(void 0,void 0,!1,!1)}if(`$js`in e){let i=e.$js,a=e.args??{},o={},s={},c=!1;for(let[e,i]of Object.entries(a)){let a=Ko(i,t,n,r);o[e]=a.value,s[e]=a.redacted,c||=a.sensitive}try{let e=Function(`args`,`return (${i})`)(o);return Z(e,c?X:e,c)}catch(e){throw new U(`pipeline_js_error`,`$js expression failed: ${e instanceof Error?e.message:String(e)}`)}}return Z(e,e,!1)}function qo(e,t,n){if(Array.isArray(e)){let r=e.map(e=>qo(e,t,n));return Z(r.map(e=>e.value),r.map(e=>e.redacted),r.some(e=>e.sensitive))}if(!ns(e)){if(!W(e))return Z(e,e,!1,e!==void 0);let r={},i=!1;for(let[a,o]of Object.entries(e)){let e=qo(o,t,n);r[a]=e.redacted,i||=e.sensitive}return Z(r,r,i)}if(`$input`in e){let t=Mo(n,e.$input);return Z(t,t,!1,t!==void 0)}if(`$from`in e)return Z({...e},{...e},!1);if(`$env`in e){let n=Jo(t.env,e.$env,!1);return Z(n,n,!1,n!==void 0)}if(`$secret`in e)return Jo(t.secrets,e.$secret,!0),Z(X,X,!0,!0);if(`$concat`in e){let r=e.$concat.map(e=>qo(e,t,n));if(r.some((t,n)=>{let r=e.$concat[n];return W(r)&&`$from`in r}))return Z({...e},{...e},r.some(e=>e.sensitive));let i=r.map(e=>zo(e.value)).join(``),a=r.some(e=>e.sensitive);return Z(i,r.map(e=>e.sensitive?X:zo(e.value)).join(``),a)}if(`$coalesce`in e){let r=e.$coalesce;if(r.some(e=>W(e)&&`$from`in e))return Z({...e},{...e},!1);for(let e of r){let r=qo(e,t,n);if(r.exists&&r.value!==void 0&&r.value!==null)return r}return Z(void 0,void 0,!1,!1)}return`$js`in e?Z({...e},{...e},!1):Z(e,e,!1)}function Jo(e,t,n){if(!Yo(e,t))throw new U(n?`pipeline_secret_error`:`pipeline_env_error`,`${n?`Secret`:`Environment`} binding is not declared: ${t}`);let r=e[t],i=typeof r==`string`?{from:`env`,name:r,required:!0}:r,a=i.from===`env`||i.from===void 0?process.env[i.name]:void 0;if(a!==void 0&&a!==``)return a;if(i.default!==void 0)return i.default;if(i.required!==!1)throw new U(n?`pipeline_secret_error`:`pipeline_env_error`,`${n?`Secret`:`Environment`} binding not found: ${t}`)}function Yo(e,t){return!!e&&Object.prototype.hasOwnProperty.call(e,t)}function Z(e,t,n,r=!0){return{value:e,redacted:t,sensitive:n,exists:r}}function Xo(e,t){if(typeof e==`boolean`)return e;if(W(e)&&`$exists`in e)try{return t(e.$exists).exists}catch(e){if(e instanceof U&&e.code===`pipeline_reference_error`)return!1;throw e}if(W(e)&&`$and`in e){if(!Array.isArray(e.$and)||e.$and.length===0)throw es(`$and must be a non-empty array`);return e.$and.every(e=>Xo(e,t))}if(W(e)&&`$or`in e){if(!Array.isArray(e.$or)||e.$or.length===0)throw es(`$or must be a non-empty array`);return e.$or.some(e=>Xo(e,t))}if(W(e)&&`$not`in e)return!Xo(e.$not,t);let n=Zo(e);if(n){let[e,r]=n.operands,i=t(e).value,a=t(r).value;switch(n.operator){case`$eq`:return Qo(i,a);case`$ne`:return!Qo(i,a);case`$gt`:return $o(i,a,n.operator)>0;case`$gte`:return $o(i,a,n.operator)>=0;case`$lt`:return $o(i,a,n.operator)<0;case`$lte`:return $o(i,a,n.operator)<=0;case`$in`:if(!Array.isArray(a))throw es(`$in right operand must be an array`);return a.some(e=>Qo(e,i));case`$contains`:if(Array.isArray(i))return i.some(e=>Qo(e,a));if(typeof i==`string`&&typeof a==`string`)return i.includes(a);throw es(`$contains left operand must be an array or string`)}}return!!t(e).value}function Zo(e){if(W(e)){for(let t of[`$eq`,`$ne`,`$gt`,`$gte`,`$lt`,`$lte`,`$in`,`$contains`])if(t in e){if(!Array.isArray(e[t])||e[t].length!==2)throw es(`${t} must be a two-item array`);return{operator:t,operands:e[t]}}}}function Qo(e,t){return JSON.stringify(e)===JSON.stringify(t)}function $o(e,t,n){if(typeof e==`number`&&Number.isFinite(e)&&typeof t==`number`&&Number.isFinite(t))return e-t;if(typeof e==`string`&&typeof t==`string`)return e.localeCompare(t);throw es(`${n} operands must both be finite numbers or both be strings`)}function es(e){return new U(`pipeline_condition_error`,e)}function ts(e){return{id:e.id,kind:e.kind,mediaType:e.mediaType,metadata:e.metadata?{redacted:!0}:void 0}}function ns(e){return W(e)&&(`$input`in e||`$from`in e||`$env`in e||`$secret`in e||`$concat`in e||`$coalesce`in e||`$js`in e)}const rs={description:`Conditional branch selection from a list of cases`,paths:[{path:`/data/selected`,description:`Key of the matched case`},{path:`/data/value`,description:`Value of the matched case`},{path:`/data/matched`,description:`Whether a case was matched (boolean)`}]},is={description:`Select first available value from candidates`,paths:[{path:`/data/source`,description:`Source identifier of the selected candidate`},{path:`/data/value`,description:`Value of the selected candidate`},{path:`/data/matched`,description:`Whether a candidate was matched (boolean)`}]},as={description:`Assert a condition is true`,paths:[{path:`/data/ok`,description:`Whether the assertion passed (boolean)`},{path:`/data/message`,description:`Assertion message`}]};function os(e){Mi(`logic/switch`,e=>{let t=ss(e.cases);for(let e of t)if(Uo(e.condition))return{data:{selected:e.key,value:e.value,matched:!0}};if(`defaultValue`in e)return{data:{selected:typeof e.defaultKey==`string`?e.defaultKey:`default`,value:e.defaultValue,matched:!1}};throw new U(`logic_no_match`,`logic/switch did not match any case`,{step:`logic/switch`,details:{caseCount:t.length}})},e,rs),Mi(`logic/select`,e=>{let t=cs(e.candidates);for(let e of t)if((e.available===void 0||Uo(e.available))&&e.value!==void 0&&e.value!==null)return{data:{source:e.source,value:e.value,matched:!0}};if(`defaultValue`in e)return{data:{source:typeof e.defaultSource==`string`?e.defaultSource:`default`,value:e.defaultValue,matched:!1}};throw new U(`logic_no_candidate`,`logic/select did not receive an available candidate`,{step:`logic/select`,details:{candidateCount:t.length}})},e,is),Mi(`logic/assert`,e=>{let t=typeof e.message==`string`?e.message:`Logic assertion failed`,n=W(e.metadata)?e.metadata:void 0;if(!Uo(ls(e.condition))){if(e.soft===!0)return{data:{ok:!1,message:t,...n?{metadata:n}:{}}};throw new U(`logic_assertion_failed`,t,{step:`logic/assert`,details:n??{}})}return{data:{ok:!0,...e.message===void 0?{}:{message:t},...n?{metadata:n}:{}}}},e,as)}function ss(e){if(!Array.isArray(e))throw new U(`logic_input_error`,`cases must be an array`,{step:`logic/switch`});return e}function cs(e){if(!Array.isArray(e))throw new U(`logic_input_error`,`candidates must be an array`,{step:`logic/select`});return e}function ls(e){if(e===void 0)throw new U(`logic_input_error`,`condition is required`,{step:`logic/assert`});return e}const us={description:`Execute inline JavaScript; output shape is user-defined by the return value`,paths:[{path:`/data`,description:`Return value of the script (user-defined structure)`}]};function ds(e){Mi(`script/js`,e=>{let t=e.code;if(!t||typeof t!=`string`)throw new U(`script_js_error`,`script/js requires a 'code' string input`,{step:`script/js`});let n=e.args??{};try{return{data:Function(`args`,t)(n)??{}}}catch(e){throw new U(`script_js_error`,`script/js execution failed: ${e instanceof Error?e.message:String(e)}`,{step:`script/js`})}},e,us)}const fs=/* @__PURE__ */ new WeakSet;function ps(e=ji()){return fs.has(e)?e:(fs.add(e),oa(e),os(e),ds(e),e)}function ms(e){let t=e.steps.map((t,n)=>({step:t,dependencies:[],dependents:[],index:n+1,total:e.steps.length})),n=new Map(t.map(e=>[e.step.id,e]));for(let r of t){let t=new Set(r.step.dependsOn??[]);Vi(r.step.input,t),r.step.when!==void 0&&Vi(r.step.when,t),r.dependencies=Array.from(t).sort((t,n)=>e.steps.findIndex(e=>e.id===t)-e.steps.findIndex(e=>e.id===n));for(let e of r.dependencies)n.get(e)?.dependents.push(r.step.id)}return t}function hs(e){let t=new Set(e.map(e=>e.step.id)),n=/* @__PURE__ */ new Set,r=[];for(;t.size>0;){let i=!1;for(let a of e)t.has(a.step.id)&&a.dependencies.every(e=>n.has(e))&&(r.push(a),n.add(a.step.id),t.delete(a.step.id),i=!0);if(!i)break}return r}function gs(e,t,n){return e.filter(e=>t.has(e.step.id)?e.dependencies.every(e=>{let t=n.get(e);return t?.status===`succeeded`||t?.status===`failed`||t?.status===`skipped`}):!1)}function _s(e,t){let n=new Map(e.map((e,t)=>[e.step.id,t]));return[...t].sort((e,t)=>(n.get(e.id)??0)-(n.get(t.id)??0))}function vs(e){if(e===void 0)return 1;if(!Number.isInteger(e)||e<1)throw new U(`pipeline_validation_error`,`Invalid pipeline execution options`,{details:{issues:[`concurrency must be a positive integer`]}});return Math.min(e,64)}const ys=`workflow/v1`;function bs(e,t=ji()){let n=Cs(e);return n.length>0?n:ws(e,t)}function xs(e,t=ji()){if(Cs(e).length>0)return[];let n=[],r=new Map(e.steps.map(e=>[e.id,e.type]));for(let i of e.steps)Ds(i.input,i.id,r,t,n);return n}function Ss(e,t){if(!e.inputs)return t;let n=Ao(e.inputs,t);if(n.ok)return n.value;throw new U(`pipeline_validation_error`,`Invalid pipeline runtime input`,{details:{issues:n.issues}})}function Cs(e){let t=[];if(!W(e))return t.push(`structural: pipeline must be an object`),t;if(e.version!==`workflow/v1`&&t.push(`structural: pipeline.version must be "${ys}"`),!Array.isArray(e.steps))return t.push(`structural: pipeline.steps must be an array`),t;e.steps.length===0&&t.push(`structural: pipeline.steps must contain at least one step`);for(let[n,r]of e.steps.entries()){if(!W(r)){t.push(`structural: step at index ${n} must be an object`);continue}(!r.id||typeof r.id!=`string`)&&t.push(`structural: step at index ${n} must have a string id`),(!r.type||typeof r.type!=`string`)&&t.push(`structural: step at index ${n} must have a string type`),W(r.input)||t.push(`structural: step at index ${n} must have an input object`)}return t}function ws(e,t){let n=[];e.inputs&&n.push(...ko(e.inputs,`pipeline.inputs`));let r=e.steps,i=/* @__PURE__ */ new Set;for(let[e,a]of r.entries()){let r=a.id||`#${e}`;i.has(a.id)&&n.push(`duplicate step id "${a.id}"`),i.add(a.id),t.hasStep(a.type)||n.push(`semantic: step "${r}" references unknown type "${a.type}"`),a.dependsOn!==void 0&&(!Array.isArray(a.dependsOn)||!a.dependsOn.every(e=>typeof e==`string`))&&n.push(`semantic: step "${r}" dependsOn must be an array of step id strings`),a.retry!==void 0&&Es(a.retry,r,n),a.timeout!==void 0&&Bi(a.timeout)===void 0&&n.push(`semantic: step "${r}" timeout must be a positive number of seconds or duration string`),a.type===`script/js`&&typeof(W(a.input)?a.input.code:void 0)!=`string`&&n.push(`semantic: step "${r}" (script/js) requires a literal string "code"; code sourced from another step ($from) or an expression is not allowed, since it would execute untrusted text as host code`)}for(let e of r){for(let t of e.dependsOn??[])i.has(t)||n.push(`semantic: step "${e.id}" references missing step "${t}"`),t===e.id&&n.push(`semantic: step "${e.id}" references itself`);Ts(e.input,e.id,i,n)}let a=/* @__PURE__ */ new Map;for(let e of r){let t=new Set(e.dependsOn??[]);Vi(e.input,t),e.when!==void 0&&Vi(e.when,t),a.set(e.id,t)}for(let e of Os(a))n.push(`semantic: pipeline graph contains cycle: ${e.join(` -> `)}`);return n}function Ts(e,t,n,r){if(Array.isArray(e)){e.forEach(e=>Ts(e,t,n,r));return}if(W(e)){`$from`in e&&typeof e.$from==`string`&&(n.has(e.$from)||r.push(`semantic: step "${t}" $from references missing step "${e.$from}"`));for(let i of Object.values(e))Ts(i,t,n,r)}}function Es(e,t,n){if(!W(e)){n.push(`step "${t}" retry must be an object`);return}let r=e.maxAttempts;r!==void 0&&(typeof r!=`number`||!Number.isInteger(r)||r<1)&&n.push(`step "${t}" retry.maxAttempts must be a positive integer`),e.backoff!==void 0&&e.backoff!==`none`&&e.backoff!==`linear`&&e.backoff!==`exponential`&&n.push(`step "${t}" retry.backoff must be none, linear, or exponential`)}function Ds(e,t,n,r,i){if(Array.isArray(e)){e.forEach(e=>Ds(e,t,n,r,i));return}if(W(e)){if(`$from`in e&&typeof e.$from==`string`&&typeof e.path==`string`){let a=n.get(e.$from);if(a){let n=r.getOutputSchema(a);if(n){let r=e.path;if(!n.paths.some(e=>r===e.path||r.startsWith(e.path+`/`))){let o=n.paths.map(e=>e.path).join(`, `);i.push(`hint: step "${t}" references path "${r}" from "${e.$from}" (${a}), which is not a known output path. Known paths: ${o}`)}}}return}for(let a of Object.values(e))Ds(a,t,n,r,i)}}function Os(e){let t=[],n=/* @__PURE__ */ new Set,r=/* @__PURE__ */ new Set,i=[],a=o=>{if(n.has(o)){let e=i.indexOf(o);t.push([...i.slice(e),o]);return}if(!r.has(o)){n.add(o),i.push(o);for(let t of e.get(o)??[])e.has(t)&&a(t);i.pop(),n.delete(o),r.add(o)}};for(let t of e.keys())a(t);return t}async function ks(e,t={},n={}){return await js(e,t,n)}async function*As(e,t={},n={}){let r=new Vs(1024),i=new AbortController,a=()=>i.abort();n.signal?.aborted?a():n.signal?.addEventListener(`abort`,a,{once:!0});let o=!1,s;js(e,t,{...n,signal:i.signal,onEvent:async e=>{await r.push(e)}}).then(()=>{o=!0,r.close()},e=>{s=e,o=!0,r.close()});try{for(;!o||r.size>0;){let e=await r.shift();if(e){yield e;continue}if(s)throw s}if(s)throw s}finally{i.abort(),n.signal?.removeEventListener(`abort`,a),r.close()}}async function js(e,t,n){let r=n.stepDispatcher??ji(),i=bs(e,r);if(i.length>0)throw new U(`pipeline_validation_error`,`Invalid pipeline definition`,{details:{issues:i}});let a=Ss(e,t);if(n.basePath){let t=await Hi(e.steps,n.basePath);if(t.length>0)throw new U(`pipeline_file_not_found`,t.join(`; `),{details:{issues:t}})}let o=Fi(),s=ms(e),c=vs(n.concurrency),l=[],u=/* @__PURE__ */ new Map,d=/* @__PURE__ */ new Map,f=[],p=async e=>{await n.onEvent?.(e)};if(await p({type:`pipeline.started`,timestamp:Q(),status:n.dryRun?`planned`:`running`,stepCount:e.steps.length,dryRun:!!n.dryRun}),n.dryRun){for(let t of hs(s)){let n=Vo(t.step,e,a),r=Pi(t.step.type,n.redacted,o.settings),i={id:t.step.id,type:t.step.type,status:`planned`,dependencies:t.dependencies,input:r,...t.step.when===void 0?{}:{condition:`pending`}};l.push(i),await p({type:`step.input.resolved`,timestamp:Q(),status:`planned`,step:$(t),input:Fs(r,n.sensitiveKeys)}),await p({type:`step.planned`,timestamp:Q(),status:`planned`,step:$(t),input:Fs(r,n.sensitiveKeys),...t.step.when===void 0?{}:{condition:`pending`}})}return await p({type:`pipeline.planned`,timestamp:Q(),status:`planned`,stepCount:l.length,artifactCount:f.length}),{status:`planned`,version:ys,steps:l,artifacts:f}}let m=new Set(s.map(e=>e.step.id)),h=/* @__PURE__ */ new Map;for(;m.size>0||h.size>0;){let t=!1;for(let i of gs(s,m,u)){if(h.size>=c)break;if(!m.has(i.step.id))continue;let s=i.dependencies.map(e=>u.get(e)),g=s.find(e=>e?.status===`failed`);if(g){let e=`dependency ${g.id} failed`;Ps(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}if(s.length>0&&s.every(e=>e?.status===`skipped`)){let e=`all dependencies skipped`;Ps(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}if(!(i.step.when===void 0||Ho(i.step.when,e,a,d))){let e=`condition evaluated to false`;Ps(l,u,{id:i.step.id,type:i.step.type,status:`skipped`,dependencies:i.dependencies,skipReason:e,condition:`false`}),await p({type:`step.skipped`,timestamp:Q(),status:`running`,step:$(i),reason:e}),m.delete(i.step.id),t=!0;continue}let _=Ms(i,e,a,d,f,p,n,o,r);h.set(i.step.id,_),m.delete(i.step.id),t=!0}if(h.size>0){let e=await Promise.race(h.values());h.delete(e.id),Ps(l,u,e),t=!0}if(!t)throw new U(`pipeline_graph_error`,`Workflow graph did not make progress`,{details:{remaining:Array.from(m)}})}let g=_s(s,l),_=g.find(e=>e.status===`failed`);if(_?.error){let e=s.find(e=>e.step.id===_.id);return await p({type:`pipeline.failed`,timestamp:Q(),status:`failed`,stepCount:g.length,artifactCount:f.length,failedStep:e?$(e):{id:_.id,type:_.type,dependencies:_.dependencies,index:g.findIndex(e=>e.id===_.id)+1,total:g.length},error:_.error}),{status:`failed`,version:ys,steps:g,artifacts:f}}return await p({type:`pipeline.succeeded`,timestamp:Q(),status:`succeeded`,stepCount:g.length,artifactCount:f.length}),{status:`succeeded`,version:ys,steps:g,artifacts:f}}async function Ms(e,t,n,r,i,a,o,s,c){let l=Math.max(1,Math.floor(e.step.retry?.maxAttempts??1)),u,d,f=!1,p=(/* @__PURE__ */ new Date()).toISOString(),m=p;for(let h=1;h<=l;h++){p=(/* @__PURE__ */ new Date()).toISOString(),await a({type:`step.started`,timestamp:Q(),status:`running`,step:$(e),timing:{startedAt:p},attempt:h});try{let l=Bo(e.step,t,n,r),u=l.value,g=l.redacted;if(o.basePath){let t=Ri(u,o.basePath);u=t.input,g=Ri(l.redacted,o.basePath).input;let n=await zi(u,t.resolvedKeys.filter(e=>!Ii.includes(e)),e.step.id);if(n.length>0)throw new U(`pipeline_file_not_found`,n.join(`; `),{step:e.step.type,details:{issues:n}})}d=g,f=l.sensitive,await a({type:`step.input.resolved`,timestamp:Q(),status:`running`,step:$(e),input:Fs(g,l.sensitiveKeys)});let _=await Ns(e.step,u,o,$(e),a,s,c);r.set(e.step.id,_);let v=l.sensitive?Wo(_):_;v.artifacts&&i.push(...v.artifacts),m=(/* @__PURE__ */ new Date()).toISOString();for(let t of v.artifacts??[])await a({type:`artifact.created`,timestamp:Q(),status:`running`,step:$(e),artifact:t});return await a({type:`step.succeeded`,timestamp:Q(),status:`running`,step:$(e),timing:Rs(p,m),output:Is(v),attempt:h,...v.warnings&&v.warnings.length>0?{warnings:v.warnings}:{}}),{id:e.step.id,type:e.step.type,status:`succeeded`,dependencies:e.dependencies,input:l.redacted,output:v,startedAt:p,finishedAt:m,attempts:h,...e.step.when===void 0?{}:{condition:`true`}}}catch(t){let n=Oi(t,e.step.type);if(u=f?Go(n.toJSON()):n.toJSON(),m=(/* @__PURE__ */ new Date()).toISOString(),h<l){await a({type:`step.retrying`,timestamp:Q(),status:`running`,step:$(e),attempt:h,nextAttempt:h+1,error:u});let t=zs(e.step.retry?.backoff,h,o.retryDelayBaseMs??100);t>0&&await(o.sleep??Bs)(t);continue}}}let h=u??{code:`pipeline_step_failed`,message:`Step ${e.step.id} failed`,step:e.step.type,details:{}};return await a({type:`step.failed`,timestamp:Q(),status:`failed`,step:$(e),timing:Rs(p,m),attempt:l,error:h}),{id:e.step.id,type:e.step.type,status:`failed`,dependencies:e.dependencies,...d?{input:d}:{},error:h,startedAt:p,finishedAt:m,attempts:l}}async function Ns(e,t,n,r,i,a,o){let s=Bi(e.timeout)??n.timeoutSeconds,c={dryRun:!1,signal:n.signal,timeoutSeconds:s,blRequestTimeoutSeconds:n.blRequestTimeoutSeconds,emitEvent:async e=>{e.type===`step.polling`&&await i({...e,type:`step.polling`,timestamp:e.timestamp??Q(),status:`running`,step:r,taskId:e.taskId,taskStatus:e.taskStatus,elapsedMs:e.elapsedMs,pollAttempt:e.pollAttempt})},blEnv:a};if(!s)return await o.executeStep(e.type,t,c);let l=new AbortController,u=()=>l.abort();n.signal?.aborted?u():n.signal?.addEventListener(`abort`,u,{once:!0});let d=s*1e3,f=setTimeout(()=>l.abort(),d);c.signal=l.signal;try{return await Promise.race([o.executeStep(e.type,t,c),new Promise((t,n)=>{l.signal.addEventListener(`abort`,()=>{n(new U(`step_timeout`,`Step ${e.id} exceeded timeout ${s}s`,{step:e.type}))},{once:!0})})])}finally{clearTimeout(f),n.signal?.removeEventListener(`abort`,u)}}function Ps(e,t,n){e.push(n),t.set(n.id,n)}function Q(){return(/* @__PURE__ */ new Date()).toISOString()}function $(e){return{id:e.step.id,type:e.step.type,dependencies:e.dependencies,index:e.index,total:e.total}}function Fs(e,t=[]){return{keys:Object.keys(e).sort(),...t.length>0?{redactedKeys:t.sort()}:{}}}function Is(e){return{...e.data===void 0?{}:{dataType:Ls(e.data)},artifactCount:e.artifacts?.length??0,warningCount:e.warnings?.length??0,...e.metadata?{metadata:e.metadata}:{}}}function Ls(e){return Array.isArray(e)?`array`:e===null?`null`:typeof e}function Rs(e,t){return{startedAt:e,finishedAt:t,durationMs:Math.max(0,Date.parse(t)-Date.parse(e))}}function zs(e=`none`,t,n){return e===`none`?0:e===`linear`?n*t:n*2**(t-1)}function Bs(e){return new Promise(t=>setTimeout(t,e))}var Vs=class{items=[];takers=[];pushWaiters=[];closed=!1;maxSize;constructor(e){this.maxSize=e}get size(){return this.items.length}async push(e){for(;!this.closed&&this.items.length>=this.maxSize;)await new Promise(e=>this.pushWaiters.push(e));if(this.closed)return;let t=this.takers.shift();if(t){t(e);return}this.items.push(e)}async shift(){let e=this.items.shift();if(e!==void 0)return this.wakePushWaiter(),e;if(!this.closed)return await new Promise(e=>this.takers.push(e))}close(){if(!this.closed){this.closed=!0;for(let e of this.takers.splice(0))e(void 0);for(let e of this.pushWaiters.splice(0))e()}}wakePushWaiter(){this.pushWaiters.shift()?.()}};export{bn as API_KEY_PAGE,yn as BAILIAN_CONSOLE,vn as BAILIAN_CONSOLE_ROOT,Di as BOOL_FLAG_PROMPT_EXTEND_API_DEFAULT,Ti as BOOL_FLAG_PROMPT_EXTEND_CLI_TRUE,Ei as BOOL_FLAG_PROMPT_EXTEND_IMAGE_GENERATE,wi as BOOL_FLAG_WATERMARK,Cr as CLI_VERSION,Nt as CommandRegistry,Cn as MCP_WEBSEARCH_PAGE,zt as NPM_PACKAGE,Rt as NPM_REGISTRY,xn as TOKEN_PLAN_PAGE,wn as VOICE_TTS_PAGE,I as ansi,on as checkForUpdate,xs as collectPipelineHints,bs as collectPipelineIssues,ln as compose,Sr as createCli,Kr as createProgressBar,Gr as createSpinner,V as displayWidth,Jr as downloadFile,Qr as downloadParallel,Tr as emitBare,Er as emitRequestId,wr as emitResult,yi as ensureBinaryPathEntries,ks as executePipeline,oi as fetchBinaryChannelManifest,ai as fetchBinaryChannelVersion,Qt as fetchLatestVersion,Yr as formatBytes,Dr as formatTable,ni as getBinaryBinRoot,ii as getBinaryCurrentPath,H as getBinaryShareRoot,ri as getBinaryVersionsDir,Xr as getConcurrency,en as getPendingUpdateNotification,B as handleError,ps as initPipelineSteps,bt as isTerminal,li as isValidUpdateTargetVersion,It as maybeShowStatusBar,Sn as mcpMarketplaceDetailPage,si as normalizeBinaryVersion,kr as padEnd,vt as parseFlags,_t as parsePath,Ci as performBinaryUpdate,qr as poll,Tt as printQuickStart,wt as printWelcomeBanner,Si as pruneBinaryVersions,gi as readCurrentVersionDir,Tn as refundConsolePage,Ur as renderBoxTable,Vr as renderGauge,Pt as resolve,di as resolveBinaryDownloadSpec,ei as resolveImageSize,Zr as runConcurrent,_n as setupProxyFromEnv,As as streamPipelineEvents,xt as supportsColor,vi as switchCurrentToVersion};