@tripwire-sh/cli 0.1.7 → 0.1.9
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/tripwire.js +206 -206
- package/package.json +1 -1
package/dist/tripwire.js
CHANGED
|
@@ -1,100 +1,100 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}displayWidth(e){return
|
|
2
|
+
import{createRequire as Xz}from"node:module";var Uz=Object.create;var{getPrototypeOf:Wz,defineProperty:Aa,getOwnPropertyNames:Vz}=Object;var bw=Object.prototype.hasOwnProperty;function Zz(e){return this[e]}var Bz,Kz,Rn=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var o=t?Bz??=new WeakMap:Kz??=new WeakMap,s=o.get(e);if(s)return s}r=e!=null?Uz(Wz(e)):{};let i=t||!e||!e.__esModule||!bw.call(e,"default")?Aa(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of Vz(e))if(!bw.call(i,a))Aa(i,a,{get:Zz.bind(e,a),enumerable:!0})}if(n)o.set(e,i);return i};var E=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Hz=(e)=>e;function Gz(e,t){this[e]=Hz.bind(null,t)}var Jz=(e,t)=>{for(var r in t)Aa(e,r,{get:t[r],enumerable:!0,configurable:!0,set:Gz.bind(t,r)})};var Yz=(e,t,r)=>{for(var n in t)Aa(e,n,{get:t[n],set:r[n],enumerable:!0,configurable:!0})},$r=Xz(import.meta.url);var Ts=E(function(Qz){class Vd extends Error{constructor(e,t,r){super(r);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}}class _w extends Vd{constructor(e){super(1,"commander.invalidArgument",e);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}Qz.CommanderError=Vd;Qz.InvalidArgumentError=_w});var Ra=E(function(oN){var{InvalidArgumentError:rN}=Ts();class Sw{constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}if(this._name.endsWith("..."))this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_collectValue(e,t){if(t===this.defaultValue||!Array.isArray(t))return[e];return t.push(e),t}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(t,r)=>{if(!this.argChoices.includes(t))throw new rN(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(t,r);return t},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function nN(e){let t=e.name()+(e.variadic===!0?"...":"");return e.required?"<"+t+">":"["+t+"]"}oN.Argument=Sw;oN.humanReadableArgName=nN});var Zd=E(function(cN){var{humanReadableArgName:aN}=Ra();class vw{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let t=e.commands.filter((n)=>!n._hidden),r=e._getHelpCommand();if(r&&!r._hidden)t.push(r);if(this.sortSubcommands)t.sort((n,o)=>n.name().localeCompare(o.name()));return t}compareOptions(e,t){let r=(n)=>n.short?n.short.replace(/^-/,""):n.long.replace(/^--/,"");return r(e).localeCompare(r(t))}visibleOptions(e){let t=e.options.filter((n)=>!n.hidden),r=e._getHelpOption();if(r&&!r.hidden){let n=r.short&&e._findOption(r.short),o=r.long&&e._findOption(r.long);if(!n&&!o)t.push(r);else if(r.long&&!o)t.push(e.createOption(r.long,r.description));else if(r.short&&!n)t.push(e.createOption(r.short,r.description))}if(this.sortOptions)t.sort(this.compareOptions);return t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let t=[];for(let r=e.parent;r;r=r.parent){let n=r.options.filter((o)=>!o.hidden);t.push(...n)}if(this.sortOptions)t.sort(this.compareOptions);return t}visibleArguments(e){if(e._argsDescription)e.registeredArguments.forEach((t)=>{t.description=t.description||e._argsDescription[t.name()]||""});if(e.registeredArguments.find((t)=>t.description))return e.registeredArguments;return[]}subcommandTerm(e){let t=e.registeredArguments.map((r)=>aN(r)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce((r,n)=>Math.max(r,this.displayWidth(t.styleSubcommandTerm(t.subcommandTerm(n)))),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce((r,n)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(n)))),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce((r,n)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(n)))),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce((r,n)=>Math.max(r,this.displayWidth(t.styleArgumentTerm(t.argumentTerm(n)))),0)}commandUsage(e){let t=e._name;if(e._aliases[0])t=t+"|"+e._aliases[0];let r="";for(let n=e.parent;n;n=n.parent)r=n.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let t=[];if(e.argChoices)t.push(`choices: ${e.argChoices.map((r)=>JSON.stringify(r)).join(", ")}`);if(e.defaultValue!==void 0){if(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue==="boolean")t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`)}if(e.presetArg!==void 0&&e.optional)t.push(`preset: ${JSON.stringify(e.presetArg)}`);if(e.envVar!==void 0)t.push(`env: ${e.envVar}`);if(t.length>0){let r=`(${t.join(", ")})`;if(e.description)return`${e.description} ${r}`;return r}return e.description}argumentDescription(e){let t=[];if(e.argChoices)t.push(`choices: ${e.argChoices.map((r)=>JSON.stringify(r)).join(", ")}`);if(e.defaultValue!==void 0)t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`);if(t.length>0){let r=`(${t.join(", ")})`;if(e.description)return`${e.description} ${r}`;return r}return e.description}formatItemList(e,t,r){if(t.length===0)return[];return[r.styleTitle(e),...t,""]}groupItems(e,t,r){let n=new Map;return e.forEach((o)=>{let s=r(o);if(!n.has(s))n.set(s,[])}),t.forEach((o)=>{let s=r(o);if(!n.has(s))n.set(s,[]);n.get(s).push(o)}),n}formatHelp(e,t){let r=t.padWidth(e,t),n=t.helpWidth??80;function o(l,d){return t.formatItem(l,r,d,t)}let s=[`${t.styleTitle("Usage:")} ${t.styleUsage(t.commandUsage(e))}`,""],i=t.commandDescription(e);if(i.length>0)s=s.concat([t.boxWrap(t.styleCommandDescription(i),n),""]);let a=t.visibleArguments(e).map((l)=>o(t.styleArgumentTerm(t.argumentTerm(l)),t.styleArgumentDescription(t.argumentDescription(l))));if(s=s.concat(this.formatItemList("Arguments:",a,t)),this.groupItems(e.options,t.visibleOptions(e),(l)=>l.helpGroupHeading??"Options:").forEach((l,d)=>{let f=l.map((m)=>o(t.styleOptionTerm(t.optionTerm(m)),t.styleOptionDescription(t.optionDescription(m))));s=s.concat(this.formatItemList(d,f,t))}),t.showGlobalOptions){let l=t.visibleGlobalOptions(e).map((d)=>o(t.styleOptionTerm(t.optionTerm(d)),t.styleOptionDescription(t.optionDescription(d))));s=s.concat(this.formatItemList("Global Options:",l,t))}return this.groupItems(e.commands,t.visibleCommands(e),(l)=>l.helpGroup()||"Commands:").forEach((l,d)=>{let f=l.map((m)=>o(t.styleSubcommandTerm(t.subcommandTerm(m)),t.styleSubcommandDescription(t.subcommandDescription(m))));s=s.concat(this.formatItemList(d,f,t))}),s.join(`
|
|
3
|
+
`)}displayWidth(e){return kw(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map((t)=>{if(t==="[options]")return this.styleOptionText(t);if(t==="[command]")return this.styleSubcommandText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleCommandText(t)}).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map((t)=>{if(t==="[options]")return this.styleOptionText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleSubcommandText(t)}).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,t,r,n){let s=" ".repeat(2);if(!r)return s+e;let i=e.padEnd(t+e.length-n.displayWidth(e)),a=2,u=(this.helpWidth??80)-t-a-2,l;if(u<this.minWidthToWrap||n.preformatted(r))l=r;else l=n.boxWrap(r,u).replace(/\n/g,`
|
|
4
4
|
`+" ".repeat(t+a));return s+i+" ".repeat(a)+l.replace(/\n/g,`
|
|
5
5
|
${s}`)}boxWrap(e,t){if(t<this.minWidthToWrap)return e;let r=e.split(/\r\n|\n/),n=/[\s]*[^\s]+/g,o=[];return r.forEach((s)=>{let i=s.match(n);if(i===null){o.push("");return}let a=[i.shift()],c=this.displayWidth(a[0]);i.forEach((u)=>{let l=this.displayWidth(u);if(c+l<=t){a.push(u),c+=l;return}o.push(a.join(""));let d=u.trimStart();a=[d],c=this.displayWidth(d)}),o.push(a.join(""))}),o.join(`
|
|
6
|
-
`)}}function
|
|
6
|
+
`)}}function kw(e){let t=/\x1b\[\d*(;\d*)*m/g;return e.replace(t,"")}cN.Help=vw;cN.stripColor=kw});var Bd=E(function(fN){var{InvalidArgumentError:dN}=Ts();class $w{constructor(e,t){this.flags=e,this.description=t||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let r=pN(e);if(this.short=r.shortFlag,this.long=r.longFlag,this.negate=!1,this.long)this.negate=this.long.startsWith("--no-");this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let t=e;if(typeof e==="string")t={[e]:!0};return this.implied=Object.assign(this.implied||{},t),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_collectValue(e,t){if(t===this.defaultValue||!Array.isArray(t))return[e];return t.push(e),t}choices(e){return this.argChoices=e.slice(),this.parseArg=(t,r)=>{if(!this.argChoices.includes(t))throw new dN(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(t,r);return t},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return xw(this.name().replace(/^no-/,""));return xw(this.name())}helpGroup(e){return this.helpGroupHeading=e,this}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class Tw{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach((t)=>{if(t.negate)this.negativeOptions.set(t.attributeName(),t);else this.positiveOptions.set(t.attributeName(),t)}),this.negativeOptions.forEach((t,r)=>{if(this.positiveOptions.has(r))this.dualOptions.add(r)})}valueFromOption(e,t){let r=t.attributeName();if(!this.dualOptions.has(r))return!0;let n=this.negativeOptions.get(r).presetArg,o=n!==void 0?n:!1;return t.negate===(o===e)}}function xw(e){return e.split("-").reduce((t,r)=>t+r[0].toUpperCase()+r.slice(1))}function pN(e){let t,r,n=/^-[^-]$/,o=/^--[^-]/,s=e.split(/[ |,]+/).concat("guard");if(n.test(s[0]))t=s.shift();if(o.test(s[0]))r=s.shift();if(!t&&n.test(s[0]))t=s.shift();if(!t&&o.test(s[0]))t=r,r=s.shift();if(s[0].startsWith("-")){let i=s[0],a=`option creation failed due to '${i}' in option flags '${e}'`;if(/^-[^-][^-]/.test(i))throw Error(`${a}
|
|
7
7
|
- a short flag is a single dash and a single character
|
|
8
8
|
- either use a single dash and a single character (for a short flag)
|
|
9
9
|
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(n.test(i))throw Error(`${a}
|
|
10
10
|
- too many short flags`);if(o.test(i))throw Error(`${a}
|
|
11
11
|
- too many long flags`);throw Error(`${a}
|
|
12
|
-
- unrecognised flag format`)}if(t===void 0&&r===void 0)throw Error(`option creation failed due to no flags found in '${e}'.`);return{shortFlag:t,longFlag:r}}
|
|
12
|
+
- unrecognised flag format`)}if(t===void 0&&r===void 0)throw Error(`option creation failed due to no flags found in '${e}'.`);return{shortFlag:t,longFlag:r}}fN.Option=$w;fN.DualOptions=Tw});var Ew=E(function(wN){function gN(e,t){if(Math.abs(e.length-t.length)>3)return Math.max(e.length,t.length);let r=[];for(let n=0;n<=e.length;n++)r[n]=[n];for(let n=0;n<=t.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let o=1;o<=e.length;o++){let s=1;if(e[o-1]===t[n-1])s=0;else s=1;if(r[o][n]=Math.min(r[o-1][n]+1,r[o][n-1]+1,r[o-1][n-1]+s),o>1&&n>1&&e[o-1]===t[n-2]&&e[o-2]===t[n-1])r[o][n]=Math.min(r[o][n],r[o-2][n-2]+1)}return r[e.length][t.length]}function yN(e,t){if(!t||t.length===0)return"";t=Array.from(new Set(t));let r=e.startsWith("--");if(r)e=e.slice(2),t=t.map((i)=>i.slice(2));let n=[],o=3,s=0.4;if(t.forEach((i)=>{if(i.length<=1)return;let a=gN(e,i),c=Math.max(e.length,i.length);if((c-a)/c>s){if(a<o)o=a,n=[i];else if(a===o)n.push(i)}}),n.sort((i,a)=>i.localeCompare(a)),r)n=n.map((i)=>`--${i}`);if(n.length>1)return`
|
|
13
13
|
(Did you mean one of ${n.join(", ")}?)`;if(n.length===1)return`
|
|
14
|
-
(Did you mean ${n[0]}?)`;return""}
|
|
15
|
-
- specify the name in Command constructor or using .name()`);if(t=t||{},t.isDefault)this._defaultCommandName=e._name;if(t.noHelp||t.hidden)e._hidden=!0;return this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,t){return new
|
|
16
|
-
Expecting one of '${r.join("', '")}'`);if(this._lifeCycleHooks[e])this._lifeCycleHooks[e].push(t);else this._lifeCycleHooks[e]=[t];return this}exitOverride(e){if(e)this._exitCallback=e;else this._exitCallback=(t)=>{if(t.code!=="commander.executeSubCommandAsync")throw t};return this}_exit(e,t,r){if(this._exitCallback)this._exitCallback(new
|
|
17
|
-
- already used by option '${t.flags}'`)}this._initOptionGroup(e),this.options.push(e)}_registerCommand(e){let t=(n)=>[n.name()].concat(n.aliases()),r=t(e).find((n)=>this._findCommand(n));if(r){let n=t(this._findCommand(r)).join("|"),o=t(e).join("|");throw Error(`cannot add command '${o}' as already have command '${n}'`)}this._initCommandGroup(e),this.commands.push(e)}addOption(e){this._registerOption(e);let t=e.name(),r=e.attributeName();if(e.negate){let o=e.long.replace(/^--no-/,"--");if(!this._findOption(o))this.setOptionValueWithSource(r,e.defaultValue===void 0?!0:e.defaultValue,"default")}else if(e.defaultValue!==void 0)this.setOptionValueWithSource(r,e.defaultValue,"default");let n=(o,s,i)=>{if(o==null&&e.presetArg!==void 0)o=e.presetArg;let a=this.getOptionValue(r);if(o!==null&&e.parseArg)o=this._callParseArg(e,o,a,s);else if(o!==null&&e.variadic)o=e._collectValue(o,a);if(o==null)if(e.negate)o=!1;else if(e.isBoolean()||e.optional)o=!0;else o="";this.setOptionValueWithSource(r,o,i)};if(this.on("option:"+t,(o)=>{let s=`error: option '${e.flags}' argument '${o}' is invalid.`;n(o,s,"cli")}),e.envVar)this.on("optionEnv:"+t,(o)=>{let s=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;n(o,s,"env")});return this}_optionEx(e,t,r,n,o){if(typeof t==="object"&&t instanceof
|
|
18
|
-
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,t,r){if(
|
|
14
|
+
(Did you mean ${n[0]}?)`;return""}wN.suggestSimilar=yN});var Aw=E(function(TN){var _N=$r("node:events").EventEmitter,uo=$r("node:child_process"),We=$r("node:path"),Fr=$r("node:fs"),V=$r("node:process"),{Argument:SN,humanReadableArgName:vN}=Ra(),{CommanderError:Kd}=Ts(),{Help:kN,stripColor:xN}=Zd(),{Option:Pw,DualOptions:$N}=Bd(),{suggestSimilar:Ow}=Ew();class Gd extends _N{constructor(e){super();this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:(t)=>V.stdout.write(t),writeErr:(t)=>V.stderr.write(t),outputError:(t,r)=>r(t),getOutHelpWidth:()=>V.stdout.isTTY?V.stdout.columns:void 0,getErrHelpWidth:()=>V.stderr.isTTY?V.stderr.columns:void 0,getOutHasColors:()=>Hd()??(V.stdout.isTTY&&V.stdout.hasColors?.()),getErrHasColors:()=>Hd()??(V.stderr.isTTY&&V.stderr.hasColors?.()),stripColor:(t)=>xN(t)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let t=this;t;t=t.parent)e.push(t);return e}command(e,t,r){let n=t,o=r;if(typeof n==="object"&&n!==null)o=n,n=null;o=o||{};let[,s,i]=e.match(/([^ ]+) *(.*)/),a=this.createCommand(s);if(n)a.description(n),a._executableHandler=!0;if(o.isDefault)this._defaultCommandName=a._name;if(a._hidden=!!(o.noHelp||o.hidden),a._executableFile=o.executableFile||null,i)a.arguments(i);if(this._registerCommand(a),a.parent=this,a.copyInheritedSettings(this),n)return this;return a}createCommand(e){return new Gd(e)}createHelp(){return Object.assign(new kN,this.configureHelp())}configureHelp(e){if(e===void 0)return this._helpConfiguration;return this._helpConfiguration=e,this}configureOutput(e){if(e===void 0)return this._outputConfiguration;return this._outputConfiguration={...this._outputConfiguration,...e},this}showHelpAfterError(e=!0){if(typeof e!=="string")e=!!e;return this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,t){if(!e._name)throw Error(`Command passed to .addCommand() must have a name
|
|
15
|
+
- specify the name in Command constructor or using .name()`);if(t=t||{},t.isDefault)this._defaultCommandName=e._name;if(t.noHelp||t.hidden)e._hidden=!0;return this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,t){return new SN(e,t)}argument(e,t,r,n){let o=this.createArgument(e,t);if(typeof r==="function")o.default(n).argParser(r);else o.default(r);return this.addArgument(o),this}arguments(e){return e.trim().split(/ +/).forEach((t)=>{this.argument(t)}),this}addArgument(e){let t=this.registeredArguments.slice(-1)[0];if(t?.variadic)throw Error(`only the last argument can be variadic '${t.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,t){if(typeof e==="boolean"){if(this._addImplicitHelpCommand=e,e&&this._defaultCommandGroup)this._initCommandGroup(this._getHelpCommand());return this}let r=e??"help [command]",[,n,o]=r.match(/([^ ]+) *(.*)/),s=t??"display help for command",i=this.createCommand(n);if(i.helpOption(!1),o)i.arguments(o);if(s)i.description(s);if(this._addImplicitHelpCommand=!0,this._helpCommand=i,e||t)this._initCommandGroup(i);return this}addHelpCommand(e,t){if(typeof e!=="object")return this.helpCommand(e,t),this;return this._addImplicitHelpCommand=!0,this._helpCommand=e,this._initCommandGroup(e),this}_getHelpCommand(){if(this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))){if(this._helpCommand===void 0)this.helpCommand(void 0,void 0);return this._helpCommand}return null}hook(e,t){let r=["preSubcommand","preAction","postAction"];if(!r.includes(e))throw Error(`Unexpected value for event passed to hook : '${e}'.
|
|
16
|
+
Expecting one of '${r.join("', '")}'`);if(this._lifeCycleHooks[e])this._lifeCycleHooks[e].push(t);else this._lifeCycleHooks[e]=[t];return this}exitOverride(e){if(e)this._exitCallback=e;else this._exitCallback=(t)=>{if(t.code!=="commander.executeSubCommandAsync")throw t};return this}_exit(e,t,r){if(this._exitCallback)this._exitCallback(new Kd(e,t,r));V.exit(e)}action(e){let t=(r)=>{let n=this.registeredArguments.length,o=r.slice(0,n);if(this._storeOptionsAsProperties)o[n]=this;else o[n]=this.opts();return o.push(this),e.apply(this,o)};return this._actionHandler=t,this}createOption(e,t){return new Pw(e,t)}_callParseArg(e,t,r,n){try{return e.parseArg(t,r)}catch(o){if(o.code==="commander.invalidArgument"){let s=`${n} ${o.message}`;this.error(s,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(e){let t=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(t){let r=e.long&&this._findOption(e.long)?e.long:e.short;throw Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${r}'
|
|
17
|
+
- already used by option '${t.flags}'`)}this._initOptionGroup(e),this.options.push(e)}_registerCommand(e){let t=(n)=>[n.name()].concat(n.aliases()),r=t(e).find((n)=>this._findCommand(n));if(r){let n=t(this._findCommand(r)).join("|"),o=t(e).join("|");throw Error(`cannot add command '${o}' as already have command '${n}'`)}this._initCommandGroup(e),this.commands.push(e)}addOption(e){this._registerOption(e);let t=e.name(),r=e.attributeName();if(e.negate){let o=e.long.replace(/^--no-/,"--");if(!this._findOption(o))this.setOptionValueWithSource(r,e.defaultValue===void 0?!0:e.defaultValue,"default")}else if(e.defaultValue!==void 0)this.setOptionValueWithSource(r,e.defaultValue,"default");let n=(o,s,i)=>{if(o==null&&e.presetArg!==void 0)o=e.presetArg;let a=this.getOptionValue(r);if(o!==null&&e.parseArg)o=this._callParseArg(e,o,a,s);else if(o!==null&&e.variadic)o=e._collectValue(o,a);if(o==null)if(e.negate)o=!1;else if(e.isBoolean()||e.optional)o=!0;else o="";this.setOptionValueWithSource(r,o,i)};if(this.on("option:"+t,(o)=>{let s=`error: option '${e.flags}' argument '${o}' is invalid.`;n(o,s,"cli")}),e.envVar)this.on("optionEnv:"+t,(o)=>{let s=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;n(o,s,"env")});return this}_optionEx(e,t,r,n,o){if(typeof t==="object"&&t instanceof Pw)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let s=this.createOption(t,r);if(s.makeOptionMandatory(!!e.mandatory),typeof n==="function")s.default(o).argParser(n);else if(n instanceof RegExp){let i=n;n=(a,c)=>{let u=i.exec(a);return u?u[0]:c},s.default(o).argParser(n)}else s.default(n);return this.addOption(s)}option(e,t,r,n){return this._optionEx({},e,t,r,n)}requiredOption(e,t,r,n){return this._optionEx({mandatory:!0},e,t,r,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){if(this._storeOptionsAsProperties)return this[e];return this._optionValues[e]}setOptionValue(e,t){return this.setOptionValueWithSource(e,t,void 0)}setOptionValueWithSource(e,t,r){if(this._storeOptionsAsProperties)this[e]=t;else this._optionValues[e]=t;return this._optionValueSources[e]=r,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let t;return this._getCommandAndAncestors().forEach((r)=>{if(r.getOptionValueSource(e)!==void 0)t=r.getOptionValueSource(e)}),t}_prepareUserArgs(e,t){if(e!==void 0&&!Array.isArray(e))throw Error("first parameter to parse must be array or undefined");if(t=t||{},e===void 0&&t.from===void 0){if(V.versions?.electron)t.from="electron";let n=V.execArgv??[];if(n.includes("-e")||n.includes("--eval")||n.includes("-p")||n.includes("--print"))t.from="eval"}if(e===void 0)e=V.argv;this.rawArgs=e.slice();let r;switch(t.from){case void 0:case"node":this._scriptPath=e[1],r=e.slice(2);break;case"electron":if(V.defaultApp)this._scriptPath=e[1],r=e.slice(2);else r=e.slice(1);break;case"user":r=e.slice(0);break;case"eval":r=e.slice(1);break;default:throw Error(`unexpected parse option { from: '${t.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",r}parse(e,t){this._prepareForParse();let r=this._prepareUserArgs(e,t);return this._parseCommand([],r),this}async parseAsync(e,t){this._prepareForParse();let r=this._prepareUserArgs(e,t);return await this._parseCommand([],r),this}_prepareForParse(){if(this._savedState===null)this.saveStateBeforeParse();else this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw Error(`Can not call parse again when storeOptionsAsProperties is true.
|
|
18
|
+
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,t,r){if(Fr.existsSync(e))return;let n=t?`searched for local subcommand relative to directory '${t}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
|
|
19
19
|
- if '${r}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
20
20
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
21
|
-
- ${n}`;throw Error(o)}_executeSubCommand(e,t){t=t.slice();let r=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,l){let d=We.resolve(u,l);if(
|
|
21
|
+
- ${n}`;throw Error(o)}_executeSubCommand(e,t){t=t.slice();let r=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,l){let d=We.resolve(u,l);if(Fr.existsSync(d))return d;if(n.includes(We.extname(l)))return;let f=n.find((m)=>Fr.existsSync(`${d}${m}`));if(f)return`${d}${f}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let s=e._executableFile||`${this._name}-${e._name}`,i=this._executableDir||"";if(this._scriptPath){let u;try{u=Fr.realpathSync(this._scriptPath)}catch{u=this._scriptPath}i=We.resolve(We.dirname(u),i)}if(i){let u=o(i,s);if(!u&&!e._executableFile&&this._scriptPath){let l=We.basename(this._scriptPath,We.extname(this._scriptPath));if(l!==this._name)u=o(i,`${l}-${e._name}`)}s=u||s}r=n.includes(We.extname(s));let a;if(V.platform!=="win32")if(r)t.unshift(s),t=Iw(V.execArgv).concat(t),a=uo.spawn(V.argv[0],t,{stdio:"inherit"});else a=uo.spawn(s,t,{stdio:"inherit"});else this._checkForMissingExecutable(s,i,e._name),t.unshift(s),t=Iw(V.execArgv).concat(t),a=uo.spawn(V.execPath,t,{stdio:"inherit"});if(!a.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((l)=>{V.on(l,()=>{if(a.killed===!1&&a.exitCode===null)a.kill(l)})});let c=this._exitCallback;a.on("close",(u)=>{if(u=u??1,!c)V.exit(u);else c(new Kd(u,"commander.executeSubCommandAsync","(close)"))}),a.on("error",(u)=>{if(u.code==="ENOENT")this._checkForMissingExecutable(s,i,e._name);else if(u.code==="EACCES")throw Error(`'${s}' not executable`);if(!c)V.exit(1);else{let l=new Kd(1,"commander.executeSubCommandAsync","(error)");l.nestedError=u,c(l)}}),this.runningCommand=a}_dispatchSubcommand(e,t,r){let n=this._findCommand(e);if(!n)this.help({error:!0});n._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,n,"preSubcommand"),o=this._chainOrCall(o,()=>{if(n._executableHandler)this._executeSubCommand(n,t.concat(r));else return n._parseCommand(t,r)}),o}_dispatchHelpCommand(e){if(!e)this.help();let t=this._findCommand(e);if(t&&!t._executableHandler)t.help();return this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach((e,t)=>{if(e.required&&this.args[t]==null)this.missingArgument(e.name())}),this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)return;if(this.args.length>this.registeredArguments.length)this._excessArguments(this.args)}_processArguments(){let e=(r,n,o)=>{let s=n;if(n!==null&&r.parseArg){let i=`error: command-argument value '${n}' is invalid for argument '${r.name()}'.`;s=this._callParseArg(r,n,o,i)}return s};this._checkNumberOfArguments();let t=[];this.registeredArguments.forEach((r,n)=>{let o=r.defaultValue;if(r.variadic){if(n<this.args.length){if(o=this.args.slice(n),r.parseArg)o=o.reduce((s,i)=>e(r,i,s),r.defaultValue)}else if(o===void 0)o=[]}else if(n<this.args.length){if(o=this.args[n],r.parseArg)o=e(r,o,r.defaultValue)}t[n]=o}),this.processedArgs=t}_chainOrCall(e,t){if(e?.then&&typeof e.then==="function")return e.then(()=>t());return t()}_chainOrCallHooks(e,t){let r=e,n=[];if(this._getCommandAndAncestors().reverse().filter((o)=>o._lifeCycleHooks[t]!==void 0).forEach((o)=>{o._lifeCycleHooks[t].forEach((s)=>{n.push({hookedCommand:o,callback:s})})}),t==="postAction")n.reverse();return n.forEach((o)=>{r=this._chainOrCall(r,()=>o.callback(o.hookedCommand,this))}),r}_chainOrCallSubCommandHook(e,t,r){let n=e;if(this._lifeCycleHooks[r]!==void 0)this._lifeCycleHooks[r].forEach((o)=>{n=this._chainOrCall(n,()=>o(this,t))});return n}_parseCommand(e,t){let r=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(r.operands),t=r.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(t),this._dispatchSubcommand(this._defaultCommandName,e,t);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(r.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let n=()=>{if(r.unknown.length>0)this.unknownOption(r.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){n(),this._processArguments();let s;if(s=this._chainOrCallHooks(s,"preAction"),s=this._chainOrCall(s,()=>this._actionHandler(this.processedArgs)),this.parent)s=this._chainOrCall(s,()=>{this.parent.emit(o,e,t)});return s=this._chainOrCallHooks(s,"postAction"),s}if(this.parent?.listenerCount(o))n(),this._processArguments(),this.parent.emit(o,e,t);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,t);if(this.listenerCount("command:*"))this.emit("command:*",e,t);else if(this.commands.length)this.unknownCommand();else n(),this._processArguments()}else if(this.commands.length)n(),this.help({error:!0});else n(),this._processArguments()}_findCommand(e){if(!e)return;return this.commands.find((t)=>t._name===e||t._aliases.includes(e))}_findOption(e){return this.options.find((t)=>t.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((e)=>{e.options.forEach((t)=>{if(t.mandatory&&e.getOptionValue(t.attributeName())===void 0)e.missingMandatoryOptionValue(t)})})}_checkForConflictingLocalOptions(){let e=this.options.filter((r)=>{let n=r.attributeName();if(this.getOptionValue(n)===void 0)return!1;return this.getOptionValueSource(n)!=="default"});e.filter((r)=>r.conflictsWith.length>0).forEach((r)=>{let n=e.find((o)=>r.conflictsWith.includes(o.attributeName()));if(n)this._conflictingOption(r,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((e)=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let t=[],r=[],n=t;function o(u){return u.length>1&&u[0]==="-"}let s=(u)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(u))return!1;return!this._getCommandAndAncestors().some((l)=>l.options.map((d)=>d.short).some((d)=>/^-\d$/.test(d)))},i=null,a=null,c=0;while(c<e.length||a){let u=a??e[c++];if(a=null,u==="--"){if(n===r)n.push(u);n.push(...e.slice(c));break}if(i&&(!o(u)||s(u))){this.emit(`option:${i.name()}`,u);continue}if(i=null,o(u)){let l=this._findOption(u);if(l){if(l.required){let d=e[c++];if(d===void 0)this.optionMissingArgument(l);this.emit(`option:${l.name()}`,d)}else if(l.optional){let d=null;if(c<e.length&&(!o(e[c])||s(e[c])))d=e[c++];this.emit(`option:${l.name()}`,d)}else this.emit(`option:${l.name()}`);i=l.variadic?l:null;continue}}if(u.length>2&&u[0]==="-"&&u[1]!=="-"){let l=this._findOption(`-${u[1]}`);if(l){if(l.required||l.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${l.name()}`,u.slice(2));else this.emit(`option:${l.name()}`),a=`-${u.slice(2)}`;continue}}if(/^--[^=]+=/.test(u)){let l=u.indexOf("="),d=this._findOption(u.slice(0,l));if(d&&(d.required||d.optional)){this.emit(`option:${d.name()}`,u.slice(l+1));continue}}if(n===t&&o(u)&&!(this.commands.length===0&&s(u)))n=r;if((this._enablePositionalOptions||this._passThroughOptions)&&t.length===0&&r.length===0){if(this._findCommand(u)){t.push(u),r.push(...e.slice(c));break}else if(this._getHelpCommand()&&u===this._getHelpCommand().name()){t.push(u,...e.slice(c));break}else if(this._defaultCommandName){r.push(u,...e.slice(c));break}}if(this._passThroughOptions){n.push(u,...e.slice(c));break}n.push(u)}return{operands:t,unknown:r}}opts(){if(this._storeOptionsAsProperties){let e={},t=this.options.length;for(let r=0;r<t;r++){let n=this.options[r].attributeName();e[n]=n===this._versionOptionName?this._version:this[n]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,t)=>Object.assign(e,t.opts()),{})}error(e,t){if(this._outputConfiguration.outputError(`${e}
|
|
22
22
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
23
23
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
24
|
-
`),this.outputHelp({error:!0});let r=t||{},n=r.exitCode||1,o=r.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach((e)=>{if(e.envVar&&e.envVar in V.env){let t=e.attributeName();if(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))if(e.required||e.optional)this.emit(`optionEnv:${e.name()}`,V.env[e.envVar]);else this.emit(`optionEnv:${e.name()}`)}})}_parseOptionsImplied(){let e=new
|
|
25
|
-
`),this._exit(0,"commander.version",e)}),this}description(e,t){if(e===void 0&&t===void 0)return this._description;if(this._description=e,t)this._argsDescription=t;return this}summary(e){if(e===void 0)return this._summary;return this._summary=e,this}alias(e){if(e===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)t=this.commands[this.commands.length-1];if(e===t._name)throw Error("Command alias can't be the same as its name");let r=this.parent?._findCommand(e);if(r){let n=[r.name()].concat(r.aliases()).join("|");throw Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${n}'`)}return t._aliases.push(e),this}aliases(e){if(e===void 0)return this._aliases;return e.forEach((t)=>this.alias(t)),this}usage(e){if(e===void 0){if(this._usage)return this._usage;let t=this.registeredArguments.map((r)=>
|
|
24
|
+
`),this.outputHelp({error:!0});let r=t||{},n=r.exitCode||1,o=r.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach((e)=>{if(e.envVar&&e.envVar in V.env){let t=e.attributeName();if(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))if(e.required||e.optional)this.emit(`optionEnv:${e.name()}`,V.env[e.envVar]);else this.emit(`optionEnv:${e.name()}`)}})}_parseOptionsImplied(){let e=new $N(this.options),t=(r)=>this.getOptionValue(r)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(r));this.options.filter((r)=>r.implied!==void 0&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r)).forEach((r)=>{Object.keys(r.implied).filter((n)=>!t(n)).forEach((n)=>{this.setOptionValueWithSource(n,r.implied[n],"implied")})})}missingArgument(e){let t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){let t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){let r=(s)=>{let i=s.attributeName(),a=this.getOptionValue(i),c=this.options.find((l)=>l.negate&&i===l.attributeName()),u=this.options.find((l)=>!l.negate&&i===l.attributeName());if(c&&(c.presetArg===void 0&&a===!1||c.presetArg!==void 0&&a===c.presetArg))return c;return u||s},n=(s)=>{let i=r(s),a=i.attributeName();if(this.getOptionValueSource(a)==="env")return`environment variable '${i.envVar}'`;return`option '${i.flags}'`},o=`error: ${n(e)} cannot be used with ${n(t)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let n=[],o=this;do{let s=o.createHelp().visibleOptions(o).filter((i)=>i.long).map((i)=>i.long);n=n.concat(s),o=o.parent}while(o&&!o._enablePositionalOptions);t=Ow(e,n)}let r=`error: unknown option '${e}'${t}`;this.error(r,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let t=this.registeredArguments.length,r=t===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${r} but got ${e.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],t="";if(this._showSuggestionAfterError){let n=[];this.createHelp().visibleCommands(this).forEach((o)=>{if(n.push(o.name()),o.alias())n.push(o.alias())}),t=Ow(e,n)}let r=`error: unknown command '${e}'${t}`;this.error(r,{code:"commander.unknownCommand"})}version(e,t,r){if(e===void 0)return this._version;this._version=e,t=t||"-V, --version",r=r||"output the version number";let n=this.createOption(t,r);return this._versionOptionName=n.attributeName(),this._registerOption(n),this.on("option:"+n.name(),()=>{this._outputConfiguration.writeOut(`${e}
|
|
25
|
+
`),this._exit(0,"commander.version",e)}),this}description(e,t){if(e===void 0&&t===void 0)return this._description;if(this._description=e,t)this._argsDescription=t;return this}summary(e){if(e===void 0)return this._summary;return this._summary=e,this}alias(e){if(e===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)t=this.commands[this.commands.length-1];if(e===t._name)throw Error("Command alias can't be the same as its name");let r=this.parent?._findCommand(e);if(r){let n=[r.name()].concat(r.aliases()).join("|");throw Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${n}'`)}return t._aliases.push(e),this}aliases(e){if(e===void 0)return this._aliases;return e.forEach((t)=>this.alias(t)),this}usage(e){if(e===void 0){if(this._usage)return this._usage;let t=this.registeredArguments.map((r)=>vN(r));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}return this._usage=e,this}name(e){if(e===void 0)return this._name;return this._name=e,this}helpGroup(e){if(e===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=e,this}commandsGroup(e){if(e===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=e,this}optionsGroup(e){if(e===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=e,this}_initOptionGroup(e){if(this._defaultOptionGroup&&!e.helpGroupHeading)e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){if(this._defaultCommandGroup&&!e.helpGroup())e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=We.basename(e,We.extname(e)),this}executableDir(e){if(e===void 0)return this._executableDir;return this._executableDir=e,this}helpInformation(e){let t=this.createHelp(),r=this._getOutputContext(e);t.prepareContext({error:r.error,helpWidth:r.helpWidth,outputHasColors:r.hasColors});let n=t.formatHelp(this,t);if(r.hasColors)return n;return this._outputConfiguration.stripColor(n)}_getOutputContext(e){e=e||{};let t=!!e.error,r,n,o;if(t)r=(i)=>this._outputConfiguration.writeErr(i),n=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth();else r=(i)=>this._outputConfiguration.writeOut(i),n=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth();return{error:t,write:(i)=>{if(!n)i=this._outputConfiguration.stripColor(i);return r(i)},hasColors:n,helpWidth:o}}outputHelp(e){let t;if(typeof e==="function")t=e,e=void 0;let r=this._getOutputContext(e),n={error:r.error,write:r.write,command:this};this._getCommandAndAncestors().reverse().forEach((s)=>s.emit("beforeAllHelp",n)),this.emit("beforeHelp",n);let o=this.helpInformation({error:r.error});if(t){if(o=t(o),typeof o!=="string"&&!Buffer.isBuffer(o))throw Error("outputHelp callback must return a string or a Buffer")}if(r.write(o),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",n),this._getCommandAndAncestors().forEach((s)=>s.emit("afterAllHelp",n))}helpOption(e,t){if(typeof e==="boolean"){if(e){if(this._helpOption===null)this._helpOption=void 0;if(this._defaultOptionGroup)this._initOptionGroup(this._getHelpOption())}else this._helpOption=null;return this}if(this._helpOption=this.createOption(e??"-h, --help",t??"display help for command"),e||t)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let t=Number(V.exitCode??0);if(t===0&&e&&typeof e!=="function"&&e.error)t=1;this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){let r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw Error(`Unexpected value for position to addHelpText.
|
|
26
26
|
Expecting one of '${r.join("', '")}'`);let n=`${e}Help`;return this.on(n,(o)=>{let s;if(typeof t==="function")s=t({error:o.error,command:o.command});else s=t;if(s)o.write(`${s}
|
|
27
|
-
`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();if(t&&e.find((n)=>t.is(n)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function
|
|
28
|
-
`)}}
|
|
29
|
-
`)?
|
|
27
|
+
`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();if(t&&e.find((n)=>t.is(n)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function Iw(e){return e.map((t)=>{if(!t.startsWith("--inspect"))return t;let r,n="127.0.0.1",o="9229",s;if((s=t.match(/^(--inspect(-brk)?)$/))!==null)r=s[1];else if((s=t.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(r=s[1],/^\d+$/.test(s[3]))o=s[3];else n=s[3];else if((s=t.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)r=s[1],n=s[3],o=s[4];if(r&&o!=="0")return`${r}=${n}:${parseInt(o)+1}`;return t})}function Hd(){if(V.env.NO_COLOR||V.env.FORCE_COLOR==="0"||V.env.FORCE_COLOR==="false")return!1;if(V.env.FORCE_COLOR||V.env.CLICOLOR_FORCE!==void 0)return!0;return}TN.Command=Gd;TN.useColor=Hd});var nu=E(function(lfe,Sm){var ru=process||{},q0=ru.argv||[],tu=ru.env||{},VF=!(!!tu.NO_COLOR||q0.includes("--no-color"))&&(!!tu.FORCE_COLOR||q0.includes("--color")||ru.platform==="win32"||(ru.stdout||{}).isTTY&&tu.TERM!=="dumb"||!!tu.CI),ZF=(e,t,r=e)=>(n)=>{let o=""+n,s=o.indexOf(t,e.length);return~s?e+BF(o,t,r,s)+t:e+o+t},BF=(e,t,r,n)=>{let o="",s=0;do o+=e.substring(s,n)+r,s=n+t.length,n=e.indexOf(t,s);while(~n);return o+e.substring(s)},F0=(e=VF)=>{let t=e?ZF:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};Sm.exports=F0();Sm.exports.createColors=F0});var Em=E(function(vfe,p$){var Tm={to(e,t){if(!t)return`\x1B[${e+1}G`;return`\x1B[${t+1};${e+1}H`},move(e,t){let r="";if(e<0)r+=`\x1B[${-e}D`;else if(e>0)r+=`\x1B[${e}C`;if(t<0)r+=`\x1B[${-t}A`;else if(t>0)r+=`\x1B[${t}B`;return r},up:(e=1)=>`\x1B[${e}A`,down:(e=1)=>`\x1B[${e}B`,forward:(e=1)=>`\x1B[${e}C`,backward:(e=1)=>`\x1B[${e}D`,nextLine:(e=1)=>"\x1B[E".repeat(e),prevLine:(e=1)=>"\x1B[F".repeat(e),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},zU={up:(e=1)=>"\x1B[S".repeat(e),down:(e=1)=>"\x1B[T".repeat(e)},NU={screen:"\x1B[2J",up:(e=1)=>"\x1B[1J".repeat(e),down:(e=1)=>"\x1B[J".repeat(e),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(e){let t="";for(let r=0;r<e;r++)t+=this.line+(r<e-1?Tm.up():"");if(e)t+=Tm.left;return t}};p$.exports={cursor:Tm,scroll:zU,erase:NU,beep:"\x07"}});var ce=E(function(qW){var Qm=Symbol.for("yaml.alias"),uT=Symbol.for("yaml.document"),wu=Symbol.for("yaml.map"),lT=Symbol.for("yaml.pair"),eh=Symbol.for("yaml.scalar"),bu=Symbol.for("yaml.seq"),Ar=Symbol.for("yaml.node.type"),CW=(e)=>!!e&&typeof e==="object"&&e[Ar]===Qm,zW=(e)=>!!e&&typeof e==="object"&&e[Ar]===uT,NW=(e)=>!!e&&typeof e==="object"&&e[Ar]===wu,LW=(e)=>!!e&&typeof e==="object"&&e[Ar]===lT,dT=(e)=>!!e&&typeof e==="object"&&e[Ar]===eh,jW=(e)=>!!e&&typeof e==="object"&&e[Ar]===bu;function pT(e){if(e&&typeof e==="object")switch(e[Ar]){case wu:case bu:return!0}return!1}function DW(e){if(e&&typeof e==="object")switch(e[Ar]){case Qm:case wu:case eh:case bu:return!0}return!1}var MW=(e)=>(dT(e)||pT(e))&&!!e.anchor;qW.ALIAS=Qm;qW.DOC=uT;qW.MAP=wu;qW.NODE_TYPE=Ar;qW.PAIR=lT;qW.SCALAR=eh;qW.SEQ=bu;qW.hasAnchor=MW;qW.isAlias=CW;qW.isCollection=pT;qW.isDocument=zW;qW.isMap=NW;qW.isNode=DW;qW.isPair=LW;qW.isScalar=dT;qW.isSeq=jW});var zi=E(function(nV){var Fe=ce(),ft=Symbol("break visit"),fT=Symbol("skip children"),dr=Symbol("remove node");function _u(e,t){let r=mT(t);if(Fe.isDocument(e)){if(qo(null,e.contents,r,Object.freeze([e]))===dr)e.contents=null}else qo(null,e,r,Object.freeze([]))}_u.BREAK=ft;_u.SKIP=fT;_u.REMOVE=dr;function qo(e,t,r,n){let o=hT(e,t,r,n);if(Fe.isNode(o)||Fe.isPair(o))return gT(e,n,o),qo(e,o,r,n);if(typeof o!=="symbol"){if(Fe.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=qo(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===ft)return ft;else if(i===dr)t.items.splice(s,1),s-=1}}else if(Fe.isPair(t)){n=Object.freeze(n.concat(t));let s=qo("key",t.key,r,n);if(s===ft)return ft;else if(s===dr)t.key=null;let i=qo("value",t.value,r,n);if(i===ft)return ft;else if(i===dr)t.value=null}}return o}async function Su(e,t){let r=mT(t);if(Fe.isDocument(e)){if(await Fo(null,e.contents,r,Object.freeze([e]))===dr)e.contents=null}else await Fo(null,e,r,Object.freeze([]))}Su.BREAK=ft;Su.SKIP=fT;Su.REMOVE=dr;async function Fo(e,t,r,n){let o=await hT(e,t,r,n);if(Fe.isNode(o)||Fe.isPair(o))return gT(e,n,o),Fo(e,o,r,n);if(typeof o!=="symbol"){if(Fe.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=await Fo(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===ft)return ft;else if(i===dr)t.items.splice(s,1),s-=1}}else if(Fe.isPair(t)){n=Object.freeze(n.concat(t));let s=await Fo("key",t.key,r,n);if(s===ft)return ft;else if(s===dr)t.key=null;let i=await Fo("value",t.value,r,n);if(i===ft)return ft;else if(i===dr)t.value=null}}return o}function mT(e){if(typeof e==="object"&&(e.Collection||e.Node||e.Value))return Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e);return e}function hT(e,t,r,n){if(typeof r==="function")return r(e,t,n);if(Fe.isMap(t))return r.Map?.(e,t,n);if(Fe.isSeq(t))return r.Seq?.(e,t,n);if(Fe.isPair(t))return r.Pair?.(e,t,n);if(Fe.isScalar(t))return r.Scalar?.(e,t,n);if(Fe.isAlias(t))return r.Alias?.(e,t,n);return}function gT(e,t,r){let n=t[t.length-1];if(Fe.isCollection(n))n.items[e]=r;else if(Fe.isPair(n))if(e==="key")n.key=r;else n.value=r;else if(Fe.isDocument(n))n.contents=r;else{let o=Fe.isAlias(n)?"alias":"scalar";throw Error(`Cannot replace node with ${o} parent`)}}nV.visit=_u;nV.visitAsync=Su});var th=E(function(uV){var yT=ce(),iV=zi(),aV={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},cV=(e)=>e.replace(/[!,[\]{}]/g,(t)=>aV[t]);class Lt{constructor(e,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Lt.defaultYaml,e),this.tags=Object.assign({},Lt.defaultTags,t)}clone(){let e=new Lt(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new Lt(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Lt.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Lt.defaultTags);break}return e}add(e,t){if(this.atNextDocument)this.yaml={explicit:Lt.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Lt.defaultTags),this.atNextDocument=!1;let r=e.trim().split(/[ \t]+/),n=r.shift();switch(n){case"%TAG":{if(r.length!==2){if(t(0,"%TAG directive should contain exactly two parts"),r.length<2)return!1}let[o,s]=r;return this.tags[o]=s,!0}case"%YAML":{if(this.yaml.explicit=!0,r.length!==1)return t(0,"%YAML directive should contain exactly one part"),!1;let[o]=r;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;else{let s=/^\d+\.\d+$/.test(o);return t(6,`Unsupported YAML version ${o}`,s),!1}}default:return t(0,`Unknown directive ${n}`,!0),!1}}tagName(e,t){if(e==="!")return"!";if(e[0]!=="!")return t(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let s=e.slice(2,-1);if(s==="!"||s==="!!")return t(`Verbatim tags aren't resolved, so ${e} is invalid.`),null;if(e[e.length-1]!==">")t("Verbatim tags must end with a >");return s}let[,r,n]=e.match(/^(.*!)([^!]*)$/s);if(!n)t(`The ${e} tag has no suffix`);let o=this.tags[r];if(o)try{return o+decodeURIComponent(n)}catch(s){return t(String(s)),null}if(r==="!")return e;return t(`Could not resolve tag: ${e}`),null}tagString(e){for(let[t,r]of Object.entries(this.tags))if(e.startsWith(r))return t+cV(e.substring(r.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let t=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],r=Object.entries(this.tags),n;if(e&&r.length>0&&yT.isNode(e.contents)){let o={};iV.visit(e.contents,(s,i)=>{if(yT.isNode(i)&&i.tag)o[i.tag]=!0}),n=Object.keys(o)}else n=[];for(let[o,s]of r){if(o==="!!"&&s==="tag:yaml.org,2002:")continue;if(!e||n.some((i)=>i.startsWith(s)))t.push(`%TAG ${o} ${s}`)}return t.join(`
|
|
28
|
+
`)}}Lt.defaultYaml={explicit:!1,version:"1.2"};Lt.defaultTags={"!!":"tag:yaml.org,2002:"};uV.Directives=Lt});var vu=E(function(mV){var wT=ce(),dV=zi();function pV(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw Error(r)}return!0}function bT(e){let t=new Set;return dV.visit(e,{Value(r,n){if(n.anchor)t.add(n.anchor)}}),t}function _T(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function fV(e,t){let r=[],n=new Map,o=null;return{onAnchor:(s)=>{r.push(s),o??(o=bT(e));let i=_T(t,o);return o.add(i),i},setAnchors:()=>{for(let s of r){let i=n.get(s);if(typeof i==="object"&&i.anchor&&(wT.isScalar(i.node)||wT.isCollection(i.node)))i.node.anchor=i.anchor;else{let a=Error("Failed to resolve repeated object (this should not happen)");throw a.source=s,a}}},sourceObjects:n}}mV.anchorIsValid=pV;mV.anchorNames=bT;mV.createNodeAnchors=fV;mV.findNewAnchor=_T});var rh=E(function(bV){function Ni(e,t,r,n){if(n&&typeof n==="object")if(Array.isArray(n))for(let o=0,s=n.length;o<s;++o){let i=n[o],a=Ni(e,n,String(o),i);if(a===void 0)delete n[o];else if(a!==i)n[o]=a}else if(n instanceof Map)for(let o of Array.from(n.keys())){let s=n.get(o),i=Ni(e,n,o,s);if(i===void 0)n.delete(o);else if(i!==s)n.set(o,i)}else if(n instanceof Set)for(let o of Array.from(n)){let s=Ni(e,n,o,o);if(s===void 0)n.delete(o);else if(s!==o)n.delete(o),n.add(s)}else for(let[o,s]of Object.entries(n)){let i=Ni(e,n,o,s);if(i===void 0)delete n[o];else if(i!==s)n[o]=i}return e.call(t,r,n)}bV.applyReviver=Ni});var Qr=E(function(vV){var SV=ce();function ST(e,t,r){if(Array.isArray(e))return e.map((n,o)=>ST(n,String(o),r));if(e&&typeof e.toJSON==="function"){if(!r||!SV.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=(s)=>{n.res=s,delete r.onCreate};let o=e.toJSON(t,r);if(r.onCreate)r.onCreate(o);return o}if(typeof e==="bigint"&&!r?.keep)return Number(e);return e}vV.toJS=ST});var ku=E(function(TV){var xV=rh(),vT=ce(),$V=Qr();class kT{constructor(e){Object.defineProperty(this,vT.NODE_TYPE,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)e.range=this.range.slice();return e}toJS(e,{mapAsMap:t,maxAliasCount:r,onAnchor:n,reviver:o}={}){if(!vT.isDocument(e))throw TypeError("A document argument is required");let s={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof r==="number"?r:100},i=$V.toJS(this,"",s);if(typeof n==="function")for(let{count:a,res:c}of s.anchors.values())n(c,a);return typeof o==="function"?xV.applyReviver(o,{"":i},"",i):i}}TV.NodeBase=kT});var Li=E(function(RV){var PV=vu(),OV=zi(),Uo=ce(),IV=ku(),AV=Qr();class xT extends IV.NodeBase{constructor(e){super(Uo.ALIAS);this.source=e,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(e,t){if(t?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");let r;if(t?.aliasResolveCache)r=t.aliasResolveCache;else if(r=[],OV.visit(e,{Node:(o,s)=>{if(Uo.isAlias(s)||Uo.hasAnchor(s))r.push(s)}}),t)t.aliasResolveCache=r;let n=void 0;for(let o of r){if(o===this)break;if(o.anchor===this.source)n=o}return n}toJSON(e,t){if(!t)return{source:this.source};let{anchors:r,doc:n,maxAliasCount:o}=t,s=this.resolve(n,t);if(!s){let a=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(a)}let i=r.get(s);if(!i)AV.toJS(s,null,t),i=r.get(s);if(i?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(o>=0){if(i.count+=1,i.aliasCount===0)i.aliasCount=xu(n,s,r);if(i.count*i.aliasCount>o)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return i.res}toString(e,t,r){let n=`*${this.source}`;if(e){if(PV.anchorIsValid(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(o)}if(e.implicitKey)return`${n} `}return n}}function xu(e,t,r){if(Uo.isAlias(t)){let n=t.resolve(e),o=r&&n&&r.get(n);return o?o.count*o.aliasCount:0}else if(Uo.isCollection(t)){let n=0;for(let o of t.items){let s=xu(e,o,r);if(s>n)n=s}return n}else if(Uo.isPair(t)){let n=xu(e,t.key,r),o=xu(e,t.value,r);return Math.max(n,o)}return 1}RV.Alias=xT});var je=E(function(DV){var zV=ce(),NV=ku(),LV=Qr(),jV=(e)=>!e||typeof e!=="function"&&typeof e!=="object";class Vn extends NV.NodeBase{constructor(e){super(zV.SCALAR);this.value=e}toJSON(e,t){return t?.keep?this.value:LV.toJS(this.value,e,t)}toString(){return String(this.value)}}Vn.BLOCK_FOLDED="BLOCK_FOLDED";Vn.BLOCK_LITERAL="BLOCK_LITERAL";Vn.PLAIN="PLAIN";Vn.QUOTE_DOUBLE="QUOTE_DOUBLE";Vn.QUOTE_SINGLE="QUOTE_SINGLE";DV.Scalar=Vn;DV.isScalarValue=jV});var ji=E(function(ZV){var FV=Li(),Zn=ce(),$T=je(),UV="tag:yaml.org,2002:";function WV(e,t,r){if(t){let n=r.filter((s)=>s.tag===t),o=n.find((s)=>!s.format)??n[0];if(!o)throw Error(`Tag ${t} not found`);return o}return r.find((n)=>n.identify?.(e)&&!n.format)}function VV(e,t,r){if(Zn.isDocument(e))e=e.contents;if(Zn.isNode(e))return e;if(Zn.isPair(e)){let d=r.schema[Zn.MAP].createNode?.(r.schema,null,r);return d.items.push(e),d}if(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)e=e.valueOf();let{aliasDuplicateObjects:n,onAnchor:o,onTagObj:s,schema:i,sourceObjects:a}=r,c=void 0;if(n&&e&&typeof e==="object")if(c=a.get(e),c)return c.anchor??(c.anchor=o(e)),new FV.Alias(c.anchor);else c={anchor:null,node:null},a.set(e,c);if(t?.startsWith("!!"))t=UV+t.slice(2);let u=WV(e,t,i.tags);if(!u){if(e&&typeof e.toJSON==="function")e=e.toJSON();if(!e||typeof e!=="object"){let d=new $T.Scalar(e);if(c)c.node=d;return d}u=e instanceof Map?i[Zn.MAP]:(Symbol.iterator in Object(e))?i[Zn.SEQ]:i[Zn.MAP]}if(s)s(u),delete r.onTagObj;let l=u?.createNode?u.createNode(r.schema,e,r):typeof u?.nodeClass?.from==="function"?u.nodeClass.from(r.schema,e,r):new $T.Scalar(e);if(t)l.tag=t;else if(!u.default)l.tag=u.tag;if(c)c.node=l;return l}ZV.createNode=VV});var $u=E(function(GV){var KV=ji(),pr=ce(),HV=ku();function nh(e,t,r){let n=r;for(let o=t.length-1;o>=0;--o){let s=t[o];if(typeof s==="number"&&Number.isInteger(s)&&s>=0){let i=[];i[s]=n,n=i}else n=new Map([[s,n]])}return KV.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var TT=(e)=>e==null||typeof e==="object"&&!!e[Symbol.iterator]().next().done;class ET extends HV.NodeBase{constructor(e,t){super(e);Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(e)t.schema=e;if(t.items=t.items.map((r)=>pr.isNode(r)||pr.isPair(r)?r.clone(e):r),this.range)t.range=this.range.slice();return t}addIn(e,t){if(TT(e))this.add(t);else{let[r,...n]=e,o=this.get(r,!0);if(pr.isCollection(o))o.addIn(n,t);else if(o===void 0&&this.schema)this.set(r,nh(this.schema,n,t));else throw Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}}deleteIn(e){let[t,...r]=e;if(r.length===0)return this.delete(t);let n=this.get(t,!0);if(pr.isCollection(n))return n.deleteIn(r);else throw Error(`Expected YAML collection at ${t}. Remaining path: ${r}`)}getIn(e,t){let[r,...n]=e,o=this.get(r,!0);if(n.length===0)return!t&&pr.isScalar(o)?o.value:o;else return pr.isCollection(o)?o.getIn(n,t):void 0}hasAllNullValues(e){return this.items.every((t)=>{if(!pr.isPair(t))return!1;let r=t.value;return r==null||e&&pr.isScalar(r)&&r.value==null&&!r.commentBefore&&!r.comment&&!r.tag})}hasIn(e){let[t,...r]=e;if(r.length===0)return this.has(t);let n=this.get(t,!0);return pr.isCollection(n)?n.hasIn(r):!1}setIn(e,t){let[r,...n]=e;if(n.length===0)this.set(r,t);else{let o=this.get(r,!0);if(pr.isCollection(o))o.setIn(n,t);else if(o===void 0&&this.schema)this.set(r,nh(this.schema,n,t));else throw Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}}}GV.Collection=ET;GV.collectionFromPath=nh;GV.isEmptyPath=TT});var Di=E(function(tZ){var QV=(e)=>e.replace(/^(?!$)(?: $)?/gm,"#");function oh(e,t){if(/^\n+$/.test(e))return e.substring(1);return t?e.replace(/^(?! *$)/gm,t):e}var eZ=(e,t,r)=>e.endsWith(`
|
|
29
|
+
`)?oh(r,t):r.includes(`
|
|
30
30
|
`)?`
|
|
31
|
-
`+
|
|
32
|
-
`){if(r==="block")g=
|
|
31
|
+
`+oh(r,t):(e.endsWith(" ")?"":" ")+r;tZ.indentComment=oh;tZ.lineComment=eZ;tZ.stringifyComment=QV});var OT=E(function(iZ){function sZ(e,t,r="flow",{indentAtStart:n,lineWidth:o=80,minContentWidth:s=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return e;if(o<s)s=0;let c=Math.max(1+s,1+o-t.length);if(e.length<=c)return e;let u=[],l={},d=o-t.length;if(typeof n==="number")if(n>o-Math.max(2,s))u.push(0);else d=o-n;let f=void 0,m=void 0,h=!1,g=-1,y=-1,b=-1;if(r==="block"){if(g=PT(e,g,t.length),g!==-1)d=g+c}for(let k;k=e[g+=1];){if(r==="quoted"&&k==="\\"){switch(y=g,e[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}b=g}if(k===`
|
|
32
|
+
`){if(r==="block")g=PT(e,g,t.length);d=g+t.length+c,f=void 0}else{if(k===" "&&m&&m!==" "&&m!==`
|
|
33
33
|
`&&m!=="\t"){let I=e[g+1];if(I&&I!==" "&&I!==`
|
|
34
|
-
`&&I!=="\t")f=g}if(g>=d)if(f)u.push(f),d=f+c,f=void 0;else if(r==="quoted"){while(m===" "||m==="\t")m=
|
|
34
|
+
`&&I!=="\t")f=g}if(g>=d)if(f)u.push(f),d=f+c,f=void 0;else if(r==="quoted"){while(m===" "||m==="\t")m=k,k=e[g+=1],h=!0;let I=g>b+1?g-2:y-1;if(l[I])return e;u.push(I),l[I]=!0,d=I+c,f=void 0}else h=!0}m=k}if(h&&a)a();if(u.length===0)return e;if(i)i();let T=e.slice(0,u[0]);for(let k=0;k<u.length;++k){let I=u[k],_=u[k+1]||e.length;if(I===0)T=`
|
|
35
35
|
${t}${e.slice(0,_)}`;else{if(r==="quoted"&&l[I])T+=`${e[I]}\\`;T+=`
|
|
36
|
-
${t}${e.slice(I+1,_)}`}}return T}function
|
|
37
|
-
`);n=t,o=t+1,s=e[o]}return n}
|
|
38
|
-
`){if(s-i>n)return!0;if(i=s+1,o-i<=n)return!1}return!0}function
|
|
36
|
+
${t}${e.slice(I+1,_)}`}}return T}function PT(e,t,r){let n=t,o=t+1,s=e[o];while(s===" "||s==="\t")if(t<o+r)s=e[++t];else{do s=e[++t];while(s&&s!==`
|
|
37
|
+
`);n=t,o=t+1,s=e[o]}return n}iZ.FOLD_BLOCK="block";iZ.FOLD_FLOW="flow";iZ.FOLD_QUOTED="quoted";iZ.foldFlowLines=sZ});var qi=E(function(mZ){var Jt=je(),en=OT(),Eu=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Pu=(e)=>/^(%|---|\.\.\.)/m.test(e);function dZ(e,t,r){if(!t||t<0)return!1;let n=t-r,o=e.length;if(o<=n)return!1;for(let s=0,i=0;s<o;++s)if(e[s]===`
|
|
38
|
+
`){if(s-i>n)return!0;if(i=s+1,o-i<=n)return!1}return!0}function Mi(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,o=t.options.doubleQuotedMinMultiLineLength,s=t.indent||(Pu(e)?" ":""),i="",a=0;for(let c=0,u=r[c];u;u=r[++c]){if(u===" "&&r[c+1]==="\\"&&r[c+2]==="n")i+=r.slice(a,c)+"\\ ",c+=1,a=c,u="\\";if(u==="\\")switch(r[c+1]){case"u":{i+=r.slice(a,c);let l=r.substr(c+2,4);switch(l){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:if(l.substr(0,2)==="00")i+="\\x"+l.substr(2);else i+=r.substr(c,6)}c+=5,a=c+1}break;case"n":if(n||r[c+2]==='"'||r.length<o)c+=1;else{i+=r.slice(a,c)+`
|
|
39
39
|
|
|
40
40
|
`;while(r[c+2]==="\\"&&r[c+3]==="n"&&r[c+4]!=='"')i+=`
|
|
41
|
-
`,c+=2;if(i+=s,r[c+2]===" ")i+="\\";c+=1,a=c+1}break;default:c+=1}}return i=a?i+r.slice(a):r,n?i:
|
|
42
|
-
`)||/[ \t]\n|\n[ \t]/.test(e))return
|
|
43
|
-
${r}`)+"'";return t.implicitKey?n:
|
|
41
|
+
`,c+=2;if(i+=s,r[c+2]===" ")i+="\\";c+=1,a=c+1}break;default:c+=1}}return i=a?i+r.slice(a):r,n?i:en.foldFlowLines(i,s,en.FOLD_QUOTED,Eu(t,!1))}function sh(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
|
|
42
|
+
`)||/[ \t]\n|\n[ \t]/.test(e))return Mi(e,t);let r=t.indent||(Pu(e)?" ":""),n="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
43
|
+
${r}`)+"'";return t.implicitKey?n:en.foldFlowLines(n,r,en.FOLD_FLOW,Eu(t,!1))}function Wo(e,t){let{singleQuote:r}=t.options,n;if(r===!1)n=Mi;else{let o=e.includes('"'),s=e.includes("'");if(o&&!s)n=sh;else if(s&&!o)n=Mi;else n=r?sh:Mi}return n(e,t)}var ih;try{ih=new RegExp(`(^|(?<!
|
|
44
44
|
))
|
|
45
45
|
+(?!
|
|
46
|
-
|$)`,"g")}catch{
|
|
46
|
+
|$)`,"g")}catch{ih=/\n+(?!\n|$)/g}function Tu({comment:e,type:t,value:r},n,o,s){let{blockQuote:i,commentString:a,lineWidth:c}=n.options;if(!i||/\n[\t ]+$/.test(r))return Wo(r,n);let u=n.indent||(n.forceBlockIndent||Pu(r)?" ":""),l=i==="literal"?!0:i==="folded"||t===Jt.Scalar.BLOCK_FOLDED?!1:t===Jt.Scalar.BLOCK_LITERAL?!0:!dZ(r,c,u.length);if(!r)return l?`|
|
|
47
47
|
`:`>
|
|
48
48
|
`;let d,f;for(f=r.length;f>0;--f){let _=r[f-1];if(_!==`
|
|
49
49
|
`&&_!=="\t"&&_!==" ")break}let m=r.substring(f),h=m.indexOf(`
|
|
50
50
|
`);if(h===-1)d="-";else if(r===m||h!==m.length-1){if(d="+",s)s()}else d="";if(m){if(r=r.slice(0,-m.length),m[m.length-1]===`
|
|
51
|
-
`)m=m.slice(0,-1);m=m.replace(
|
|
51
|
+
`)m=m.slice(0,-1);m=m.replace(ih,`$&${u}`)}let g=!1,y,b=-1;for(y=0;y<r.length;++y){let _=r[y];if(_===" ")g=!0;else if(_===`
|
|
52
52
|
`)b=y;else break}let T=r.substring(0,b<y?b+1:y);if(T)r=r.substring(T.length),T=T.replace(/\n+/g,`$&${u}`);let I=(g?u?"2":"1":"")+d;if(e){if(I+=" "+a(e.replace(/ ?[\r\n]+/g," ")),o)o()}if(!l){let _=r.replace(/\n+/g,`
|
|
53
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),
|
|
53
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),S=!1,x=Eu(n,!0);if(i!=="folded"&&t!==Jt.Scalar.BLOCK_FOLDED)x.onOverflow=()=>{S=!0};let A=en.foldFlowLines(`${T}${_}${m}`,u,en.FOLD_BLOCK,x);if(!S)return`>${I}
|
|
54
54
|
${u}${A}`}return r=r.replace(/\n+/g,`$&${u}`),`|${I}
|
|
55
|
-
${u}${T}${r}${m}`}function
|
|
56
|
-
`)||l&&/[[\]{},]/.test(s))return
|
|
57
|
-
`)?
|
|
58
|
-
`))return
|
|
59
|
-
${c}`);if(i){let f=(g)=>g.default&&g.tag!=="tag:yaml.org,2002:str"&&g.test?.test(d),{compat:m,tags:h}=t.doc.schema;if(h.some(f)||m?.some(f))return
|
|
60
|
-
${t.indent}${a}`}
|
|
61
|
-
${a}:`}else if(y=`${y}:`,f)y+=
|
|
62
|
-
`:"",T){let x=u(T);
|
|
63
|
-
${
|
|
64
|
-
`&&S
|
|
65
|
-
|
|
66
|
-
`}else
|
|
67
|
-
${r.indent}`}else if(!m&&
|
|
68
|
-
`),
|
|
55
|
+
${u}${T}${r}${m}`}function pZ(e,t,r,n){let{type:o,value:s}=e,{actualString:i,implicitKey:a,indent:c,indentStep:u,inFlow:l}=t;if(a&&s.includes(`
|
|
56
|
+
`)||l&&/[[\]{},]/.test(s))return Wo(s,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(s))return a||l||!s.includes(`
|
|
57
|
+
`)?Wo(s,t):Tu(e,t,r,n);if(!a&&!l&&o!==Jt.Scalar.PLAIN&&s.includes(`
|
|
58
|
+
`))return Tu(e,t,r,n);if(Pu(s)){if(c==="")return t.forceBlockIndent=!0,Tu(e,t,r,n);else if(a&&c===u)return Wo(s,t)}let d=s.replace(/\n+/g,`$&
|
|
59
|
+
${c}`);if(i){let f=(g)=>g.default&&g.tag!=="tag:yaml.org,2002:str"&&g.test?.test(d),{compat:m,tags:h}=t.doc.schema;if(h.some(f)||m?.some(f))return Wo(s,t)}return a?d:en.foldFlowLines(d,c,en.FOLD_FLOW,Eu(t,!1))}function fZ(e,t,r,n){let{implicitKey:o,inFlow:s}=t,i=typeof e.value==="string"?e:Object.assign({},e,{value:String(e.value)}),{type:a}=e;if(a!==Jt.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value))a=Jt.Scalar.QUOTE_DOUBLE}let c=(l)=>{switch(l){case Jt.Scalar.BLOCK_FOLDED:case Jt.Scalar.BLOCK_LITERAL:return o||s?Wo(i.value,t):Tu(i,t,r,n);case Jt.Scalar.QUOTE_DOUBLE:return Mi(i.value,t);case Jt.Scalar.QUOTE_SINGLE:return sh(i.value,t);case Jt.Scalar.PLAIN:return pZ(i,t,r,n);default:return null}},u=c(a);if(u===null){let{defaultKeyType:l,defaultStringType:d}=t.options,f=o&&l||d;if(u=c(f),u===null)throw Error(`Unsupported default string type ${f}`)}return u}mZ.stringifyString=fZ});var Fi=E(function(kZ){var gZ=vu(),tn=ce(),yZ=Di(),wZ=qi();function bZ(e,t){let r=Object.assign({blockQuote:!0,commentString:yZ.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent==="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function _Z(e,t){if(t.tag){let o=e.filter((s)=>s.tag===t.tag);if(o.length>0)return o.find((s)=>s.format===t.format)??o[0]}let r=void 0,n;if(tn.isScalar(t)){n=t.value;let o=e.filter((s)=>s.identify?.(n));if(o.length>1){let s=o.filter((i)=>i.test);if(s.length>0)o=s}r=o.find((s)=>s.format===t.format)??o.find((s)=>!s.format)}else n=t,r=e.find((o)=>o.nodeClass&&n instanceof o.nodeClass);if(!r){let o=n?.constructor?.name??(n===null?"null":typeof n);throw Error(`Tag not resolved for ${o} value`)}return r}function SZ(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let o=[],s=(tn.isScalar(e)||tn.isCollection(e))&&e.anchor;if(s&&gZ.anchorIsValid(s))r.add(s),o.push(`&${s}`);let i=e.tag??(t.default?null:t.tag);if(i)o.push(n.directives.tagString(i));return o.join(" ")}function vZ(e,t,r,n){if(tn.isPair(e))return e.toString(t,r,n);if(tn.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(t.resolvedAliases)t.resolvedAliases.add(e);else t.resolvedAliases=new Set([e]);e=e.resolve(t.doc)}}let o=void 0,s=tn.isNode(e)?e:t.doc.createNode(e,{onTagObj:(c)=>o=c});o??(o=_Z(t.doc.schema.tags,s));let i=SZ(s,o,t);if(i.length>0)t.indentAtStart=(t.indentAtStart??0)+i.length+1;let a=typeof o.stringify==="function"?o.stringify(s,t,r,n):tn.isScalar(s)?wZ.stringifyString(s,t,r,n):s.toString(t,r,n);if(!i)return a;return tn.isScalar(s)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i}
|
|
60
|
+
${t.indent}${a}`}kZ.createStringifyContext=bZ;kZ.stringify=vZ});var RT=E(function(EZ){var Rr=ce(),IT=je(),AT=Fi(),Ui=Di();function TZ({key:e,value:t},r,n,o){let{allNullValues:s,doc:i,indent:a,indentStep:c,options:{commentString:u,indentSeq:l,simpleKeys:d}}=r,f=Rr.isNode(e)&&e.comment||null;if(d){if(f)throw Error("With simple keys, key nodes cannot have comments");if(Rr.isCollection(e)||!Rr.isNode(e)&&typeof e==="object")throw Error("With simple keys, collection cannot be used as a key value")}let m=!d&&(!e||f&&t==null&&!r.inFlow||Rr.isCollection(e)||(Rr.isScalar(e)?e.type===IT.Scalar.BLOCK_FOLDED||e.type===IT.Scalar.BLOCK_LITERAL:typeof e==="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!m&&(d||!s),indent:a+c});let h=!1,g=!1,y=AT.stringify(e,r,()=>h=!0,()=>g=!0);if(!m&&!r.inFlow&&y.length>1024){if(d)throw Error("With simple keys, single line scalar must not span more than 1024 characters");m=!0}if(r.inFlow){if(s||t==null){if(h&&n)n();return y===""?"?":m?`? ${y}`:y}}else if(s&&!d||t==null&&m){if(y=`? ${y}`,f&&!h)y+=Ui.lineComment(y,r.indent,u(f));else if(g&&o)o();return y}if(h)f=null;if(m){if(f)y+=Ui.lineComment(y,r.indent,u(f));y=`? ${y}
|
|
61
|
+
${a}:`}else if(y=`${y}:`,f)y+=Ui.lineComment(y,r.indent,u(f));let b,T,k;if(Rr.isNode(t))b=!!t.spaceBefore,T=t.commentBefore,k=t.comment;else if(b=!1,T=null,k=null,t&&typeof t==="object")t=i.createNode(t);if(r.implicitKey=!1,!m&&!f&&Rr.isScalar(t))r.indentAtStart=y.length+1;if(g=!1,!l&&c.length>=2&&!r.inFlow&&!m&&Rr.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor)r.indent=r.indent.substring(2);let I=!1,_=AT.stringify(t,r,()=>I=!0,()=>g=!0),S=" ";if(f||b||T){if(S=b?`
|
|
62
|
+
`:"",T){let x=u(T);S+=`
|
|
63
|
+
${Ui.indentComment(x,r.indent)}`}if(_===""&&!r.inFlow){if(S===`
|
|
64
|
+
`&&k)S=`
|
|
65
|
+
|
|
66
|
+
`}else S+=`
|
|
67
|
+
${r.indent}`}else if(!m&&Rr.isCollection(t)){let x=_[0],A=_.indexOf(`
|
|
68
|
+
`),D=A!==-1,Y=r.inFlow??t.flow??t.items.length===0;if(D||!Y){let ie=!1;if(D&&(x==="&"||x==="!")){let ae=_.indexOf(" ");if(x==="&"&&ae!==-1&&ae<A&&_[ae+1]==="!")ae=_.indexOf(" ",ae+1);if(ae===-1||A<ae)ie=!0}if(!ie)S=`
|
|
69
69
|
${r.indent}`}}else if(_===""||_[0]===`
|
|
70
|
-
`)
|
|
70
|
+
`)S="";if(y+=S+_,r.inFlow){if(I&&n)n()}else if(k&&!I)y+=Ui.lineComment(y,r.indent,u(k));else if(g&&o)o();return y}EZ.stringifyPair=TZ});var ah=E(function(AZ){var CT=$r("process");function OZ(e,...t){if(e==="debug")console.log(...t)}function IZ(e,t){if(e==="debug"||e==="warn")if(typeof CT.emitWarning==="function")CT.emitWarning(t);else console.warn(t)}AZ.debug=OZ;AZ.warn=IZ});var Ru=E(function(NZ){var Au=ce(),zT=je(),Ou="<<",Iu={identify:(e)=>e===Ou||typeof e==="symbol"&&e.description===Ou,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new zT.Scalar(Symbol(Ou)),{addToJSMap:NT}),stringify:()=>Ou},zZ=(e,t)=>(Iu.identify(t)||Au.isScalar(t)&&(!t.type||t.type===zT.Scalar.PLAIN)&&Iu.identify(t.value))&&e?.doc.schema.tags.some((r)=>r.tag===Iu.tag&&r.default);function NT(e,t,r){let n=LT(e,r);if(Au.isSeq(n))for(let o of n.items)ch(e,t,o);else if(Array.isArray(n))for(let o of n)ch(e,t,o);else ch(e,t,n)}function ch(e,t,r){let n=LT(e,r);if(!Au.isMap(n))throw Error("Merge sources must be maps or map aliases");let o=n.toJSON(null,e,Map);for(let[s,i]of o)if(t instanceof Map){if(!t.has(s))t.set(s,i)}else if(t instanceof Set)t.add(s);else if(!Object.prototype.hasOwnProperty.call(t,s))Object.defineProperty(t,s,{value:i,writable:!0,enumerable:!0,configurable:!0});return t}function LT(e,t){return e&&Au.isAlias(t)?t.resolve(e.doc,e):t}NZ.addMergeToJSMap=NT;NZ.isMergeKey=zZ;NZ.merge=Iu});var lh=E(function(WZ){var MZ=ah(),jT=Ru(),qZ=Fi(),DT=ce(),uh=Qr();function FZ(e,t,{key:r,value:n}){if(DT.isNode(r)&&r.addToJSMap)r.addToJSMap(e,t,n);else if(jT.isMergeKey(e,r))jT.addMergeToJSMap(e,t,n);else{let o=uh.toJS(r,"",e);if(t instanceof Map)t.set(o,uh.toJS(n,o,e));else if(t instanceof Set)t.add(o);else{let s=UZ(r,o,e),i=uh.toJS(n,s,e);if(s in t)Object.defineProperty(t,s,{value:i,writable:!0,enumerable:!0,configurable:!0});else t[s]=i}}return t}function UZ(e,t,r){if(t===null)return"";if(typeof t!=="object")return String(t);if(DT.isNode(e)&&r?.doc){let n=qZ.createStringifyContext(r.doc,{});n.anchors=new Set;for(let s of r.anchors.keys())n.anchors.add(s.anchor);n.inFlow=!0,n.inStringifyKey=!0;let o=e.toString(n);if(!r.mapKeyWarned){let s=JSON.stringify(o);if(s.length>40)s=s.substring(0,36)+'..."';MZ.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${s}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return o}return JSON.stringify(t)}WZ.addPairToJSMap=FZ});var rn=E(function(HZ){var MT=ji(),ZZ=RT(),BZ=lh(),Cu=ce();function KZ(e,t,r){let n=MT.createNode(e,void 0,r),o=MT.createNode(t,void 0,r);return new zu(n,o)}class zu{constructor(e,t=null){Object.defineProperty(this,Cu.NODE_TYPE,{value:Cu.PAIR}),this.key=e,this.value=t}clone(e){let{key:t,value:r}=this;if(Cu.isNode(t))t=t.clone(e);if(Cu.isNode(r))r=r.clone(e);return new zu(t,r)}toJSON(e,t){let r=t?.mapAsMap?new Map:{};return BZ.addPairToJSMap(t,r,this)}toString(e,t,r){return e?.doc?ZZ.stringifyPair(this,e,t,r):JSON.stringify(this)}}HZ.Pair=zu;HZ.createPair=KZ});var dh=E(function(e4){var Bn=ce(),qT=Fi(),Nu=Di();function YZ(e,t,r){return(t.inFlow??e.flow?QZ:XZ)(e,t,r)}function XZ({comment:e,items:t},r,{blockItemPrefix:n,flowChars:o,itemIndent:s,onChompKeep:i,onComment:a}){let{indent:c,options:{commentString:u}}=r,l=Object.assign({},r,{indent:s,type:null}),d=!1,f=[];for(let h=0;h<t.length;++h){let g=t[h],y=null;if(Bn.isNode(g)){if(!d&&g.spaceBefore)f.push("");if(Lu(r,f,g.commentBefore,d),g.comment)y=g.comment}else if(Bn.isPair(g)){let T=Bn.isNode(g.key)?g.key:null;if(T){if(!d&&T.spaceBefore)f.push("");Lu(r,f,T.commentBefore,d)}}d=!1;let b=qT.stringify(g,l,()=>y=null,()=>d=!0);if(y)b+=Nu.lineComment(b,s,u(y));if(d&&y)d=!1;f.push(n+b)}let m;if(f.length===0)m=o.start+o.end;else{m=f[0];for(let h=1;h<f.length;++h){let g=f[h];m+=g?`
|
|
71
71
|
${c}${g}`:`
|
|
72
72
|
`}}if(e){if(m+=`
|
|
73
|
-
`+
|
|
74
|
-
`)),h<e.length-1)b+=",";else if(t.options.trailingComma){if(t.options.lineWidth>0)u||(u=d.reduce((T,
|
|
73
|
+
`+Nu.indentComment(u(e),c),a)a()}else if(d&&i)i();return m}function QZ({items:e},t,{flowChars:r,itemIndent:n}){let{indent:o,indentStep:s,flowCollectionPadding:i,options:{commentString:a}}=t;n+=s;let c=Object.assign({},t,{indent:n,inFlow:!0,type:null}),u=!1,l=0,d=[];for(let h=0;h<e.length;++h){let g=e[h],y=null;if(Bn.isNode(g)){if(g.spaceBefore)d.push("");if(Lu(t,d,g.commentBefore,!1),g.comment)y=g.comment}else if(Bn.isPair(g)){let T=Bn.isNode(g.key)?g.key:null;if(T){if(T.spaceBefore)d.push("");if(Lu(t,d,T.commentBefore,!1),T.comment)u=!0}let k=Bn.isNode(g.value)?g.value:null;if(k){if(k.comment)y=k.comment;if(k.commentBefore)u=!0}else if(g.value==null&&T?.comment)y=T.comment}if(y)u=!0;let b=qT.stringify(g,c,()=>y=null);if(u||(u=d.length>l||b.includes(`
|
|
74
|
+
`)),h<e.length-1)b+=",";else if(t.options.trailingComma){if(t.options.lineWidth>0)u||(u=d.reduce((T,k)=>T+k.length+2,2)+(b.length+2)>t.options.lineWidth);if(u)b+=","}if(y)b+=Nu.lineComment(b,n,a(y));d.push(b),l=d.length}let{start:f,end:m}=r;if(d.length===0)return f+m;else{if(!u){let h=d.reduce((g,y)=>g+y.length+2,2);u=t.options.lineWidth>0&&h>t.options.lineWidth}if(u){let h=f;for(let g of d)h+=g?`
|
|
75
75
|
${s}${o}${g}`:`
|
|
76
76
|
`;return`${h}
|
|
77
|
-
${o}${m}`}else return`${f}${i}${d.join(" ")}${i}${m}`}}function
|
|
78
|
-
`:" ")}return
|
|
77
|
+
${o}${m}`}else return`${f}${i}${d.join(" ")}${i}${m}`}}function Lu({indent:e,options:{commentString:t}},r,n,o){if(n&&o)n=n.replace(/^\n+/,"");if(n){let s=Nu.indentComment(t(n),e);r.push(s.trimStart())}}e4.stringifyCollection=YZ});var on=E(function(i4){var r4=dh(),n4=lh(),o4=$u(),nn=ce(),ju=rn(),s4=je();function Wi(e,t){let r=nn.isScalar(t)?t.value:t;for(let n of e)if(nn.isPair(n)){if(n.key===t||n.key===r)return n;if(nn.isScalar(n.key)&&n.key.value===r)return n}return}class FT extends o4.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(nn.MAP,e);this.items=[]}static from(e,t,r){let{keepUndefined:n,replacer:o}=r,s=new this(e),i=(a,c)=>{if(typeof o==="function")c=o.call(t,a,c);else if(Array.isArray(o)&&!o.includes(a))return;if(c!==void 0||n)s.items.push(ju.createPair(a,c,r))};if(t instanceof Map)for(let[a,c]of t)i(a,c);else if(t&&typeof t==="object")for(let a of Object.keys(t))i(a,t[a]);if(typeof e.sortMapEntries==="function")s.items.sort(e.sortMapEntries);return s}add(e,t){let r;if(nn.isPair(e))r=e;else if(!e||typeof e!=="object"||!("key"in e))r=new ju.Pair(e,e?.value);else r=new ju.Pair(e.key,e.value);let n=Wi(this.items,r.key),o=this.schema?.sortMapEntries;if(n){if(!t)throw Error(`Key ${r.key} already set`);if(nn.isScalar(n.value)&&s4.isScalarValue(r.value))n.value.value=r.value;else n.value=r.value}else if(o){let s=this.items.findIndex((i)=>o(r,i)<0);if(s===-1)this.items.push(r);else this.items.splice(s,0,r)}else this.items.push(r)}delete(e){let t=Wi(this.items,e);if(!t)return!1;return this.items.splice(this.items.indexOf(t),1).length>0}get(e,t){let n=Wi(this.items,e)?.value;return(!t&&nn.isScalar(n)?n.value:n)??void 0}has(e){return!!Wi(this.items,e)}set(e,t){this.add(new ju.Pair(e,t),!0)}toJSON(e,t,r){let n=r?new r:t?.mapAsMap?new Map:{};if(t?.onCreate)t.onCreate(n);for(let o of this.items)n4.addPairToJSMap(t,n,o);return n}toString(e,t,r){if(!e)return JSON.stringify(this);for(let n of this.items)if(!nn.isPair(n))throw Error(`Map items must all be pairs; found ${JSON.stringify(n)} instead`);if(!e.allNullValues&&this.hasAllNullValues(!1))e=Object.assign({},e,{allNullValues:!0});return r4.stringifyCollection(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:r,onComment:t})}}i4.YAMLMap=FT;i4.findPair=Wi});var Vo=E(function(d4){var u4=ce(),UT=on(),l4={collection:"map",default:!0,nodeClass:UT.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){if(!u4.isMap(e))t("Expected a mapping for this tag");return e},createNode:(e,t,r)=>UT.YAMLMap.from(e,t,r)};d4.map=l4});var sn=E(function(w4){var f4=ji(),m4=dh(),h4=$u(),Mu=ce(),g4=je(),y4=Qr();class WT extends h4.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(Mu.SEQ,e);this.items=[]}add(e){this.items.push(e)}delete(e){let t=Du(e);if(typeof t!=="number")return!1;return this.items.splice(t,1).length>0}get(e,t){let r=Du(e);if(typeof r!=="number")return;let n=this.items[r];return!t&&Mu.isScalar(n)?n.value:n}has(e){let t=Du(e);return typeof t==="number"&&t<this.items.length}set(e,t){let r=Du(e);if(typeof r!=="number")throw Error(`Expected a valid index, not ${e}.`);let n=this.items[r];if(Mu.isScalar(n)&&g4.isScalarValue(t))n.value=t;else this.items[r]=t}toJSON(e,t){let r=[];if(t?.onCreate)t.onCreate(r);let n=0;for(let o of this.items)r.push(y4.toJS(o,String(n++),t));return r}toString(e,t,r){if(!e)return JSON.stringify(this);return m4.stringifyCollection(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+" ",onChompKeep:r,onComment:t})}static from(e,t,r){let{replacer:n}=r,o=new this(e);if(t&&Symbol.iterator in Object(t)){let s=0;for(let i of t){if(typeof n==="function"){let a=t instanceof Set?i:String(s++);i=n.call(t,a,i)}o.items.push(f4.createNode(i,void 0,r))}}return o}}function Du(e){let t=Mu.isScalar(e)?e.value:e;if(t&&typeof t==="string")t=Number(t);return typeof t==="number"&&Number.isInteger(t)&&t>=0?t:null}w4.YAMLSeq=WT});var Zo=E(function(v4){var _4=ce(),VT=sn(),S4={collection:"seq",default:!0,nodeClass:VT.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){if(!_4.isSeq(e))t("Expected a sequence for this tag");return e},createNode:(e,t,r)=>VT.YAMLSeq.from(e,t,r)};v4.seq=S4});var Vi=E(function(T4){var x4=qi(),$4={identify:(e)=>typeof e==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(e)=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),x4.stringifyString(e,t,r,n)}};T4.string=$4});var qu=E(function(P4){var ZT=je(),BT={identify:(e)=>e==null,createNode:()=>new ZT.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new ZT.Scalar(null),stringify:({source:e},t)=>typeof e==="string"&&BT.test.test(e)?e:t.options.nullStr};P4.nullTag=BT});var ph=E(function(A4){var I4=je(),KT={identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(e)=>new I4.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&KT.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};A4.boolTag=KT});var Bo=E(function(z4){function C4({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n==="bigint")return String(n);let o=typeof n==="number"?n:Number(n);if(!isFinite(o))return isNaN(o)?".nan":o<0?"-.inf":".inf";let s=Object.is(n,-0)?"-0":JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^-?\d/.test(s)&&!s.includes("e")){let i=s.indexOf(".");if(i<0)i=s.length,s+=".";let a=t-(s.length-i-1);while(a-- >0)s+="0"}return s}z4.stringifyNumber=C4});var mh=E(function(q4){var L4=je(),fh=Bo(),j4={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(e)=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:fh.stringifyNumber},D4={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(e)=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():fh.stringifyNumber(e)}},M4={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new L4.Scalar(parseFloat(e)),r=e.indexOf(".");if(r!==-1&&e[e.length-1]==="0")t.minFractionDigits=e.length-r-1;return t},stringify:fh.stringifyNumber};q4.float=M4;q4.floatExp=D4;q4.floatNaN=j4});var gh=E(function(K4){var HT=Bo(),Fu=(e)=>typeof e==="bigint"||Number.isInteger(e),hh=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function GT(e,t,r){let{value:n}=e;if(Fu(n)&&n>=0)return r+n.toString(t);return HT.stringifyNumber(e)}var V4={identify:(e)=>Fu(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>hh(e,2,8,r),stringify:(e)=>GT(e,8,"0o")},Z4={identify:Fu,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>hh(e,0,10,r),stringify:HT.stringifyNumber},B4={identify:(e)=>Fu(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>hh(e,2,16,r),stringify:(e)=>GT(e,16,"0x")};K4.int=Z4;K4.intHex=B4;K4.intOct=V4});var JT=E(function(n9){var Y4=Vo(),X4=qu(),Q4=Zo(),e9=Vi(),t9=ph(),yh=mh(),wh=gh(),r9=[Y4.map,Q4.seq,e9.string,X4.nullTag,t9.boolTag,wh.intOct,wh.int,wh.intHex,yh.floatNaN,yh.floatExp,yh.float];n9.schema=r9});var XT=E(function(d9){var s9=je(),i9=Vo(),a9=Zo();function YT(e){return typeof e==="bigint"||Number.isInteger(e)}var Uu=({value:e})=>JSON.stringify(e),c9=[{identify:(e)=>typeof e==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(e)=>e,stringify:Uu},{identify:(e)=>e==null,createNode:()=>new s9.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Uu},{identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(e)=>e==="true",stringify:Uu},{identify:YT,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>YT(e)?e.toString():JSON.stringify(e)},{identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(e)=>parseFloat(e),stringify:Uu}],u9={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},l9=[i9.map,a9.seq].concat(c9,u9);d9.schema=l9});var _h=E(function(h9){var Zi=$r("buffer"),bh=je(),f9=qi(),m9={identify:(e)=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Zi.Buffer==="function")return Zi.Buffer.from(e,"base64");else if(typeof atob==="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let o=0;o<r.length;++o)n[o]=r.charCodeAt(o);return n}else return t("This environment does not support reading binary tags; either Buffer or atob is required"),e},stringify({comment:e,type:t,value:r},n,o,s){if(!r)return"";let i=r,a;if(typeof Zi.Buffer==="function")a=i instanceof Zi.Buffer?i.toString("base64"):Zi.Buffer.from(i.buffer).toString("base64");else if(typeof btoa==="function"){let c="";for(let u=0;u<i.length;++u)c+=String.fromCharCode(i[u]);a=btoa(c)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(t??(t=bh.Scalar.BLOCK_LITERAL),t!==bh.Scalar.QUOTE_DOUBLE){let c=Math.max(n.options.lineWidth-n.indent.length,n.options.minContentWidth),u=Math.ceil(a.length/c),l=Array(u);for(let d=0,f=0;d<u;++d,f+=c)l[d]=a.substr(f,c);a=l.join(t===bh.Scalar.BLOCK_LITERAL?`
|
|
78
|
+
`:" ")}return f9.stringifyString({comment:e,type:t,value:a},n,o,s)}};h9.binary=m9});var Vu=E(function(_9){var Wu=ce(),Sh=rn(),y9=je(),w9=sn();function QT(e,t){if(Wu.isSeq(e))for(let r=0;r<e.items.length;++r){let n=e.items[r];if(Wu.isPair(n))continue;else if(Wu.isMap(n)){if(n.items.length>1)t("Each pair must have its own sequence indicator");let o=n.items[0]||new Sh.Pair(new y9.Scalar(null));if(n.commentBefore)o.key.commentBefore=o.key.commentBefore?`${n.commentBefore}
|
|
79
79
|
${o.key.commentBefore}`:n.commentBefore;if(n.comment){let s=o.value??o.key;s.comment=s.comment?`${n.comment}
|
|
80
|
-
${s.comment}`:n.comment}n=o}e.items[r]=Mu.isPair(n)?n:new hh.Pair(n)}else t("Expected a sequence for this tag");return e}function GT(e,t,r){let{replacer:n}=r,o=new l9.YAMLSeq(e);o.tag="tag:yaml.org,2002:pairs";let s=0;if(t&&Symbol.iterator in Object(t))for(let i of t){if(typeof n==="function")i=n.call(t,String(s++),i);let a,c;if(Array.isArray(i))if(i.length===2)a=i[0],c=i[1];else throw TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){let u=Object.keys(i);if(u.length===1)a=u[0],c=i[a];else throw TypeError(`Expected tuple with one key, not ${u.length} keys`)}else a=i;o.items.push(hh.createPair(a,c,r))}return o}var d9={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:HT,createNode:GT};p9.createPairs=GT;p9.pairs=d9;p9.resolvePairs=HT});var yh=E(function(w9){var JT=ce(),gh=Yr(),Vi=rn(),g9=nn(),YT=qu();class Zn extends g9.YAMLSeq{constructor(){super();this.add=Vi.YAMLMap.prototype.add.bind(this),this.delete=Vi.YAMLMap.prototype.delete.bind(this),this.get=Vi.YAMLMap.prototype.get.bind(this),this.has=Vi.YAMLMap.prototype.has.bind(this),this.set=Vi.YAMLMap.prototype.set.bind(this),this.tag=Zn.tag}toJSON(e,t){if(!t)return super.toJSON(e);let r=new Map;if(t?.onCreate)t.onCreate(r);for(let n of this.items){let o,s;if(JT.isPair(n))o=gh.toJS(n.key,"",t),s=gh.toJS(n.value,o,t);else o=gh.toJS(n,"",t);if(r.has(o))throw Error("Ordered maps must not include duplicate keys");r.set(o,s)}return r}static from(e,t,r){let n=YT.createPairs(e,t,r),o=new this;return o.items=n.items,o}}Zn.tag="tag:yaml.org,2002:omap";var y9={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:Zn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=YT.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(JT.isScalar(o))if(n.includes(o.value))t(`Ordered maps must not include duplicate keys: ${o.value}`);else n.push(o.value);return Object.assign(new Zn,r)},createNode:(e,t,r)=>Zn.from(e,t,r)};w9.YAMLOMap=Zn;w9.omap=y9});var rE=E(function(v9){var XT=Le();function QT({value:e,source:t},r){if(t&&(e?eE:tE).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var eE={identify:(e)=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new XT.Scalar(!0),stringify:QT},tE={identify:(e)=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new XT.Scalar(!1),stringify:QT};v9.falseTag=tE;v9.trueTag=eE});var nE=E(function(P9){var x9=Le(),wh=Wo(),$9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(e)=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:wh.stringifyNumber},T9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(e)=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():wh.stringifyNumber(e)}},E9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new x9.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");if(n[n.length-1]==="0")t.minFractionDigits=n.length}return t},stringify:wh.stringifyNumber};P9.float=E9;P9.floatExp=T9;P9.floatNaN=$9});var sE=E(function(L9){var oE=Wo(),Zi=(e)=>typeof e==="bigint"||Number.isInteger(e);function Fu(e,t,r,{intAsBigInt:n}){let o=e[0];if(o==="-"||o==="+")t+=1;if(e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let i=BigInt(e);return o==="-"?BigInt(-1)*i:i}let s=parseInt(e,r);return o==="-"?-1*s:s}function bh(e,t,r){let{value:n}=e;if(Zi(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return oE.stringifyNumber(e)}var R9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>Fu(e,2,2,r),stringify:(e)=>bh(e,2,"0b")},C9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>Fu(e,1,8,r),stringify:(e)=>bh(e,8,"0")},z9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>Fu(e,0,10,r),stringify:oE.stringifyNumber},N9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>Fu(e,2,16,r),stringify:(e)=>bh(e,16,"0x")};L9.int=z9;L9.intBin=R9;L9.intHex=N9;L9.intOct=C9});var _h=E(function(U9){var Vu=ce(),Uu=en(),Wu=rn();class Bn extends Wu.YAMLMap{constructor(e){super(e);this.tag=Bn.tag}add(e){let t;if(Vu.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new Uu.Pair(e.key,null);else t=new Uu.Pair(e,null);if(!Wu.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=Wu.findPair(this.items,e);return!t&&Vu.isPair(r)?Vu.isScalar(r.key)?r.key.value:r.key:r}set(e,t){if(typeof t!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let r=Wu.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new Uu.Pair(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,r){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,r);else throw Error("Set items must all have null values")}static from(e,t,r){let{replacer:n}=r,o=new this(e);if(t&&Symbol.iterator in Object(t))for(let s of t){if(typeof n==="function")s=n.call(t,s,s);o.items.push(Uu.createPair(s,null,r))}return o}}Bn.tag="tag:yaml.org,2002:set";var F9={collection:"map",identify:(e)=>e instanceof Set,nodeClass:Bn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Bn.from(e,t,r),resolve(e,t){if(Vu.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new Bn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};U9.YAMLSet=Bn;U9.set=F9});var Sh=E(function(H9){var Z9=Wo();function vh(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,o=(i)=>t?BigInt(i):Number(i),s=n.replace(/_/g,"").split(":").reduce((i,a)=>i*o(60)+o(a),o(0));return r==="-"?o(-1)*s:s}function iE(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return Z9.stringifyNumber(e);let n="";if(t<0)n="-",t*=r(-1);let o=r(60),s=[t%o];if(t<60)s.unshift(0);else if(t=(t-s[0])/o,s.unshift(t%o),t>=60)t=(t-s[0])/o,s.unshift(t);return n+s.map((i)=>String(i).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var B9={identify:(e)=>typeof e==="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>vh(e,r),stringify:iE},K9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(e)=>vh(e,!1),stringify:iE},aE={identify:(e)=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(aE.test);if(!t)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,o,s,i,a]=t.map(Number),c=t[7]?Number((t[7]+"00").substr(1,3)):0,u=Date.UTC(r,n-1,o,s||0,i||0,a||0,c),l=t[8];if(l&&l!=="Z"){let d=vh(l,!1);if(Math.abs(d)<30)d*=60;u-=60000*d}return new Date(u)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};H9.floatTime=K9;H9.intTime=B9;H9.timestamp=aE});var uE=E(function(cB){var X9=Fo(),Q9=Lu(),eB=Uo(),tB=Ui(),rB=mh(),cE=rE(),kh=nE(),Zu=sE(),nB=Pu(),oB=yh(),sB=qu(),iB=_h(),xh=Sh(),aB=[X9.map,eB.seq,tB.string,Q9.nullTag,cE.trueTag,cE.falseTag,Zu.intBin,Zu.intOct,Zu.int,Zu.intHex,kh.floatNaN,kh.floatExp,kh.float,rB.binary,nB.merge,oB.omap,sB.pairs,iB.set,xh.intTime,xh.floatTime,xh.timestamp];cB.schema=aB});var bE=E(function(yB){var fE=Fo(),lB=Lu(),mE=Uo(),dB=Ui(),pB=ih(),$h=ch(),Th=lh(),fB=ZT(),mB=KT(),hE=mh(),Bi=Pu(),gE=yh(),yE=qu(),lE=uE(),wE=_h(),Bu=Sh(),dE=new Map([["core",fB.schema],["failsafe",[fE.map,mE.seq,dB.string]],["json",mB.schema],["yaml11",lE.schema],["yaml-1.1",lE.schema]]),pE={binary:hE.binary,bool:pB.boolTag,float:$h.float,floatExp:$h.floatExp,floatNaN:$h.floatNaN,floatTime:Bu.floatTime,int:Th.int,intHex:Th.intHex,intOct:Th.intOct,intTime:Bu.intTime,map:fE.map,merge:Bi.merge,null:lB.nullTag,omap:gE.omap,pairs:yE.pairs,seq:mE.seq,set:wE.set,timestamp:Bu.timestamp},hB={"tag:yaml.org,2002:binary":hE.binary,"tag:yaml.org,2002:merge":Bi.merge,"tag:yaml.org,2002:omap":gE.omap,"tag:yaml.org,2002:pairs":yE.pairs,"tag:yaml.org,2002:set":wE.set,"tag:yaml.org,2002:timestamp":Bu.timestamp};function gB(e,t,r){let n=dE.get(t);if(n&&!e)return r&&!n.includes(Bi.merge)?n.concat(Bi.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(dE.keys()).filter((i)=>i!=="yaml11").map((i)=>JSON.stringify(i)).join(", ");throw Error(`Unknown schema "${t}"; use one of ${s} or define customTags array`)}if(Array.isArray(e))for(let s of e)o=o.concat(s);else if(typeof e==="function")o=e(o.slice());if(r)o=o.concat(Bi.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?pE[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(pE).map((l)=>JSON.stringify(l)).join(", ");throw Error(`Unknown custom tag ${c}; use one of ${u}`)}if(!s.includes(a))s.push(a);return s},[])}yB.coreKnownTags=hB;yB.getTags=gB});var Oh=E(function(xB){var Eh=ce(),_B=Fo(),vB=Uo(),SB=Ui(),Ku=bE(),kB=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class Ph{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?Ku.getTags(e,"compat"):e?Ku.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?Ku.coreKnownTags:{},this.tags=Ku.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,Eh.MAP,{value:_B.map}),Object.defineProperty(this,Eh.SCALAR,{value:SB.string}),Object.defineProperty(this,Eh.SEQ,{value:vB.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?kB:null}clone(){let e=Object.create(Ph.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}xB.Schema=Ph});var _E=E(function(PB){var TB=ce(),Ih=Mi(),Ki=Li();function EB(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let c=e.directives.toString(e);if(c)r.push(c),n=!0;else if(e.directives.docStart)n=!0}if(n)r.push("---");let o=Ih.createStringifyContext(e,t),{commentString:s}=o.options;if(e.commentBefore){if(r.length!==1)r.unshift("");let c=s(e.commentBefore);r.unshift(Ki.indentComment(c,""))}let i=!1,a=null;if(e.contents){if(TB.isNode(e.contents)){if(e.contents.spaceBefore&&n)r.push("");if(e.contents.commentBefore){let l=s(e.contents.commentBefore);r.push(Ki.indentComment(l,""))}o.forceBlockIndent=!!e.comment,a=e.contents.comment}let c=a?void 0:()=>i=!0,u=Ih.stringify(e.contents,o,()=>a=null,c);if(a)u+=Ki.lineComment(u,"",s(a));if((u[0]==="|"||u[0]===">")&&r[r.length-1]==="---")r[r.length-1]=`--- ${u}`;else r.push(u)}else r.push(Ih.stringify(e.contents,o));if(e.directives?.docEnd)if(e.comment){let c=s(e.comment);if(c.includes(`
|
|
81
|
-
`))r.push("..."),r.push(
|
|
80
|
+
${s.comment}`:n.comment}n=o}e.items[r]=Wu.isPair(n)?n:new Sh.Pair(n)}else t("Expected a sequence for this tag");return e}function eE(e,t,r){let{replacer:n}=r,o=new w9.YAMLSeq(e);o.tag="tag:yaml.org,2002:pairs";let s=0;if(t&&Symbol.iterator in Object(t))for(let i of t){if(typeof n==="function")i=n.call(t,String(s++),i);let a,c;if(Array.isArray(i))if(i.length===2)a=i[0],c=i[1];else throw TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){let u=Object.keys(i);if(u.length===1)a=u[0],c=i[a];else throw TypeError(`Expected tuple with one key, not ${u.length} keys`)}else a=i;o.items.push(Sh.createPair(a,c,r))}return o}var b9={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:QT,createNode:eE};_9.createPairs=eE;_9.pairs=b9;_9.resolvePairs=QT});var kh=E(function(T9){var tE=ce(),vh=Qr(),Bi=on(),x9=sn(),rE=Vu();class Kn extends x9.YAMLSeq{constructor(){super();this.add=Bi.YAMLMap.prototype.add.bind(this),this.delete=Bi.YAMLMap.prototype.delete.bind(this),this.get=Bi.YAMLMap.prototype.get.bind(this),this.has=Bi.YAMLMap.prototype.has.bind(this),this.set=Bi.YAMLMap.prototype.set.bind(this),this.tag=Kn.tag}toJSON(e,t){if(!t)return super.toJSON(e);let r=new Map;if(t?.onCreate)t.onCreate(r);for(let n of this.items){let o,s;if(tE.isPair(n))o=vh.toJS(n.key,"",t),s=vh.toJS(n.value,o,t);else o=vh.toJS(n,"",t);if(r.has(o))throw Error("Ordered maps must not include duplicate keys");r.set(o,s)}return r}static from(e,t,r){let n=rE.createPairs(e,t,r),o=new this;return o.items=n.items,o}}Kn.tag="tag:yaml.org,2002:omap";var $9={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:Kn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=rE.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(tE.isScalar(o))if(n.includes(o.value))t(`Ordered maps must not include duplicate keys: ${o.value}`);else n.push(o.value);return Object.assign(new Kn,r)},createNode:(e,t,r)=>Kn.from(e,t,r)};T9.YAMLOMap=Kn;T9.omap=$9});var aE=E(function(O9){var nE=je();function oE({value:e,source:t},r){if(t&&(e?sE:iE).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var sE={identify:(e)=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new nE.Scalar(!0),stringify:oE},iE={identify:(e)=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new nE.Scalar(!1),stringify:oE};O9.falseTag=iE;O9.trueTag=sE});var cE=E(function(L9){var R9=je(),xh=Bo(),C9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(e)=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:xh.stringifyNumber},z9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(e)=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():xh.stringifyNumber(e)}},N9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new R9.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");if(n[n.length-1]==="0")t.minFractionDigits=n.length}return t},stringify:xh.stringifyNumber};L9.float=N9;L9.floatExp=z9;L9.floatNaN=C9});var lE=E(function(V9){var uE=Bo(),Ki=(e)=>typeof e==="bigint"||Number.isInteger(e);function Zu(e,t,r,{intAsBigInt:n}){let o=e[0];if(o==="-"||o==="+")t+=1;if(e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let i=BigInt(e);return o==="-"?BigInt(-1)*i:i}let s=parseInt(e,r);return o==="-"?-1*s:s}function $h(e,t,r){let{value:n}=e;if(Ki(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return uE.stringifyNumber(e)}var q9={identify:Ki,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>Zu(e,2,2,r),stringify:(e)=>$h(e,2,"0b")},F9={identify:Ki,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>Zu(e,1,8,r),stringify:(e)=>$h(e,8,"0")},U9={identify:Ki,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>Zu(e,0,10,r),stringify:uE.stringifyNumber},W9={identify:Ki,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>Zu(e,2,16,r),stringify:(e)=>$h(e,16,"0x")};V9.int=U9;V9.intBin=q9;V9.intHex=W9;V9.intOct=F9});var Th=E(function(J9){var Hu=ce(),Bu=rn(),Ku=on();class Hn extends Ku.YAMLMap{constructor(e){super(e);this.tag=Hn.tag}add(e){let t;if(Hu.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new Bu.Pair(e.key,null);else t=new Bu.Pair(e,null);if(!Ku.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=Ku.findPair(this.items,e);return!t&&Hu.isPair(r)?Hu.isScalar(r.key)?r.key.value:r.key:r}set(e,t){if(typeof t!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let r=Ku.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new Bu.Pair(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,r){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,r);else throw Error("Set items must all have null values")}static from(e,t,r){let{replacer:n}=r,o=new this(e);if(t&&Symbol.iterator in Object(t))for(let s of t){if(typeof n==="function")s=n.call(t,s,s);o.items.push(Bu.createPair(s,null,r))}return o}}Hn.tag="tag:yaml.org,2002:set";var G9={collection:"map",identify:(e)=>e instanceof Set,nodeClass:Hn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Hn.from(e,t,r),resolve(e,t){if(Hu.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new Hn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};J9.YAMLSet=Hn;J9.set=G9});var Ph=E(function(rB){var Q9=Bo();function Eh(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,o=(i)=>t?BigInt(i):Number(i),s=n.replace(/_/g,"").split(":").reduce((i,a)=>i*o(60)+o(a),o(0));return r==="-"?o(-1)*s:s}function dE(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return Q9.stringifyNumber(e);let n="";if(t<0)n="-",t*=r(-1);let o=r(60),s=[t%o];if(t<60)s.unshift(0);else if(t=(t-s[0])/o,s.unshift(t%o),t>=60)t=(t-s[0])/o,s.unshift(t);return n+s.map((i)=>String(i).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var eB={identify:(e)=>typeof e==="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>Eh(e,r),stringify:dE},tB={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(e)=>Eh(e,!1),stringify:dE},pE={identify:(e)=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(pE.test);if(!t)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,o,s,i,a]=t.map(Number),c=t[7]?Number((t[7]+"00").substr(1,3)):0,u=Date.UTC(r,n-1,o,s||0,i||0,a||0,c),l=t[8];if(l&&l!=="Z"){let d=Eh(l,!1);if(Math.abs(d)<30)d*=60;u-=60000*d}return new Date(u)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};rB.floatTime=tB;rB.intTime=eB;rB.timestamp=pE});var mE=E(function(gB){var iB=Vo(),aB=qu(),cB=Zo(),uB=Vi(),lB=_h(),fE=aE(),Oh=cE(),Gu=lE(),dB=Ru(),pB=kh(),fB=Vu(),mB=Th(),Ih=Ph(),hB=[iB.map,cB.seq,uB.string,aB.nullTag,fE.trueTag,fE.falseTag,Gu.intBin,Gu.intOct,Gu.int,Gu.intHex,Oh.floatNaN,Oh.floatExp,Oh.float,lB.binary,dB.merge,pB.omap,fB.pairs,mB.set,Ih.intTime,Ih.floatTime,Ih.timestamp];gB.schema=hB});var xE=E(function($B){var wE=Vo(),wB=qu(),bE=Zo(),bB=Vi(),_B=ph(),Ah=mh(),Rh=gh(),SB=JT(),vB=XT(),_E=_h(),Hi=Ru(),SE=kh(),vE=Vu(),hE=mE(),kE=Th(),Ju=Ph(),gE=new Map([["core",SB.schema],["failsafe",[wE.map,bE.seq,bB.string]],["json",vB.schema],["yaml11",hE.schema],["yaml-1.1",hE.schema]]),yE={binary:_E.binary,bool:_B.boolTag,float:Ah.float,floatExp:Ah.floatExp,floatNaN:Ah.floatNaN,floatTime:Ju.floatTime,int:Rh.int,intHex:Rh.intHex,intOct:Rh.intOct,intTime:Ju.intTime,map:wE.map,merge:Hi.merge,null:wB.nullTag,omap:SE.omap,pairs:vE.pairs,seq:bE.seq,set:kE.set,timestamp:Ju.timestamp},kB={"tag:yaml.org,2002:binary":_E.binary,"tag:yaml.org,2002:merge":Hi.merge,"tag:yaml.org,2002:omap":SE.omap,"tag:yaml.org,2002:pairs":vE.pairs,"tag:yaml.org,2002:set":kE.set,"tag:yaml.org,2002:timestamp":Ju.timestamp};function xB(e,t,r){let n=gE.get(t);if(n&&!e)return r&&!n.includes(Hi.merge)?n.concat(Hi.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(gE.keys()).filter((i)=>i!=="yaml11").map((i)=>JSON.stringify(i)).join(", ");throw Error(`Unknown schema "${t}"; use one of ${s} or define customTags array`)}if(Array.isArray(e))for(let s of e)o=o.concat(s);else if(typeof e==="function")o=e(o.slice());if(r)o=o.concat(Hi.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?yE[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(yE).map((l)=>JSON.stringify(l)).join(", ");throw Error(`Unknown custom tag ${c}; use one of ${u}`)}if(!s.includes(a))s.push(a);return s},[])}$B.coreKnownTags=kB;$B.getTags=xB});var Nh=E(function(RB){var Ch=ce(),PB=Vo(),OB=Zo(),IB=Vi(),Yu=xE(),AB=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class zh{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?Yu.getTags(e,"compat"):e?Yu.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?Yu.coreKnownTags:{},this.tags=Yu.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,Ch.MAP,{value:PB.map}),Object.defineProperty(this,Ch.SCALAR,{value:IB.string}),Object.defineProperty(this,Ch.SEQ,{value:OB.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?AB:null}clone(){let e=Object.create(zh.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}RB.Schema=zh});var $E=E(function(LB){var zB=ce(),Lh=Fi(),Gi=Di();function NB(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let c=e.directives.toString(e);if(c)r.push(c),n=!0;else if(e.directives.docStart)n=!0}if(n)r.push("---");let o=Lh.createStringifyContext(e,t),{commentString:s}=o.options;if(e.commentBefore){if(r.length!==1)r.unshift("");let c=s(e.commentBefore);r.unshift(Gi.indentComment(c,""))}let i=!1,a=null;if(e.contents){if(zB.isNode(e.contents)){if(e.contents.spaceBefore&&n)r.push("");if(e.contents.commentBefore){let l=s(e.contents.commentBefore);r.push(Gi.indentComment(l,""))}o.forceBlockIndent=!!e.comment,a=e.contents.comment}let c=a?void 0:()=>i=!0,u=Lh.stringify(e.contents,o,()=>a=null,c);if(a)u+=Gi.lineComment(u,"",s(a));if((u[0]==="|"||u[0]===">")&&r[r.length-1]==="---")r[r.length-1]=`--- ${u}`;else r.push(u)}else r.push(Lh.stringify(e.contents,o));if(e.directives?.docEnd)if(e.comment){let c=s(e.comment);if(c.includes(`
|
|
81
|
+
`))r.push("..."),r.push(Gi.indentComment(c,""));else r.push(`... ${c}`)}else r.push("...");else{let c=e.comment;if(c&&i)c=c.replace(/^\n+/,"");if(c){if((!i||a)&&r[r.length-1]!=="")r.push("");r.push(Gi.indentComment(s(c),""))}}return r.join(`
|
|
82
82
|
`)+`
|
|
83
|
-
`}
|
|
83
|
+
`}LB.stringifyDocument=NB});var Ji=E(function(ZB){var DB=Li(),Ko=$u(),jt=ce(),MB=rn(),qB=Qr(),FB=Nh(),UB=$E(),jh=vu(),WB=rh(),VB=ji(),Dh=th();class Mh{constructor(e,t,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,jt.NODE_TYPE,{value:jt.DOC});let n=null;if(typeof t==="function"||Array.isArray(t))n=t;else if(r===void 0&&t)r=t,t=void 0;let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},r);this.options=o;let{version:s}=o;if(r?._directives){if(this.directives=r._directives.atDocument(),this.directives.yaml.explicit)s=this.directives.yaml.version}else this.directives=new Dh.Directives({version:s});this.setSchema(s,r),this.contents=e===void 0?null:this.createNode(e,n,r)}clone(){let e=Object.create(Mh.prototype,{[jt.NODE_TYPE]:{value:jt.DOC}});if(e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives)e.directives=this.directives.clone();if(e.schema=this.schema.clone(),e.contents=jt.isNode(this.contents)?this.contents.clone(e.schema):this.contents,this.range)e.range=this.range.slice();return e}add(e){if(Ho(this.contents))this.contents.add(e)}addIn(e,t){if(Ho(this.contents))this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let r=jh.anchorNames(this);e.anchor=!t||r.has(t)?jh.findNewAnchor(t||"a",r):t}return new DB.Alias(e.anchor)}createNode(e,t,r){let n=void 0;if(typeof t==="function")e=t.call({"":e},"",e),n=t;else if(Array.isArray(t)){let g=(b)=>typeof b==="number"||b instanceof String||b instanceof Number,y=t.filter(g).map(String);if(y.length>0)t=t.concat(y);n=t}else if(r===void 0&&t)r=t,t=void 0;let{aliasDuplicateObjects:o,anchorPrefix:s,flow:i,keepUndefined:a,onTagObj:c,tag:u}=r??{},{onAnchor:l,setAnchors:d,sourceObjects:f}=jh.createNodeAnchors(this,s||"a"),m={aliasDuplicateObjects:o??!0,keepUndefined:a??!1,onAnchor:l,onTagObj:c,replacer:n,schema:this.schema,sourceObjects:f},h=VB.createNode(e,u,m);if(i&&jt.isCollection(h))h.flow=!0;return d(),h}createPair(e,t,r={}){let n=this.createNode(e,null,r),o=this.createNode(t,null,r);return new MB.Pair(n,o)}delete(e){return Ho(this.contents)?this.contents.delete(e):!1}deleteIn(e){if(Ko.isEmptyPath(e)){if(this.contents==null)return!1;return this.contents=null,!0}return Ho(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return jt.isCollection(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){if(Ko.isEmptyPath(e))return!t&&jt.isScalar(this.contents)?this.contents.value:this.contents;return jt.isCollection(this.contents)?this.contents.getIn(e,t):void 0}has(e){return jt.isCollection(this.contents)?this.contents.has(e):!1}hasIn(e){if(Ko.isEmptyPath(e))return this.contents!==void 0;return jt.isCollection(this.contents)?this.contents.hasIn(e):!1}set(e,t){if(this.contents==null)this.contents=Ko.collectionFromPath(this.schema,[e],t);else if(Ho(this.contents))this.contents.set(e,t)}setIn(e,t){if(Ko.isEmptyPath(e))this.contents=t;else if(this.contents==null)this.contents=Ko.collectionFromPath(this.schema,Array.from(e),t);else if(Ho(this.contents))this.contents.setIn(e,t)}setSchema(e,t={}){if(typeof e==="number")e=String(e);let r;switch(e){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new Dh.Directives({version:"1.1"});r={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=e;else this.directives=new Dh.Directives({version:e});r={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;r=null;break;default:{let n=JSON.stringify(e);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${n}`)}}if(t.schema instanceof Object)this.schema=t.schema;else if(r)this.schema=new FB.Schema(Object.assign(r,t));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:t,mapAsMap:r,maxAliasCount:n,onAnchor:o,reviver:s}={}){let i={anchors:new Map,doc:this,keep:!e,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n==="number"?n:100},a=qB.toJS(this.contents,t??"",i);if(typeof o==="function")for(let{count:c,res:u}of i.anchors.values())o(u,c);return typeof s==="function"?WB.applyReviver(s,{"":a},"",a):a}toJSON(e,t){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:t})}toString(e={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){let t=JSON.stringify(e.indent);throw Error(`"indent" option must be a positive integer, not ${t}`)}return UB.stringifyDocument(this,e)}}function Ho(e){if(jt.isCollection(e))return!0;throw Error("Expected a YAML collection as document contents")}ZB.Document=Mh});var Yi=E(function(HB){class Xu extends Error{constructor(e,t,r,n){super();this.name=e,this.code=r,this.message=n,this.pos=t}}class TE extends Xu{constructor(e,t,r){super("YAMLParseError",e,t,r)}}class EE extends Xu{constructor(e,t,r){super("YAMLWarning",e,t,r)}}var KB=(e,t)=>(r)=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map((a)=>t.linePos(a));let{line:n,col:o}=r.linePos[0];r.message+=` at line ${n}, column ${o}`;let s=o-1,i=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(s>=60&&i.length>80){let a=Math.min(s-39,i.length-79);i="…"+i.substring(a),s-=a-1}if(i.length>80)i=i.substring(0,79)+"…";if(n>1&&/^ *$/.test(i.substring(0,s))){let a=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);if(a.length>80)a=a.substring(0,79)+`…
|
|
84
84
|
`;i=a+i}if(/[^ ]/.test(i)){let a=1,c=r.linePos[1];if(c?.line===n&&c.col>o)a=Math.max(1,Math.min(c.col-o,80-s));let u=" ".repeat(s)+"^".repeat(a);r.message+=`:
|
|
85
85
|
|
|
86
86
|
${i}
|
|
87
87
|
${u}
|
|
88
|
-
`}};
|
|
89
|
-
`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(
|
|
90
|
-
`+g.comment;else a.comment=g.comment;continue}if(g.newlineAfterProp||
|
|
91
|
-
`+
|
|
92
|
-
`+
|
|
93
|
-
`+x;else A.comment=x;
|
|
94
|
-
`+
|
|
95
|
-
`+y.comment;else u.comment=y.comment;u.range=[n.offset,g,y.offset]}else u.range=[n.offset,g,g];return u}
|
|
88
|
+
`}};HB.YAMLError=Xu;HB.YAMLParseError=TE;HB.YAMLWarning=EE;HB.prettifyError=KB});var Xi=E(function(eK){function QB(e,{flow:t,indicator:r,next:n,offset:o,onError:s,parentIndent:i,startOnNewline:a}){let c=!1,u=a,l=a,d="",f="",m=!1,h=!1,g=null,y=null,b=null,T=null,k=null,I=null,_=null;for(let A of e){if(h){if(A.type!=="space"&&A.type!=="newline"&&A.type!=="comma")s(A.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");h=!1}if(g){if(u&&A.type!=="comment"&&A.type!=="newline")s(g,"TAB_AS_INDENT","Tabs are not allowed as indentation");g=null}switch(A.type){case"space":if(!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&A.source.includes("\t"))g=A;l=!0;break;case"comment":{if(!l)s(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let D=A.source.substring(1)||" ";if(!d)d=D;else d+=f+D;f="",u=!1;break}case"newline":if(u){if(d)d+=A.source;else if(!I||r!=="seq-item-ind")c=!0}else f+=A.source;if(u=!0,m=!0,y||b)T=A;l=!0;break;case"anchor":if(y)s(A,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(A.source.endsWith(":"))s(A.offset+A.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);y=A,_??(_=A.offset),u=!1,l=!1,h=!0;break;case"tag":{if(b)s(A,"MULTIPLE_TAGS","A node can have at most one tag");b=A,_??(_=A.offset),u=!1,l=!1,h=!0;break}case r:if(y||b)s(A,"BAD_PROP_ORDER",`Anchors and tags must be after the ${A.source} indicator`);if(I)s(A,"UNEXPECTED_TOKEN",`Unexpected ${A.source} in ${t??"collection"}`);I=A,u=r==="seq-item-ind"||r==="explicit-key-ind",l=!1;break;case"comma":if(t){if(k)s(A,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`);k=A,u=!1,l=!1;break}default:s(A,"UNEXPECTED_TOKEN",`Unexpected ${A.type} token`),u=!1,l=!1}}let S=e[e.length-1],x=S?S.offset+S.source.length:o;if(h&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!==""))s(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(g&&(u&&g.indent<=i||n?.type==="block-map"||n?.type==="block-seq"))s(g,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:k,found:I,spaceBefore:c,comment:d,hasNewline:m,anchor:y,tag:b,newlineAfterProp:T,end:x,start:_??x}}eK.resolveProps=QB});var Qu=E(function(rK){function qh(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(`
|
|
89
|
+
`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(qh(t.key)||qh(t.value))return!0}return!1;default:return!0}}rK.containsNewline=qh});var Fh=E(function(iK){var oK=Qu();function sK(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];if(n.indent===e&&(n.source==="]"||n.source==="}")&&oK.containsNewline(t))r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}iK.flowIndentCheck=sK});var Uh=E(function(uK){var PE=ce();function cK(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let o=typeof n==="function"?n:(s,i)=>s===i||PE.isScalar(s)&&PE.isScalar(i)&&s.value===i.value;return t.some((s)=>o(s.key,r))}uK.mapIncludes=cK});var CE=E(function(hK){var OE=rn(),dK=on(),IE=Xi(),pK=Qu(),AE=Fh(),fK=Uh(),RE="All mapping items must start at the same column";function mK({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??dK.YAMLMap)(r.schema);if(r.atRoot)r.atRoot=!1;let c=n.offset,u=null;for(let l of n.items){let{start:d,key:f,sep:m,value:h}=l,g=IE.resolveProps(d,{indicator:"explicit-key-ind",next:f??m?.[0],offset:c,onError:o,parentIndent:n.indent,startOnNewline:!0}),y=!g.found;if(y){if(f){if(f.type==="block-seq")o(c,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in f&&f.indent!==n.indent)o(c,"BAD_INDENT",RE)}if(!g.anchor&&!g.tag&&!m){if(u=g.end,g.comment)if(a.comment)a.comment+=`
|
|
90
|
+
`+g.comment;else a.comment=g.comment;continue}if(g.newlineAfterProp||pK.containsNewline(f))o(f??d[d.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(g.found?.indent!==n.indent)o(c,"BAD_INDENT",RE);r.atKey=!0;let b=g.end,T=f?e(r,f,g,o):t(r,b,d,null,g,o);if(r.schema.compat)AE.flowIndentCheck(n.indent,f,o);if(r.atKey=!1,fK.mapIncludes(r,a.items,T))o(b,"DUPLICATE_KEY","Map keys must be unique");let k=IE.resolveProps(m??[],{indicator:"map-value-ind",next:h,offset:T.range[2],onError:o,parentIndent:n.indent,startOnNewline:!f||f.type==="block-scalar"});if(c=k.end,k.found){if(y){if(h?.type==="block-map"&&!k.hasNewline)o(c,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(r.options.strict&&g.start<k.found.offset-1024)o(T.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let I=h?e(r,h,k,o):t(r,c,m,null,k,o);if(r.schema.compat)AE.flowIndentCheck(n.indent,h,o);c=I.range[2];let _=new OE.Pair(T,I);if(r.options.keepSourceTokens)_.srcToken=l;a.items.push(_)}else{if(y)o(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(k.comment)if(T.comment)T.comment+=`
|
|
91
|
+
`+k.comment;else T.comment=k.comment;let I=new OE.Pair(T);if(r.options.keepSourceTokens)I.srcToken=l;a.items.push(I)}}if(u&&u<c)o(u,"IMPOSSIBLE","Map comment with trailing content");return a.range=[n.offset,c,u??c],a}hK.resolveBlockMap=mK});var zE=E(function(SK){var yK=sn(),wK=Xi(),bK=Fh();function _K({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??yK.YAMLSeq)(r.schema);if(r.atRoot)r.atRoot=!1;if(r.atKey)r.atKey=!1;let c=n.offset,u=null;for(let{start:l,value:d}of n.items){let f=wK.resolveProps(l,{indicator:"seq-item-ind",next:d,offset:c,onError:o,parentIndent:n.indent,startOnNewline:!0});if(!f.found)if(f.anchor||f.tag||d)if(d?.type==="block-seq")o(f.end,"BAD_INDENT","All sequence items must start at the same column");else o(c,"MISSING_CHAR","Sequence item without - indicator");else{if(u=f.end,f.comment)a.comment=f.comment;continue}let m=d?e(r,d,f,o):t(r,f.end,l,null,f,o);if(r.schema.compat)bK.flowIndentCheck(n.indent,d,o);c=m.range[2],a.items.push(m)}return a.range=[n.offset,c,u??c],a}SK.resolveBlockSeq=_K});var Go=E(function(xK){function kK(e,t,r,n){let o="";if(e){let s=!1,i="";for(let a of e){let{source:c,type:u}=a;switch(u){case"space":s=!0;break;case"comment":{if(r&&!s)n(a,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let l=c.substring(1)||" ";if(!o)o=l;else o+=i+l;i="";break}case"newline":if(o)i+=c;s=!0;break;default:n(a,"UNEXPECTED_TOKEN",`Unexpected ${u} at node end`)}t+=c.length}}return{comment:o,offset:t}}xK.resolveEnd=kK});var jE=E(function(CK){var TK=ce(),EK=rn(),NE=on(),PK=sn(),OK=Go(),LE=Xi(),IK=Qu(),AK=Uh(),Wh="Block collections are not allowed within flow collections",Vh=(e)=>e&&(e.type==="block-map"||e.type==="block-seq");function RK({composeNode:e,composeEmptyNode:t},r,n,o,s){let i=n.start.source==="{",a=i?"flow map":"flow sequence",u=new(s?.nodeClass??(i?NE.YAMLMap:PK.YAMLSeq))(r.schema);u.flow=!0;let l=r.atRoot;if(l)r.atRoot=!1;if(r.atKey)r.atKey=!1;let d=n.offset+n.start.source.length;for(let y=0;y<n.items.length;++y){let b=n.items[y],{start:T,key:k,sep:I,value:_}=b,S=LE.resolveProps(T,{flow:a,indicator:"explicit-key-ind",next:k??I?.[0],offset:d,onError:o,parentIndent:n.indent,startOnNewline:!1});if(!S.found){if(!S.anchor&&!S.tag&&!I&&!_){if(y===0&&S.comma)o(S.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`);else if(y<n.items.length-1)o(S.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${a}`);if(S.comment)if(u.comment)u.comment+=`
|
|
92
|
+
`+S.comment;else u.comment=S.comment;d=S.end;continue}if(!i&&r.options.strict&&IK.containsNewline(k))o(k,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(y===0){if(S.comma)o(S.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`)}else{if(!S.comma)o(S.start,"MISSING_CHAR",`Missing , between ${a} items`);if(S.comment){let x="";e:for(let A of T)switch(A.type){case"comma":case"space":break;case"comment":x=A.source.substring(1);break e;default:break e}if(x){let A=u.items[u.items.length-1];if(TK.isPair(A))A=A.value??A.key;if(A.comment)A.comment+=`
|
|
93
|
+
`+x;else A.comment=x;S.comment=S.comment.substring(x.length+1)}}}if(!i&&!I&&!S.found){let x=_?e(r,_,S,o):t(r,S.end,I,null,S,o);if(u.items.push(x),d=x.range[2],Vh(_))o(x.range,"BLOCK_IN_FLOW",Wh)}else{r.atKey=!0;let x=S.end,A=k?e(r,k,S,o):t(r,x,T,null,S,o);if(Vh(k))o(A.range,"BLOCK_IN_FLOW",Wh);r.atKey=!1;let D=LE.resolveProps(I??[],{flow:a,indicator:"map-value-ind",next:_,offset:A.range[2],onError:o,parentIndent:n.indent,startOnNewline:!1});if(D.found){if(!i&&!S.found&&r.options.strict){if(I)for(let ae of I){if(ae===D.found)break;if(ae.type==="newline"){o(ae,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(S.start<D.found.offset-1024)o(D.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(_)if("source"in _&&_.source?.[0]===":")o(_,"MISSING_CHAR",`Missing space after : in ${a}`);else o(D.start,"MISSING_CHAR",`Missing , or : between ${a} items`);let Y=_?e(r,_,D,o):D.found?t(r,D.end,I,null,D,o):null;if(Y){if(Vh(_))o(Y.range,"BLOCK_IN_FLOW",Wh)}else if(D.comment)if(A.comment)A.comment+=`
|
|
94
|
+
`+D.comment;else A.comment=D.comment;let ie=new EK.Pair(A,Y);if(r.options.keepSourceTokens)ie.srcToken=b;if(i){let ae=u;if(AK.mapIncludes(r,ae.items,A))o(x,"DUPLICATE_KEY","Map keys must be unique");ae.items.push(ie)}else{let ae=new NE.YAMLMap(r.schema);ae.flow=!0,ae.items.push(ie);let qe=(Y??A).range;ae.range=[A.range[0],qe[1],qe[2]],u.items.push(ae)}d=Y?Y.range[2]:D.end}}let f=i?"}":"]",[m,...h]=n.end,g=d;if(m?.source===f)g=m.offset+m.source.length;else{let y=a[0].toUpperCase()+a.substring(1),b=l?`${y} must end with a ${f}`:`${y} in block collection must be sufficiently indented and end with a ${f}`;if(o(d,l?"MISSING_CHAR":"BAD_INDENT",b),m&&m.source.length!==1)h.unshift(m)}if(h.length>0){let y=OK.resolveEnd(h,g,r.options.strict,o);if(y.comment)if(u.comment)u.comment+=`
|
|
95
|
+
`+y.comment;else u.comment=y.comment;u.range=[n.offset,g,y.offset]}else u.range=[n.offset,g,g];return u}CK.resolveFlowCollection=RK});var DE=E(function(WK){var NK=ce(),LK=je(),jK=on(),DK=sn(),MK=CE(),qK=zE(),FK=jE();function Zh(e,t,r,n,o,s){let i=r.type==="block-map"?MK.resolveBlockMap(e,t,r,n,s):r.type==="block-seq"?qK.resolveBlockSeq(e,t,r,n,s):FK.resolveFlowCollection(e,t,r,n,s),a=i.constructor;if(o==="!"||o===a.tagName)return i.tag=a.tagName,i;if(o)i.tag=o;return i}function UK(e,t,r,n,o){let s=n.tag,i=!s?null:t.directives.tagName(s.source,(f)=>o(s,"TAG_RESOLVE_FAILED",f));if(r.type==="block-seq"){let{anchor:f,newlineAfterProp:m}=n,h=f&&s?f.offset>s.offset?f:s:f??s;if(h&&(!m||m.offset<h.offset))o(h,"MISSING_CHAR","Missing newline after block sequence props")}let a=r.type==="block-map"?"map":r.type==="block-seq"?"seq":r.start.source==="{"?"map":"seq";if(!s||!i||i==="!"||i===jK.YAMLMap.tagName&&a==="map"||i===DK.YAMLSeq.tagName&&a==="seq")return Zh(e,t,r,o,i);let c=t.schema.tags.find((f)=>f.tag===i&&f.collection===a);if(!c){let f=t.schema.knownTags[i];if(f?.collection===a)t.schema.tags.push(Object.assign({},f,{default:!1})),c=f;else{if(f)o(s,"BAD_COLLECTION_TYPE",`${f.tag} used for ${a} collection, but expects ${f.collection??"scalar"}`,!0);else o(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${i}`,!0);return Zh(e,t,r,o,i)}}let u=Zh(e,t,r,o,i,c),l=c.resolve?.(u,(f)=>o(s,"TAG_RESOLVE_FAILED",f),t.options)??u,d=NK.isNode(l)?l:new LK.Scalar(l);if(d.range=u.range,d.tag=i,c?.format)d.format=c.format;return d}WK.composeCollection=UK});var Kh=E(function(HK){var Bh=je();function ZK(e,t,r){let n=t.offset,o=BK(t,e.options.strict,r);if(!o)return{value:"",type:null,comment:"",range:[n,n,n]};let s=o.mode===">"?Bh.Scalar.BLOCK_FOLDED:Bh.Scalar.BLOCK_LITERAL,i=t.source?KK(t.source):[],a=i.length;for(let g=i.length-1;g>=0;--g){let y=i[g][1];if(y===""||y==="\r")a=g;else break}if(a===0){let g=o.chomp==="+"&&i.length>0?`
|
|
96
96
|
`.repeat(Math.max(1,i.length-1)):"",y=n+o.length;if(t.source)y+=t.source.length;return{value:g,type:s,comment:o.comment,range:[n,y,y]}}let c=t.indent+o.indent,u=t.offset+o.length,l=0;for(let g=0;g<a;++g){let[y,b]=i[g];if(b===""||b==="\r"){if(o.indent===0&&y.length>c)c=y.length}else{if(y.length<c)r(u+y.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(o.indent===0)c=y.length;if(l=g,c===0&&!e.atRoot)r(u,"BAD_INDENT","Block scalar values in collections must be indented");break}u+=y.length+b.length+1}for(let g=i.length-1;g>=a;--g)if(i[g][0].length>c)a=g+1;let d="",f="",m=!1;for(let g=0;g<l;++g)d+=i[g][0].slice(c)+`
|
|
97
|
-
`;for(let g=l;g<a;++g){let[y,b]=i[g];u+=y.length+b.length+1;let T=b[b.length-1]==="\r";if(T)b=b.slice(0,-1);if(b&&y.length<c){let I=`Block scalar lines must not be less indented than their ${o.indent?"explicit indentation indicator":"first line"}`;r(u-b.length-(T?2:1),"BAD_INDENT",I),y=""}if(s===
|
|
97
|
+
`;for(let g=l;g<a;++g){let[y,b]=i[g];u+=y.length+b.length+1;let T=b[b.length-1]==="\r";if(T)b=b.slice(0,-1);if(b&&y.length<c){let I=`Block scalar lines must not be less indented than their ${o.indent?"explicit indentation indicator":"first line"}`;r(u-b.length-(T?2:1),"BAD_INDENT",I),y=""}if(s===Bh.Scalar.BLOCK_LITERAL)d+=f+y.slice(c)+b,f=`
|
|
98
98
|
`;else if(y.length>c||b[0]==="\t"){if(f===" ")f=`
|
|
99
99
|
`;else if(!m&&f===`
|
|
100
100
|
`)f=`
|
|
@@ -107,99 +107,99 @@ ${u}
|
|
|
107
107
|
`+i[g][0].slice(c);if(d[d.length-1]!==`
|
|
108
108
|
`)d+=`
|
|
109
109
|
`;break;default:d+=`
|
|
110
|
-
`}let h=n+o.length+t.source.length;return{value:d,type:s,comment:o.comment,range:[n,h,h]}}function
|
|
110
|
+
`}let h=n+o.length+t.source.length;return{value:d,type:s,comment:o.comment,range:[n,h,h]}}function BK({offset:e,props:t},r,n){if(t[0].type!=="block-scalar-header")return n(t[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:o}=t[0],s=o[0],i=0,a="",c=-1;for(let f=1;f<o.length;++f){let m=o[f];if(!a&&(m==="-"||m==="+"))a=m;else{let h=Number(m);if(!i&&h)i=h;else if(c===-1)c=e+f}}if(c!==-1)n(c,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${o}`);let u=!1,l="",d=o.length;for(let f=1;f<t.length;++f){let m=t[f];switch(m.type){case"space":u=!0;case"newline":d+=m.source.length;break;case"comment":if(r&&!u)n(m,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");d+=m.source.length,l=m.source.substring(1);break;case"error":n(m,"UNEXPECTED_TOKEN",m.message),d+=m.source.length;break;default:{let h=`Unexpected token in block scalar header: ${m.type}`;n(m,"UNEXPECTED_TOKEN",h);let g=m.source;if(g&&typeof g==="string")d+=g.length}}}return{mode:s,indent:i,chomp:a,comment:l,length:d}}function KK(e){let t=e.split(/\n( *)/),r=t[0],n=r.match(/^( *)/),s=[n?.[1]?[n[1],r.slice(n[1].length)]:["",r]];for(let i=1;i<t.length;i+=2)s.push([t[i],t[i+1]]);return s}HK.resolveBlockScalar=ZK});var Gh=E(function(oH){var Hh=je(),JK=Go();function YK(e,t,r){let{offset:n,type:o,source:s,end:i}=e,a,c,u=(f,m,h)=>r(n+f,m,h);switch(o){case"scalar":a=Hh.Scalar.PLAIN,c=XK(s,u);break;case"single-quoted-scalar":a=Hh.Scalar.QUOTE_SINGLE,c=QK(s,u);break;case"double-quoted-scalar":a=Hh.Scalar.QUOTE_DOUBLE,c=eH(s,u);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${o}`),{value:"",type:null,comment:"",range:[n,n+s.length,n+s.length]}}let l=n+s.length,d=JK.resolveEnd(i,l,t,r);return{value:c,type:a,comment:d.comment,range:[n,l,d.offset]}}function XK(e,t){let r="";switch(e[0]){case"\t":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}if(r)t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`);return ME(e)}function QK(e,t){if(e[e.length-1]!=="'"||e.length===1)t(e.length,"MISSING_CHAR","Missing closing 'quote");return ME(e.slice(1,-1)).replace(/''/g,"'")}function ME(e){let t,r;try{t=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
111
111
|
`,"sy"),r=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
112
112
|
`,"sy")}catch{t=/(.*?)[ \t]*\r?\n/sy,r=/[ \t]*(.*?)[ \t]*\r?\n/sy}let n=t.exec(e);if(!n)return e;let o=n[1],s=" ",i=t.lastIndex;r.lastIndex=i;while(n=r.exec(e)){if(n[1]==="")if(s===`
|
|
113
113
|
`)o+=s;else s=`
|
|
114
|
-
`;else o+=s+n[1],s=" ";i=r.lastIndex}let a=/[ \t]*(.*)/sy;return a.lastIndex=i,n=a.exec(e),o+s+(n?.[1]??"")}function
|
|
114
|
+
`;else o+=s+n[1],s=" ";i=r.lastIndex}let a=/[ \t]*(.*)/sy;return a.lastIndex=i,n=a.exec(e),o+s+(n?.[1]??"")}function eH(e,t){let r="";for(let n=1;n<e.length-1;++n){let o=e[n];if(o==="\r"&&e[n+1]===`
|
|
115
115
|
`)continue;if(o===`
|
|
116
|
-
`){let{fold:s,offset:i}=
|
|
116
|
+
`){let{fold:s,offset:i}=tH(e,n);r+=s,n=i}else if(o==="\\"){let s=e[++n],i=rH[s];if(i)r+=i;else if(s===`
|
|
117
117
|
`){s=e[n+1];while(s===" "||s==="\t")s=e[++n+1]}else if(s==="\r"&&e[n+1]===`
|
|
118
|
-
`){s=e[++n+1];while(s===" "||s==="\t")s=e[++n+1]}else if(s==="x"||s==="u"||s==="U"){let a=s==="x"?2:s==="u"?4:8;r+=
|
|
118
|
+
`){s=e[++n+1];while(s===" "||s==="\t")s=e[++n+1]}else if(s==="x"||s==="u"||s==="U"){let a=s==="x"?2:s==="u"?4:8;r+=nH(e,n+1,a,t),n+=a}else{let a=e.substr(n-1,2);t(n-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${a}`),r+=a}}else if(o===" "||o==="\t"){let s=n,i=e[n+1];while(i===" "||i==="\t")i=e[++n+1];if(i!==`
|
|
119
119
|
`&&!(i==="\r"&&e[n+2]===`
|
|
120
|
-
`))r+=n>s?e.slice(s,n+1):o}else r+=o}if(e[e.length-1]!=='"'||e.length===1)t(e.length,"MISSING_CHAR",'Missing closing "quote');return r}function
|
|
120
|
+
`))r+=n>s?e.slice(s,n+1):o}else r+=o}if(e[e.length-1]!=='"'||e.length===1)t(e.length,"MISSING_CHAR",'Missing closing "quote');return r}function tH(e,t){let r="",n=e[t+1];while(n===" "||n==="\t"||n===`
|
|
121
121
|
`||n==="\r"){if(n==="\r"&&e[t+2]!==`
|
|
122
122
|
`)break;if(n===`
|
|
123
123
|
`)r+=`
|
|
124
|
-
`;t+=1,n=e[t+1]}if(!r)r=" ";return{fold:r,offset:t}}var
|
|
125
|
-
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
124
|
+
`;t+=1,n=e[t+1]}if(!r)r=" ";return{fold:r,offset:t}}var rH={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
125
|
+
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function nH(e,t,r,n){let o=e.substr(t,r),i=o.length===r&&/^[0-9a-fA-F]+$/.test(o)?parseInt(o,16):NaN;try{return String.fromCodePoint(i)}catch{let a=e.substr(t-2,r+2);return n(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${a}`),a}}oH.resolveFlowScalar=YK});var FE=E(function(dH){var Gn=ce(),qE=je(),iH=Kh(),aH=Gh();function cH(e,t,r,n){let{value:o,type:s,comment:i,range:a}=t.type==="block-scalar"?iH.resolveBlockScalar(e,t,n):aH.resolveFlowScalar(t,e.options.strict,n),c=r?e.directives.tagName(r.source,(d)=>n(r,"TAG_RESOLVE_FAILED",d)):null,u;if(e.options.stringKeys&&e.atKey)u=e.schema[Gn.SCALAR];else if(c)u=uH(e.schema,o,c,r,n);else if(t.type==="scalar")u=lH(e,o,t,n);else u=e.schema[Gn.SCALAR];let l;try{let d=u.resolve(o,(f)=>n(r??t,"TAG_RESOLVE_FAILED",f),e.options);l=Gn.isScalar(d)?d:new qE.Scalar(d)}catch(d){let f=d instanceof Error?d.message:String(d);n(r??t,"TAG_RESOLVE_FAILED",f),l=new qE.Scalar(o)}if(l.range=a,l.source=o,s)l.type=s;if(c)l.tag=c;if(u.format)l.format=u.format;if(i)l.comment=i;return l}function uH(e,t,r,n,o){if(r==="!")return e[Gn.SCALAR];let s=[];for(let a of e.tags)if(!a.collection&&a.tag===r)if(a.default&&a.test)s.push(a);else return a;for(let a of s)if(a.test?.test(t))return a;let i=e.knownTags[r];if(i&&!i.collection)return e.tags.push(Object.assign({},i,{default:!1,test:void 0})),i;return o(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[Gn.SCALAR]}function lH({atKey:e,directives:t,schema:r},n,o,s){let i=r.tags.find((a)=>(a.default===!0||e&&a.default==="key")&&a.test?.test(n))||r[Gn.SCALAR];if(r.compat){let a=r.compat.find((c)=>c.default&&c.test?.test(n))??r[Gn.SCALAR];if(i.tag!==a.tag){let c=t.tagString(i.tag),u=t.tagString(a.tag),l=`Value may be parsed as either ${c} or ${u}`;s(o,"TAG_RESOLVE_FAILED",l,!0)}}return i}dH.composeScalar=cH});var UE=E(function(mH){function fH(e,t,r){if(t){r??(r=t.length);for(let n=r-1;n>=0;--n){let o=t[n];switch(o.type){case"space":case"comment":case"newline":e-=o.source.length;continue}o=t[++n];while(o?.type==="space")e+=o.source.length,o=t[++n];break}}return e}mH.emptyScalarPosition=fH});var ZE=E(function(kH){var gH=Li(),yH=ce(),wH=DE(),WE=FE(),bH=Go(),_H=UE(),SH={composeNode:VE,composeEmptyNode:Jh};function VE(e,t,r,n){let o=e.atKey,{spaceBefore:s,comment:i,anchor:a,tag:c}=r,u,l=!0;switch(t.type){case"alias":if(u=vH(e,t,n),a||c)n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(u=WE.composeScalar(e,t,c,n),a)u.anchor=a.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if(u=wH.composeCollection(SH,e,t,r,n),a)u.anchor=a.source.substring(1)}catch(d){let f=d instanceof Error?d.message:String(d);n(t,"RESOURCE_EXHAUSTION",f)}break;default:{let d=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",d),l=!1}}if(u??(u=Jh(e,t.offset,void 0,null,r,n)),a&&u.anchor==="")n(a,"BAD_ALIAS","Anchor cannot be an empty string");if(o&&e.options.stringKeys&&(!yH.isScalar(u)||typeof u.value!=="string"||u.tag&&u.tag!=="tag:yaml.org,2002:str"))n(c??t,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(s)u.spaceBefore=!0;if(i)if(t.type==="scalar"&&t.source==="")u.comment=i;else u.commentBefore=i;if(e.options.keepSourceTokens&&l)u.srcToken=t;return u}function Jh(e,t,r,n,{spaceBefore:o,comment:s,anchor:i,tag:a,end:c},u){let l={type:"scalar",offset:_H.emptyScalarPosition(t,r,n),indent:-1,source:""},d=WE.composeScalar(e,l,a,u);if(i){if(d.anchor=i.source.substring(1),d.anchor==="")u(i,"BAD_ALIAS","Anchor cannot be an empty string")}if(o)d.spaceBefore=!0;if(s)d.comment=s,d.range[2]=c;return d}function vH({options:e},{offset:t,source:r,end:n},o){let s=new gH.Alias(r.substring(1));if(s.source==="")o(t,"BAD_ALIAS","Alias cannot be an empty string");if(s.source.endsWith(":"))o(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let i=t+r.length,a=bH.resolveEnd(n,i,e.strict,o);if(s.range=[t,i,a.offset],a.comment)s.comment=a.comment;return s}kH.composeEmptyNode=Jh;kH.composeNode=VE});var KE=E(function(IH){var TH=Ji(),BE=ZE(),EH=Go(),PH=Xi();function OH(e,t,{offset:r,start:n,value:o,end:s},i){let a=Object.assign({_directives:t},e),c=new TH.Document(void 0,a),u={atKey:!1,atRoot:!0,directives:c.directives,options:c.options,schema:c.schema},l=PH.resolveProps(n,{indicator:"doc-start",next:o??s?.[0],offset:r,onError:i,parentIndent:0,startOnNewline:!0});if(l.found){if(c.directives.docStart=!0,o&&(o.type==="block-map"||o.type==="block-seq")&&!l.hasNewline)i(l.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}c.contents=o?BE.composeNode(u,o,l,i):BE.composeEmptyNode(u,l.end,n,null,l,i);let d=c.contents.range[2],f=EH.resolveEnd(s,d,!1,i);if(f.comment)c.comment=f.comment;return c.range=[r,d,f.offset],c}IH.composeDoc=OH});var Yh=E(function(jH){var RH=$r("process"),CH=th(),zH=Ji(),Qi=Yi(),HE=ce(),NH=KE(),LH=Go();function ea(e){if(typeof e==="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r==="string"?r.length:1)]}function GE(e){let t="",r=!1,n=!1;for(let o=0;o<e.length;++o){let s=e[o];switch(s[0]){case"#":t+=(t===""?"":n?`
|
|
126
126
|
|
|
127
127
|
`:`
|
|
128
|
-
`)+(s.substring(1)||" "),r=!0,n=!1;break;case"%":if(e[o+1]?.[0]!=="#")o+=1;r=!1;break;default:if(!r)n=!0;r=!1}}return{comment:t,afterEmptyLine:n}}class
|
|
129
|
-
${r}`:r;else if(n||e.directives.docStart||!o)e.commentBefore=r;else if(
|
|
128
|
+
`)+(s.substring(1)||" "),r=!0,n=!1;break;case"%":if(e[o+1]?.[0]!=="#")o+=1;r=!1;break;default:if(!r)n=!0;r=!1}}return{comment:t,afterEmptyLine:n}}class JE{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(t,r,n,o)=>{let s=ea(t);if(o)this.warnings.push(new Qi.YAMLWarning(s,r,n));else this.errors.push(new Qi.YAMLParseError(s,r,n))},this.directives=new CH.Directives({version:e.version||"1.2"}),this.options=e}decorate(e,t){let{comment:r,afterEmptyLine:n}=GE(this.prelude);if(r){let o=e.contents;if(t)e.comment=e.comment?`${e.comment}
|
|
129
|
+
${r}`:r;else if(n||e.directives.docStart||!o)e.commentBefore=r;else if(HE.isCollection(o)&&!o.flow&&o.items.length>0){let s=o.items[0];if(HE.isPair(s))s=s.key;let i=s.commentBefore;s.commentBefore=i?`${r}
|
|
130
130
|
${i}`:r}else{let s=o.commentBefore;o.commentBefore=s?`${r}
|
|
131
|
-
${s}`:r}}if(t){for(let o=0;o<this.errors.length;++o)e.errors.push(this.errors[o]);for(let o=0;o<this.warnings.length;++o)e.warnings.push(this.warnings[o])}else e.errors=this.errors,e.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:
|
|
132
|
-
${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new
|
|
131
|
+
${s}`:r}}if(t){for(let o=0;o<this.errors.length;++o)e.errors.push(this.errors[o]);for(let o=0;o<this.warnings.length;++o)e.warnings.push(this.warnings[o])}else e.errors=this.errors,e.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:GE(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,t=!1,r=-1){for(let n of e)yield*this.next(n);yield*this.end(t,r)}*next(e){if(RH.env.LOG_STREAM)console.dir(e,{depth:null});switch(e.type){case"directive":this.directives.add(e.source,(t,r,n)=>{let o=ea(e);o[0]+=t,this.onError(o,"BAD_DIRECTIVE",r,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let t=NH.composeDoc(this.options,this.directives,e,this.onError);if(this.atDirectives&&!t.directives.docStart)this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(t,!1),this.doc)yield this.doc;this.doc=t,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{let t=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,r=new Qi.YAMLParseError(ea(e),"UNEXPECTED_TOKEN",t);if(this.atDirectives||!this.doc)this.errors.push(r);else this.doc.errors.push(r);break}case"doc-end":{if(!this.doc){this.errors.push(new Qi.YAMLParseError(ea(e),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let t=LH.resolveEnd(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),t.comment){let r=this.doc.comment;this.doc.comment=r?`${r}
|
|
132
|
+
${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new Qi.YAMLParseError(ea(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,t=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let r=Object.assign({_directives:this.directives},this.options),n=new zH.Document(void 0,r);if(this.atDirectives)this.onError(t,"MISSING_CHAR","Missing directives-end indicator line");n.range=[0,t,t],this.decorate(n,!1),yield n}}}jH.Composer=JE});var QE=E(function(BH){var MH=Kh(),qH=Gh(),FH=Yi(),YE=qi();function UH(e,t=!0,r){if(e){let n=(o,s,i)=>{let a=typeof o==="number"?o:Array.isArray(o)?o[0]:o.offset;if(r)r(a,s,i);else throw new FH.YAMLParseError([a,a+1],s,i)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return qH.resolveFlowScalar(e,t,n);case"block-scalar":return MH.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function WH(e,t){let{implicitKey:r=!1,indent:n,inFlow:o=!1,offset:s=-1,type:i="PLAIN"}=t,a=YE.stringifyString({type:i,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}}),c=t.end??[{type:"newline",offset:-1,indent:n,source:`
|
|
133
133
|
`}];switch(a[0]){case"|":case">":{let u=a.indexOf(`
|
|
134
134
|
`),l=a.substring(0,u),d=a.substring(u+1)+`
|
|
135
|
-
`,f=[{type:"block-scalar-header",offset:s,indent:n,source:l}];if(!
|
|
136
|
-
`});return{type:"block-scalar",offset:s,indent:n,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:s,indent:n,source:a,end:c};case"'":return{type:"single-quoted-scalar",offset:s,indent:n,source:a,end:c};default:return{type:"scalar",offset:s,indent:n,source:a,end:c}}}function
|
|
135
|
+
`,f=[{type:"block-scalar-header",offset:s,indent:n,source:l}];if(!XE(f,c))f.push({type:"newline",offset:-1,indent:n,source:`
|
|
136
|
+
`});return{type:"block-scalar",offset:s,indent:n,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:s,indent:n,source:a,end:c};case"'":return{type:"single-quoted-scalar",offset:s,indent:n,source:a,end:c};default:return{type:"scalar",offset:s,indent:n,source:a,end:c}}}function VH(e,t,r={}){let{afterKey:n=!1,implicitKey:o=!1,inFlow:s=!1,type:i}=r,a="indent"in e?e.indent:null;if(n&&typeof a==="number")a+=2;if(!i)switch(e.type){case"single-quoted-scalar":i="QUOTE_SINGLE";break;case"double-quoted-scalar":i="QUOTE_DOUBLE";break;case"block-scalar":{let u=e.props[0];if(u.type!=="block-scalar-header")throw Error("Invalid block scalar header");i=u.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:i="PLAIN"}let c=YE.stringifyString({type:i,value:t},{implicitKey:o||a===null,indent:a!==null&&a>0?" ".repeat(a):"",inFlow:s,options:{blockQuote:!0,lineWidth:-1}});switch(c[0]){case"|":case">":ZH(e,c);break;case'"':Xh(e,c,"double-quoted-scalar");break;case"'":Xh(e,c,"single-quoted-scalar");break;default:Xh(e,c,"scalar")}}function ZH(e,t){let r=t.indexOf(`
|
|
137
137
|
`),n=t.substring(0,r),o=t.substring(r+1)+`
|
|
138
|
-
`;if(e.type==="block-scalar"){let s=e.props[0];if(s.type!=="block-scalar-header")throw Error("Invalid block scalar header");s.source=n,e.source=o}else{let{offset:s}=e,i="indent"in e?e.indent:-1,a=[{type:"block-scalar-header",offset:s,indent:i,source:n}];if(!
|
|
139
|
-
`});for(let c of Object.keys(e))if(c!=="type"&&c!=="offset")delete e[c];Object.assign(e,{type:"block-scalar",indent:i,props:a,source:o})}}function
|
|
140
|
-
`};delete e.items,Object.assign(e,{type:r,source:t,end:[o]});break}default:{let n="indent"in e?e.indent:-1,o="end"in e&&Array.isArray(e.end)?e.end.filter((s)=>s.type==="space"||s.type==="comment"||s.type==="newline"):[];for(let s of Object.keys(e))if(s!=="type"&&s!=="offset")delete e[s];Object.assign(e,{type:r,indent:n,source:t,end:o})}}}
|
|
138
|
+
`;if(e.type==="block-scalar"){let s=e.props[0];if(s.type!=="block-scalar-header")throw Error("Invalid block scalar header");s.source=n,e.source=o}else{let{offset:s}=e,i="indent"in e?e.indent:-1,a=[{type:"block-scalar-header",offset:s,indent:i,source:n}];if(!XE(a,"end"in e?e.end:void 0))a.push({type:"newline",offset:-1,indent:i,source:`
|
|
139
|
+
`});for(let c of Object.keys(e))if(c!=="type"&&c!=="offset")delete e[c];Object.assign(e,{type:"block-scalar",indent:i,props:a,source:o})}}function XE(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function Xh(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),o=t.length;if(e.props[0].type==="block-scalar-header")o-=e.props[0].source.length;for(let s of n)s.offset+=o;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let o={type:"newline",offset:e.offset+t.length,indent:e.indent,source:`
|
|
140
|
+
`};delete e.items,Object.assign(e,{type:r,source:t,end:[o]});break}default:{let n="indent"in e?e.indent:-1,o="end"in e&&Array.isArray(e.end)?e.end.filter((s)=>s.type==="space"||s.type==="comment"||s.type==="newline"):[];for(let s of Object.keys(e))if(s!=="type"&&s!=="offset")delete e[s];Object.assign(e,{type:r,indent:n,source:t,end:o})}}}BH.createScalarToken=WH;BH.resolveAsScalar=UH;BH.setScalarValue=VH});var eP=E(function(YH){var JH=(e)=>("type"in e)?tl(e):el(e);function tl(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=tl(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=el(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=el(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=el(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function el({start:e,key:t,sep:r,value:n}){let o="";for(let s of e)o+=s.source;if(t)o+=tl(t);if(r)for(let s of r)o+=s.source;if(n)o+=tl(n);return o}YH.stringify=JH});var nP=E(function(eG){var Qh=Symbol("break visit"),QH=Symbol("skip children"),tP=Symbol("remove item");function Jn(e,t){if("type"in e&&e.type==="document")e={start:e.start,value:e.value};rP(Object.freeze([]),e,t)}Jn.BREAK=Qh;Jn.SKIP=QH;Jn.REMOVE=tP;Jn.itemAtPath=(e,t)=>{let r=e;for(let[n,o]of t){let s=r?.[n];if(s&&"items"in s)r=s.items[o];else return}return r};Jn.parentCollection=(e,t)=>{let r=Jn.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],o=r?.[n];if(o&&"items"in o)return o;throw Error("Parent collection not found")};function rP(e,t,r){let n=r(t,e);if(typeof n==="symbol")return n;for(let o of["key","value"]){let s=t[o];if(s&&"items"in s){for(let i=0;i<s.items.length;++i){let a=rP(Object.freeze(e.concat([[o,i]])),s.items[i],r);if(typeof a==="number")i=a-1;else if(a===Qh)return Qh;else if(a===tP)s.items.splice(i,1),i-=1}if(typeof n==="function"&&o==="key")n=n(t,e)}}return typeof n==="function"?n(t,e):n}eG.visit=Jn});var rl=E(function(cG){var eg=QE(),rG=eP(),nG=nP(),tg="\uFEFF",rg="\x02",ng="\x18",og="\x1F",oG=(e)=>!!e&&("items"in e),sG=(e)=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function iG(e){switch(e){case tg:return"<BOM>";case rg:return"<DOC>";case ng:return"<FLOW_END>";case og:return"<SCALAR>";default:return JSON.stringify(e)}}function aG(e){switch(e){case tg:return"byte-order-mark";case rg:return"doc-mode";case ng:return"flow-error-end";case og:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
141
141
|
`:case`\r
|
|
142
|
-
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}
|
|
143
|
-
`:case"\r":case"\t":return!0;default:return!1}}var
|
|
144
|
-
\r `),
|
|
142
|
+
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}cG.createScalarToken=eg.createScalarToken;cG.resolveAsScalar=eg.resolveAsScalar;cG.setScalarValue=eg.setScalarValue;cG.stringify=rG.stringify;cG.visit=nG.visit;cG.BOM=tg;cG.DOCUMENT=rg;cG.FLOW_END=ng;cG.SCALAR=og;cG.isCollection=oG;cG.isScalar=sG;cG.prettyToken=iG;cG.tokenType=aG});var ig=E(function(xG){var ta=rl();function Yt(e){switch(e){case void 0:case" ":case`
|
|
143
|
+
`:case"\r":case"\t":return!0;default:return!1}}var oP=new Set("0123456789ABCDEFabcdef"),vG=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),nl=new Set(",[]{}"),kG=new Set(` ,[]{}
|
|
144
|
+
\r `),sg=(e)=>!e||kG.has(e);class sP{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,t=!1){if(e){if(typeof e!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!t;let r=this.next??"stream";while(r&&(t||this.hasChars(1)))r=yield*this.parseNext(r)}atLineEnd(){let e=this.pos,t=this.buffer[e];while(t===" "||t==="\t")t=this.buffer[++e];if(!t||t==="#"||t===`
|
|
145
145
|
`)return!0;if(t==="\r")return this.buffer[e+1]===`
|
|
146
146
|
`;return!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let t=this.buffer[e];if(this.indentNext>0){let r=0;while(t===" ")t=this.buffer[++r+e];if(t==="\r"){let n=this.buffer[r+e+1];if(n===`
|
|
147
147
|
`||!n&&!this.atEnd)return e+r+1}return t===`
|
|
148
|
-
`||r>=this.indentNext||!t&&!this.atEnd?e+r:-1}if(t==="-"||t==="."){let r=this.buffer.substr(e,3);if((r==="---"||r==="...")&&
|
|
149
|
-
`,this.pos),this.lineEndPos=e;if(e===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[e-1]==="\r")e-=1;return this.buffer.substring(this.pos,e)}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===
|
|
148
|
+
`||r>=this.indentNext||!t&&!this.atEnd?e+r:-1}if(t==="-"||t==="."){let r=this.buffer.substr(e,3);if((r==="---"||r==="...")&&Yt(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;if(typeof e!=="number"||e!==-1&&e<this.pos)e=this.buffer.indexOf(`
|
|
149
|
+
`,this.pos),this.lineEndPos=e;if(e===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[e-1]==="\r")e-=1;return this.buffer.substring(this.pos,e)}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===ta.BOM)yield*this.pushCount(1),e=e.substring(1);if(e[0]==="%"){let t=e.length,r=e.indexOf("#");while(r!==-1){let o=e[r-1];if(o===" "||o==="\t"){t=r-1;break}else r=e.indexOf("#",r+1)}while(!0){let o=e[t-1];if(o===" "||o==="\t")t-=1;else break}let n=(yield*this.pushCount(t))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-n),this.pushNewline(),"stream"}if(this.atLineEnd()){let t=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-t),yield*this.pushNewline(),"stream"}return yield ta.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if(e==="-"||e==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let t=this.peek(3);if((t==="---"||t==="...")&&Yt(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,t==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!Yt(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[e,t]=this.peek(2);if(!t&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&Yt(t)){let r=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=r,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let e=this.getLine();if(e===null)return this.setNext("doc");let t=yield*this.pushIndicators();switch(e[t]){case"#":yield*this.pushCount(e.length-t);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(sg),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return t+=yield*this.parseBlockScalarHeader(),t+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-t),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,t,r=-1;do{if(e=yield*this.pushNewline(),e>0)t=yield*this.pushSpaces(!1),this.indentValue=r=t;else t=0;t+=yield*this.pushSpaces(!0)}while(e+t>0);let n=this.getLine();if(n===null)return this.setNext("flow");if(r!==-1&&r<this.indentNext&&n[0]!=="#"||r===0&&(n.startsWith("---")||n.startsWith("..."))&&Yt(n[3])){if(!(r===this.indentNext-1&&this.flowLevel===1&&(n[0]==="]"||n[0]==="}")))return this.flowLevel=0,yield ta.FLOW_END,yield*this.parseLineStart()}let o=0;while(n[o]===",")o+=yield*this.pushCount(1),o+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(o+=yield*this.pushIndicators(),n[o]){case void 0:return"flow";case"#":return yield*this.pushCount(n.length-o),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(sg),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let s=this.charAt(1);if(this.flowKey||Yt(s)||s===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let e=this.charAt(0),t=this.buffer.indexOf(e,this.pos+1);if(e==="'")while(t!==-1&&this.buffer[t+1]==="'")t=this.buffer.indexOf("'",t+2);else while(t!==-1){let o=0;while(this.buffer[t-1-o]==="\\")o+=1;if(o%2===0)break;t=this.buffer.indexOf('"',t+1)}let r=this.buffer.substring(0,t),n=r.indexOf(`
|
|
150
150
|
`,this.pos);if(n!==-1){while(n!==-1){let o=this.continueScalar(n+1);if(o===-1)break;n=r.indexOf(`
|
|
151
|
-
`,o)}if(n!==-1)t=n-(r[n-1]==="\r"?2:1)}if(t===-1){if(!this.atEnd)return this.setNext("quoted-scalar");t=this.buffer.length}return yield*this.pushToIndex(t+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;while(!0){let t=this.buffer[++e];if(t==="+")this.blockScalarKeep=!0;else if(t>"0"&&t<="9")this.blockScalarIndent=Number(t)-1;else if(t!=="-")break}return yield*this.pushUntil((t)=>
|
|
151
|
+
`,o)}if(n!==-1)t=n-(r[n-1]==="\r"?2:1)}if(t===-1){if(!this.atEnd)return this.setNext("quoted-scalar");t=this.buffer.length}return yield*this.pushToIndex(t+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;while(!0){let t=this.buffer[++e];if(t==="+")this.blockScalarKeep=!0;else if(t>"0"&&t<="9")this.blockScalarIndent=Number(t)-1;else if(t!=="-")break}return yield*this.pushUntil((t)=>Yt(t)||t==="#")}*parseBlockScalar(){let e=this.pos-1,t=0,r;e:for(let o=this.pos;r=this.buffer[o];++o)switch(r){case" ":t+=1;break;case`
|
|
152
152
|
`:e=o,t=0;break;case"\r":{let s=this.buffer[o+1];if(!s&&!this.atEnd)return this.setNext("block-scalar");if(s===`
|
|
153
153
|
`)break}default:break e}if(!r&&!this.atEnd)return this.setNext("block-scalar");if(t>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=t;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(e+1);if(o===-1)break;e=this.buffer.indexOf(`
|
|
154
154
|
`,o)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let n=e+1;r=this.buffer[n];while(r===" ")r=this.buffer[++n];if(r==="\t"){while(r==="\t"||r===" "||r==="\r"||r===`
|
|
155
155
|
`)r=this.buffer[++n];e=n-1}else if(!this.blockScalarKeep)do{let o=e-1,s=this.buffer[o];if(s==="\r")s=this.buffer[--o];let i=o;while(s===" ")s=this.buffer[--o];if(s===`
|
|
156
|
-
`&&o>=this.pos&&o+1+t>i)e=o;else break}while(!0);return yield
|
|
156
|
+
`&&o>=this.pos&&o+1+t>i)e=o;else break}while(!0);return yield ta.SCALAR,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let e=this.flowLevel>0,t=this.pos-1,r=this.pos-1,n;while(n=this.buffer[++r])if(n===":"){let o=this.buffer[r+1];if(Yt(o)||e&&nl.has(o))break;t=r}else if(Yt(n)){let o=this.buffer[r+1];if(n==="\r")if(o===`
|
|
157
157
|
`)r+=1,n=`
|
|
158
|
-
`,o=this.buffer[r+1];else t=r;if(o==="#"||e&&
|
|
159
|
-
`){let s=this.continueScalar(r+1);if(s===-1)break;r=Math.max(r,s-2)}}else{if(e&&
|
|
158
|
+
`,o=this.buffer[r+1];else t=r;if(o==="#"||e&&nl.has(o))break;if(n===`
|
|
159
|
+
`){let s=this.continueScalar(r+1);if(s===-1)break;r=Math.max(r,s-2)}}else{if(e&&nl.has(n))break;t=r}if(!n&&!this.atEnd)return this.setNext("plain-scalar");return yield ta.SCALAR,yield*this.pushToIndex(t+1,!0),e?"flow":"doc"}*pushCount(e){if(e>0)return yield this.buffer.substr(this.pos,e),this.pos+=e,e;return 0}*pushToIndex(e,t){let r=this.buffer.slice(this.pos,e);if(r)return yield r,this.pos+=r.length,r.length;else if(t)yield"";return 0}*pushIndicators(){let e=0;e:while(!0){switch(this.charAt(0)){case"!":e+=yield*this.pushTag(),e+=yield*this.pushSpaces(!0);continue e;case"&":e+=yield*this.pushUntil(sg),e+=yield*this.pushSpaces(!0);continue e;case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(Yt(r)||t&&nl.has(r)){if(!t)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;e+=yield*this.pushCount(1),e+=yield*this.pushSpaces(!0);continue e}}}break e}return e}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,t=this.buffer[e];while(!Yt(t)&&t!==">")t=this.buffer[++e];return yield*this.pushToIndex(t===">"?e+1:e,!1)}else{let e=this.pos+1,t=this.buffer[e];while(t)if(vG.has(t))t=this.buffer[++e];else if(t==="%"&&oP.has(this.buffer[e+1])&&oP.has(this.buffer[e+2]))t=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){let e=this.buffer[this.pos];if(e===`
|
|
160
160
|
`)return yield*this.pushCount(1);else if(e==="\r"&&this.charAt(1)===`
|
|
161
|
-
`)return yield*this.pushCount(2);else return 0}*pushSpaces(e){let t=this.pos-1,r;do r=this.buffer[++t];while(r===" "||e&&r==="\t");let n=t-this.pos;if(n>0)yield this.buffer.substr(this.pos,n),this.pos=t;return n}*pushUntil(e){let t=this.pos,r=this.buffer[t];while(!e(r))r=this.buffer[++t];return yield*this.pushToIndex(t,!1)}}
|
|
161
|
+
`)return yield*this.pushCount(2);else return 0}*pushSpaces(e){let t=this.pos-1,r;do r=this.buffer[++t];while(r===" "||e&&r==="\t");let n=t-this.pos;if(n>0)yield this.buffer.substr(this.pos,n),this.pos=t;return n}*pushUntil(e){let t=this.pos,r=this.buffer[t];while(!e(r))r=this.buffer[++t];return yield*this.pushToIndex(t,!1)}}xG.Lexer=sP});var ag=E(function(TG){class iP{constructor(){this.lineStarts=[],this.addNewLine=(e)=>this.lineStarts.push(e),this.linePos=(e)=>{let t=0,r=this.lineStarts.length;while(t<r){let o=t+r>>1;if(this.lineStarts[o]<e)t=o+1;else r=o}if(this.lineStarts[t]===e)return{line:t+1,col:1};if(t===0)return{line:0,col:e};let n=this.lineStarts[t-1];return{line:t,col:e-n+1}}}}TG.LineCounter=iP});var cg=E(function(IG){var PG=$r("process"),aP=rl(),OG=ig();function an(e,t){for(let r=0;r<e.length;++r)if(e[r].type===t)return!0;return!1}function cP(e){for(let t=0;t<e.length;++t)switch(e[t].type){case"space":case"comment":case"newline":break;default:return t}return-1}function lP(e){switch(e?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function ol(e){switch(e.type){case"document":return e.start;case"block-map":{let t=e.items[e.items.length-1];return t.sep??t.start}case"block-seq":return e.items[e.items.length-1].start;default:return[]}}function Jo(e){if(e.length===0)return[];let t=e.length;e:while(--t>=0)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}while(e[++t]?.type==="space");return e.splice(t,e.length)}function sl(e,t){if(t.length<1e5)Array.prototype.push.apply(e,t);else for(let r=0;r<t.length;++r)e.push(t[r])}function uP(e){if(e.start.type==="flow-seq-start"){for(let t of e.items)if(t.sep&&!t.value&&!an(t.start,"explicit-key-ind")&&!an(t.sep,"map-value-ind")){if(t.key)t.value=t.key;if(delete t.key,lP(t.value))if(t.value.end)sl(t.value.end,t.sep);else t.value.end=t.sep;else sl(t.start,t.sep);delete t.sep}}}class dP{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new OG.Lexer,this.onNewLine=e}*parse(e,t=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let r of this.lexer.lex(e,t))yield*this.next(r);if(!t)yield*this.end()}*next(e){if(this.source=e,PG.env.LOG_TOKENS)console.log("|",aP.prettyToken(e));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=aP.tokenType(e);if(!t){let r=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:r,source:e}),this.offset+=e.length}else if(t==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=t,yield*this.step(),t){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+e.length);break;case"space":if(this.atNewLine&&e[0]===" ")this.indent+=e.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=e.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let e=this.peek(1);if(this.type==="doc-end"&&e?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){let t=e??this.stack.pop();if(!t)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield t;else{let r=this.peek(1);if(t.type==="block-scalar")t.indent="indent"in r?r.indent:0;else if(t.type==="flow-collection"&&r.type==="document")t.indent=0;if(t.type==="flow-collection")uP(t);switch(r.type){case"document":r.value=t;break;case"block-scalar":r.props.push(t);break;case"block-map":{let n=r.items[r.items.length-1];if(n.value){r.items.push({start:[],key:t,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=t;else{Object.assign(n,{key:t,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case"block-seq":{let n=r.items[r.items.length-1];if(n.value)r.items.push({start:[],value:t});else n.value=t;break}case"flow-collection":{let n=r.items[r.items.length-1];if(!n||n.value)r.items.push({start:[],key:t,sep:[]});else if(n.sep)n.value=t;else Object.assign(n,{key:t,sep:[]});return}default:yield*this.pop(),yield*this.pop(t)}if((r.type==="document"||r.type==="block-map"||r.type==="block-seq")&&(t.type==="block-map"||t.type==="block-seq")){let n=t.items[t.items.length-1];if(n&&!n.sep&&!n.value&&n.start.length>0&&cP(n.start)===-1&&(t.indent===0||n.start.every((o)=>o.type!=="comment"||o.indent<t.indent))){if(r.type==="document")r.end=n.start;else r.items.push({start:n.start});t.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let e={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")e.start.push(this.sourceToken);this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case"doc-start":{if(cP(e.start)!==-1)yield*this.pop(),yield*this.step();else e.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}let t=this.startBlockValue(e);if(t)this.stack.push(t);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type==="map-value-ind"){let t=ol(this.peek(2)),r=Jo(t),n;if(e.end)n=e.end,n.push(this.sourceToken),delete e.end;else n=[this.sourceToken];let o={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:r,key:e,sep:n}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let t=this.source.indexOf(`
|
|
162
162
|
`)+1;while(t!==0)this.onNewLine(this.offset+t),t=this.source.indexOf(`
|
|
163
|
-
`,t)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,t.value){let r="end"in t.value?t.value.end:void 0;if((Array.isArray(r)?r[r.length-1]:void 0)?.type==="comment")r?.push(this.sourceToken);else e.items.push({start:[this.sourceToken]})}else if(t.sep)t.sep.push(this.sourceToken);else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){
|
|
163
|
+
`,t)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,t.value){let r="end"in t.value?t.value.end:void 0;if((Array.isArray(r)?r[r.length-1]:void 0)?.type==="comment")r?.push(this.sourceToken);else e.items.push({start:[this.sourceToken]})}else if(t.sep)t.sep.push(this.sourceToken);else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){sl(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let r=!this.onKeyLine&&this.indent===e.indent,n=r&&(t.sep||t.explicitKey)&&this.type!=="seq-item-ind",o=[];if(n&&t.sep&&!t.value){let s=[];for(let i=0;i<t.sep.length;++i){let a=t.sep[i];switch(a.type){case"newline":s.push(i);break;case"space":break;case"comment":if(a.indent>e.indent)s.length=0;break;default:s.length=0}}if(s.length>=2)o=t.sep.splice(s[1])}switch(this.type){case"anchor":case"tag":if(n||t.value)o.push(this.sourceToken),e.items.push({start:o}),this.onKeyLine=!0;else if(t.sep)t.sep.push(this.sourceToken);else t.start.push(this.sourceToken);return;case"explicit-key-ind":if(!t.sep&&!t.explicitKey)t.start.push(this.sourceToken),t.explicitKey=!0;else if(n||t.value)o.push(this.sourceToken),e.items.push({start:o,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(t.explicitKey)if(!t.sep)if(an(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let s=Jo(t.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]})}else if(t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(an(t.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(lP(t.key)&&!an(t.sep,"newline")){let s=Jo(t.start),{key:i,sep:a}=t;a.push(this.sourceToken),delete t.key,delete t.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:i,sep:a}]})}else if(o.length>0)t.sep=t.sep.concat(o,this.sourceToken);else t.sep.push(this.sourceToken);else if(!t.sep)Object.assign(t,{key:null,sep:[this.sourceToken]});else if(t.value||n)e.items.push({start:o,key:null,sep:[this.sourceToken]});else if(an(t.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else t.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let s=this.flowScalar(this.type);if(n||t.value)e.items.push({start:o,key:s,sep:[]}),this.onKeyLine=!0;else if(t.sep)this.stack.push(s);else Object.assign(t,{key:s,sep:[]}),this.onKeyLine=!0;return}default:{let s=this.startBlockValue(e);if(s){if(s.type==="block-seq"){if(!t.explicitKey&&t.sep&&!an(t.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(r)e.items.push({start:o});this.stack.push(s);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(t.value){let r="end"in t.value?t.value.end:void 0;if((Array.isArray(r)?r[r.length-1]:void 0)?.type==="comment")r?.push(this.sourceToken);else e.items.push({start:[this.sourceToken]})}else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){sl(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return;case"anchor":case"tag":if(t.value||this.indent<=e.indent)break;t.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;if(t.value||an(t.start,"seq-item-ind"))e.items.push({start:[this.sourceToken]});else t.start.push(this.sourceToken);return}if(this.indent>e.indent){let r=this.startBlockValue(e);if(r){this.stack.push(r);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){let t=e.items[e.items.length-1];if(this.type==="flow-error-end"){let r;do yield*this.pop(),r=this.peek(1);while(r?.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!t||t.sep)e.items.push({start:[this.sourceToken]});else t.start.push(this.sourceToken);return;case"map-value-ind":if(!t||t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else Object.assign(t,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!t||t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else t.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let n=this.flowScalar(this.type);if(!t||t.value)e.items.push({start:[],key:n,sep:[]});else if(t.sep)this.stack.push(n);else Object.assign(t,{key:n,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let r=this.startBlockValue(e);if(r)this.stack.push(r);else yield*this.pop(),yield*this.step()}else{let r=this.peek(2);if(r.type==="block-map"&&(this.type==="map-value-ind"&&r.indent===e.indent||this.type==="newline"&&!r.items[r.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&r.type!=="flow-collection"){let n=ol(r),o=Jo(n);uP(e);let s=e.end.splice(1,e.end.length);s.push(this.sourceToken);let i={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:o,key:e,sep:s}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=i}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let t=this.source.indexOf(`
|
|
164
164
|
`)+1;while(t!==0)this.onNewLine(this.offset+t),t=this.source.indexOf(`
|
|
165
|
-
`,t)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let t=el(e),r=Ko(t);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let t=el(e),r=Ko(t);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){if(this.type!=="comment")return!1;if(this.indent<=t)return!1;return e.every((r)=>r.type==="newline"||r.type==="space")}*documentEnd(e){if(this.type!=="doc-mode"){if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}SG.Parser=iP});var dP=E(function(AG){var aP=Zh(),xG=Hi(),ea=Gi(),$G=th(),TG=ce(),EG=tg(),cP=rg();function uP(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new EG.LineCounter||null,prettyErrors:t}}function PG(e,t={}){let{lineCounter:r,prettyErrors:n}=uP(t),o=new cP.Parser(r?.addNewLine),s=new aP.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(ea.prettifyError(e,r)),a.warnings.forEach(ea.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function lP(e,t={}){let{lineCounter:r,prettyErrors:n}=uP(t),o=new cP.Parser(r?.addNewLine),s=new aP.Composer(t),i=null;for(let a of s.compose(o.parse(e),!0,e.length))if(!i)i=a;else if(i.options.logLevel!=="silent"){i.errors.push(new ea.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(ea.prettifyError(e,r)),i.warnings.forEach(ea.prettifyError(e,r));return i}function OG(e,t,r){let n=void 0;if(typeof t==="function")n=t;else if(r===void 0&&t&&typeof t==="object")r=t;let o=lP(e,r);if(!o)return null;if(o.warnings.forEach((s)=>$G.warn(o.options.logLevel,s)),o.errors.length>0)if(o.options.logLevel!=="silent")throw o.errors[0];else o.errors=[];return o.toJS(Object.assign({reviver:n},r))}function IG(e,t,r){let n=null;if(typeof t==="function"||Array.isArray(t))n=t;else if(r===void 0&&t)r=t;if(typeof r==="string")r=r.length;if(typeof r==="number"){let o=Math.round(r);r=o<1?void 0:o>8?{indent:8}:{indent:o}}if(e===void 0){let{keepUndefined:o}=r??t??{};if(!o)return}if(TG.isDocument(e)&&!n)return e.toString(r);return new xG.Document(e,n,r).toString(r)}AG.parse=OG;AG.parseAllDocuments=PG;AG.parseDocument=lP;AG.stringify=IG});var pa=E(function(yO){Object.defineProperty(yO,"__esModule",{value:!0});yO.regexpCode=yO.getEsmExportName=yO.getProperty=yO.safeStringify=yO.stringify=yO.strConcat=yO.addCodeArg=yO.str=yO._=yO.nil=yO._Code=yO.Name=yO.IDENTIFIER=yO._CodeOrName=void 0;class $l{}yO._CodeOrName=$l;yO.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class Xo extends $l{constructor(e){super();if(!yO.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}yO.Name=Xo;class Yt extends $l{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(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof Xo)t[r.str]=(t[r.str]||0)+1;return t},{})}}yO._Code=Yt;yO.nil=new Yt("");function hO(e,...t){let r=[e[0]],n=0;while(n<t.length)Vg(r,t[n]),r.push(e[++n]);return new Yt(r)}yO._=hO;var Wg=new Yt("+");function gO(e,...t){let r=[da(e[0])],n=0;while(n<t.length)r.push(Wg),Vg(r,t[n]),r.push(Wg,da(e[++n]));return M6(r),new Yt(r)}yO.str=gO;function Vg(e,t){if(t instanceof Yt)e.push(...t._items);else if(t instanceof Xo)e.push(t);else e.push(U6(t))}yO.addCodeArg=Vg;function M6(e){let t=1;while(t<e.length-1){if(e[t]===Wg){let r=q6(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function q6(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof Xo||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof Xo))return`"${e}${t.slice(1)}`;return}function F6(e,t){return t.emptyStr()?e:e.emptyStr()?t:gO`${e}${t}`}yO.strConcat=F6;function U6(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:da(Array.isArray(e)?e.join(","):e)}function W6(e){return new Yt(da(e))}yO.stringify=W6;function da(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}yO.safeStringify=da;function V6(e){return typeof e=="string"&&yO.IDENTIFIER.test(e)?new Yt(`.${e}`):hO`[${e}]`}yO.getProperty=V6;function Z6(e){if(typeof e=="string"&&yO.IDENTIFIER.test(e))return new Yt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}yO.getEsmExportName=Z6;function B6(e){return new Yt(e.toString())}yO.regexpCode=B6});var Hg=E(function(vO){Object.defineProperty(vO,"__esModule",{value:!0});vO.ValueScope=vO.ValueScopeName=vO.Scope=vO.varKinds=vO.UsedValueState=void 0;var we=pa();class bO extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var El;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(El||(vO.UsedValueState=El={}));vO.varKinds={const:new we.Name("const"),let:new we.Name("let"),var:new we.Name("var")};class Bg{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof we.Name?e:this.name(e)}name(e){return new we.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.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}}}vO.Scope=Bg;class Kg extends we.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=we._`.${new we.Name(t)}[${r}]`}}vO.ValueScopeName=Kg;var s5=we._`\n`;class _O extends Bg{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?s5:we.nil}}get(){return this._scope}name(e){return new Kg(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:o}=n,s=(r=t.key)!==null&&r!==void 0?r:t.ref,i=this._values[o];if(i){let u=i.get(s);if(u)return u}else i=this._values[o]=new Map;i.set(s,n);let a=this._scope[o]||(this._scope[o]=[]),c=a.length;return a[c]=t.ref,n.setValue(t,{property:o,itemIndex:c}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return we._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let o=we.nil;for(let s in e){let i=e[s];if(!i)continue;let a=r[s]=r[s]||new Map;i.forEach((c)=>{if(a.has(c))return;a.set(c,El.Started);let u=t(c);if(u){let l=this.opts.es5?vO.varKinds.var:vO.varKinds.const;o=we._`${o}${l} ${c} = ${u};${this.opts._n}`}else if(u=n===null||n===void 0?void 0:n(c))o=we._`${o}${u}${this.opts._n}`;else throw new bO(c);a.set(c,El.Completed)})}return o}}vO.ValueScope=_O});var ee=E(function(ft){Object.defineProperty(ft,"__esModule",{value:!0});ft.or=ft.and=ft.not=ft.CodeGen=ft.operators=ft.varKinds=ft.ValueScopeName=ft.ValueScope=ft.Scope=ft.Name=ft.regexpCode=ft.stringify=ft.getProperty=ft.nil=ft.strConcat=ft.str=ft._=void 0;var M=pa(),Ie=Hg(),un=pa();Object.defineProperty(ft,"_",{enumerable:!0,get:function(){return un._}});Object.defineProperty(ft,"str",{enumerable:!0,get:function(){return un.str}});Object.defineProperty(ft,"strConcat",{enumerable:!0,get:function(){return un.strConcat}});Object.defineProperty(ft,"nil",{enumerable:!0,get:function(){return un.nil}});Object.defineProperty(ft,"getProperty",{enumerable:!0,get:function(){return un.getProperty}});Object.defineProperty(ft,"stringify",{enumerable:!0,get:function(){return un.stringify}});Object.defineProperty(ft,"regexpCode",{enumerable:!0,get:function(){return un.regexpCode}});Object.defineProperty(ft,"Name",{enumerable:!0,get:function(){return un.Name}});var Cl=Hg();Object.defineProperty(ft,"Scope",{enumerable:!0,get:function(){return Cl.Scope}});Object.defineProperty(ft,"ValueScope",{enumerable:!0,get:function(){return Cl.ValueScope}});Object.defineProperty(ft,"ValueScopeName",{enumerable:!0,get:function(){return Cl.ValueScopeName}});Object.defineProperty(ft,"varKinds",{enumerable:!0,get:function(){return Cl.varKinds}});ft.operators={GT:new M._Code(">"),GTE:new M._Code(">="),LT:new M._Code("<"),LTE:new M._Code("<="),EQ:new M._Code("==="),NEQ:new M._Code("!=="),NOT:new M._Code("!"),OR:new M._Code("||"),AND:new M._Code("&&"),ADD:new M._Code("+")};class ln{optimizeNodes(){return this}optimizeNames(e,t){return this}}class kO extends ln{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Ie.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=es(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class Yg extends ln{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof M.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=es(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Rl(e,this.rhs)}}class xO extends Yg{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class $O extends ln{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class TO extends ln{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class EO extends ln{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class PO extends ln{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=es(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class zl extends ln{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let o=r[n];if(o.optimizeNames(e,t))continue;u5(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>Xn(e,t.names),{})}}class dn extends zl{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class OO extends zl{}class fa extends dn{}fa.kind="else";class Cr extends dn{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new fa(r):r}if(t){if(e===!1)return t instanceof Cr?t:t.nodes;if(this.nodes.length)return this;return new Cr(zO(e),t instanceof Cr?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=es(this.condition,e,t),this}get names(){let e=super.names;if(Rl(e,this.condition),this.else)Xn(e,this.else.names);return e}}Cr.kind="if";class Qo extends dn{}Qo.kind="for";class IO extends Qo{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=es(this.iteration,e,t),this}get names(){return Xn(super.names,this.iteration.names)}}class AO extends Qo{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Ie.varKinds.var:this.varKind,{name:r,from:n,to:o}=this;return`for(${t} ${r}=${n}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){let e=Rl(super.names,this.from);return Rl(e,this.to)}}class Gg extends Qo{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=es(this.iterable,e,t),this}get names(){return Xn(super.names,this.iterable.names)}}class Pl extends dn{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}Pl.kind="func";class Ol extends zl{render(e){return"return "+super.render(e)}}Ol.kind="return";class RO extends dn{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)Xn(e,this.catch.names);if(this.finally)Xn(e,this.finally.names);return e}}class Il extends dn{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Il.kind="catch";class Al extends dn{render(e){return"finally"+super.render(e)}}Al.kind="finally";class CO{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
166
|
-
`:""},this._extScope=e,this._scope=new Ie.Scope({parent:e}),this._nodes=[new OO]}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 r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}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,r,n){let o=this._scope.toName(t);if(r!==void 0&&n)this._constants[o.str]=r;return this._leafNode(new kO(e,o,r)),o}const(e,t,r){return this._def(Ie.varKinds.const,e,t,r)}let(e,t,r){return this._def(Ie.varKinds.let,e,t,r)}var(e,t,r){return this._def(Ie.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new Yg(e,t,r))}add(e,t){return this._leafNode(new xO(e,ft.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new PO(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),M.addCodeArg(t,n)}return t.push("}"),new M._Code(t)}if(e,t,r){if(this._blockNode(new Cr(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Cr(e))}else(){return this._elseNode(new fa)}endIf(){return this._endBlockNode(Cr,fa)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new IO(e),t)}forRange(e,t,r,n,o=this.opts.es5?Ie.varKinds.var:Ie.varKinds.let){let s=this._scope.toName(e);return this._for(new AO(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Ie.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let s=t instanceof M.Name?t:this.var("_arr",t);return this.forRange("_i",0,M._`${s}.length`,(i)=>{this.var(o,M._`${s}[${i}]`),r(o)})}return this._for(new Gg("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Ie.varKinds.var:Ie.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,M._`Object.keys(${t})`,r);let o=this._scope.toName(e);return this._for(new Gg("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(Qo)}label(e){return this._leafNode(new $O(e))}break(e){return this._leafNode(new TO(e))}return(e){let t=new Ol;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Ol)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new RO;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new Il(o),t(o)}if(r)this._currNode=n.finally=new Al,this.code(r);return this._endBlockNode(Il,Al)}throw(e){return this._leafNode(new EO(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=M.nil,r,n){if(this._blockNode(new Pl(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Pl)}optimize(e=1){while(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 r=this._currNode;if(r instanceof e||t&&r 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 Cr))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}}ft.CodeGen=CO;function Xn(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Rl(e,t){return t instanceof M._CodeOrName?Xn(e,t.names):e}function es(e,t,r){if(e instanceof M.Name)return n(e);if(!o(e))return e;return new M._Code(e._items.reduce((s,i)=>{if(i instanceof M.Name)i=n(i);if(i instanceof M._Code)s.push(...i._items);else s.push(i);return s},[]));function n(s){let i=r[s.str];if(i===void 0||t[s.str]!==1)return s;return delete t[s.str],i}function o(s){return s instanceof M._Code&&s._items.some((i)=>i instanceof M.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function u5(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function zO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${Jg(e)}`}ft.not=zO;var l5=NO(ft.operators.AND);function d5(...e){return e.reduce(l5)}ft.and=d5;var p5=NO(ft.operators.OR);function f5(...e){return e.reduce(p5)}ft.or=f5;function NO(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${Jg(t)} ${e} ${Jg(r)}`}function Jg(e){return e instanceof M.Name?e:M._`(${e})`}});var ue=E(function(ZO){Object.defineProperty(ZO,"__esModule",{value:!0});ZO.checkStrictMode=ZO.getErrorPath=ZO.Type=ZO.useFunc=ZO.setEvaluated=ZO.evaluatedPropsToName=ZO.mergeEvaluated=ZO.eachItem=ZO.unescapeJsonPointer=ZO.escapeJsonPointer=ZO.escapeFragment=ZO.unescapeFragment=ZO.schemaRefOrVal=ZO.schemaHasRulesButRef=ZO.schemaHasRules=ZO.checkUnknownRules=ZO.alwaysValidSchema=ZO.toHash=void 0;var B=ee(),MO=pa();function y5(e){let t={};for(let r of e)t[r]=!0;return t}ZO.toHash=y5;function w5(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return qO(e,t),!FO(t,e.self.RULES.all)}ZO.alwaysValidSchema=w5;function qO(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let o=n.RULES.keywords;for(let s in t)if(!o[s])VO(e,`unknown keyword: "${s}"`)}ZO.checkUnknownRules=qO;function FO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}ZO.schemaHasRules=FO;function b5(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}ZO.schemaHasRulesButRef=b5;function _5({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return B._`${r}`}return B._`${e}${t}${B.getProperty(n)}`}ZO.schemaRefOrVal=_5;function v5(e){return UO(decodeURIComponent(e))}ZO.unescapeFragment=v5;function S5(e){return encodeURIComponent(Qg(e))}ZO.escapeFragment=S5;function Qg(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}ZO.escapeJsonPointer=Qg;function UO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}ZO.unescapeJsonPointer=UO;function k5(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}ZO.eachItem=k5;function jO({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof B.Name?(s instanceof B.Name?e(o,s,i):t(o,s,i),i):s instanceof B.Name?(t(o,i,s),s):r(s,i);return a===B.Name&&!(c instanceof B.Name)?n(o,c):c}}ZO.mergeEvaluated={props:jO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>{e.if(B._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,B._`${r} || {}`).code(B._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,B._`${r} || {}`),ey(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:WO}),items:jO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,B._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>e.assign(r,t===!0?!0:B._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function WO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",B._`{}`);if(t!==void 0)ey(e,r,t);return r}ZO.evaluatedPropsToName=WO;function ey(e,t,r){Object.keys(r).forEach((n)=>e.assign(B._`${t}${B.getProperty(n)}`,!0))}ZO.setEvaluated=ey;var DO={};function x5(e,t){return e.scopeValue("func",{ref:t,code:DO[t.code]||(DO[t.code]=new MO._Code(t.code))})}ZO.useFunc=x5;var Xg;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Xg||(ZO.Type=Xg={}));function $5(e,t,r){if(e instanceof B.Name){let n=t===Xg.Num;return r?n?B._`"[" + ${e} + "]"`:B._`"['" + ${e} + "']"`:n?B._`"/" + ${e}`:B._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?B.getProperty(e).toString():"/"+Qg(e)}ZO.getErrorPath=$5;function VO(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}ZO.checkStrictMode=VO});var zr=E(function(KO){Object.defineProperty(KO,"__esModule",{value:!0});var de=ee(),W5={data:new de.Name("data"),valCxt:new de.Name("valCxt"),instancePath:new de.Name("instancePath"),parentData:new de.Name("parentData"),parentDataProperty:new de.Name("parentDataProperty"),rootData:new de.Name("rootData"),dynamicAnchors:new de.Name("dynamicAnchors"),vErrors:new de.Name("vErrors"),errors:new de.Name("errors"),this:new de.Name("this"),self:new de.Name("self"),scope:new de.Name("scope"),json:new de.Name("json"),jsonPos:new de.Name("jsonPos"),jsonLen:new de.Name("jsonLen"),jsonPart:new de.Name("jsonPart")};KO.default=W5});var ma=E(function(YO){Object.defineProperty(YO,"__esModule",{value:!0});YO.extendErrors=YO.resetErrorsCount=YO.reportExtraError=YO.reportError=YO.keyword$DataError=YO.keywordError=void 0;var F=ee(),pn=ue(),st=zr();YO.keywordError={message:({keyword:e})=>F.str`must pass "${e}" keyword validation`};YO.keyword$DataError={message:({keyword:e,schemaType:t})=>t?F.str`"${e}" keyword must be ${t} ($data)`:F.str`"${e}" keyword is invalid ($data)`};function Z5(e,t=YO.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=JO(e,t,r);if(n!==null&&n!==void 0?n:i||a)HO(s,c);else GO(o,F._`[${c}]`)}YO.reportError=Z5;function B5(e,t=YO.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=JO(e,t,r);if(HO(o,a),!(s||i))GO(n,st.default.vErrors)}YO.reportExtraError=B5;function K5(e,t){e.assign(st.default.errors,t),e.if(F._`${st.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(F._`${st.default.vErrors}.length`,t),()=>e.assign(st.default.vErrors,null)))}YO.resetErrorsCount=K5;function H5({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw Error("ajv implementation error");let i=e.name("err");e.forRange("i",o,st.default.errors,(a)=>{if(e.const(i,F._`${st.default.vErrors}[${a}]`),e.if(F._`${i}.instancePath === undefined`,()=>e.assign(F._`${i}.instancePath`,F.strConcat(st.default.instancePath,s.errorPath))),e.assign(F._`${i}.schemaPath`,F.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(F._`${i}.schema`,r),e.assign(F._`${i}.data`,n)})}YO.extendErrors=H5;function HO(e,t){let r=e.const("err",t);e.if(F._`${st.default.vErrors} === null`,()=>e.assign(st.default.vErrors,F._`[${r}]`),F._`${st.default.vErrors}.push(${r})`),e.code(F._`${st.default.errors}++`)}function GO(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(F._`new ${e.ValidationError}(${t})`);else r.assign(F._`${n}.errors`,t),r.return(!1)}var Qn={keyword:new F.Name("keyword"),schemaPath:new F.Name("schemaPath"),params:new F.Name("params"),propertyName:new F.Name("propertyName"),message:new F.Name("message"),schema:new F.Name("schema"),parentSchema:new F.Name("parentSchema")};function JO(e,t,r){let{createErrors:n}=e.it;if(n===!1)return F._`{}`;return G5(e,t,r)}function G5(e,t,r={}){let{gen:n,it:o}=e,s=[J5(o,r),Y5(e,r)];return X5(e,t,s),n.object(...s)}function J5({errorPath:e},{instancePath:t}){let r=t?F.str`${e}${pn.getErrorPath(t,pn.Type.Str)}`:e;return[st.default.instancePath,F.strConcat(st.default.instancePath,r)]}function Y5({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:F.str`${t}/${e}`;if(r)o=F.str`${o}${pn.getErrorPath(r,pn.Type.Str)}`;return[Qn.schemaPath,o]}function X5(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;if(n.push([Qn.keyword,o],[Qn.params,typeof t=="function"?t(e):t||F._`{}`]),c.messages)n.push([Qn.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([Qn.schema,i],[Qn.parentSchema,F._`${l}${d}`],[st.default.data,s]);if(u)n.push([Qn.propertyName,u])}});var oI=E(function(rI){Object.defineProperty(rI,"__esModule",{value:!0});rI.boolOrEmptySchema=rI.topBoolOrEmptySchema=void 0;var QO=ma(),eI=ee(),nY=zr(),oY={message:"boolean schema is false"};function sY(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)tI(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(nY.default.data);else t.assign(eI._`${n}.errors`,null),t.return(!0)}rI.topBoolOrEmptySchema=sY;function iY(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),tI(e);else r.var(t,!0)}rI.boolOrEmptySchema=iY;function tI(e,t){let{gen:r,data:n}=e;QO.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},oY,void 0,t)}});var ry=E(function(sI){Object.defineProperty(sI,"__esModule",{value:!0});sI.getRules=sI.isJSONType=void 0;var cY=["string","number","integer","boolean","null","object","array"],uY=new Set(cY);function lY(e){return typeof e=="string"&&uY.has(e)}sI.isJSONType=lY;function dY(){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:{}}}sI.getRules=dY});var ny=E(function(uI){Object.defineProperty(uI,"__esModule",{value:!0});uI.shouldUseRule=uI.shouldUseGroup=uI.schemaHasRulesForType=void 0;function fY({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&aI(e,n)}uI.schemaHasRulesForType=fY;function aI(e,t){return t.rules.some((r)=>cI(e,r))}uI.shouldUseGroup=aI;function cI(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}uI.shouldUseRule=cI});var ha=E(function(gI){Object.defineProperty(gI,"__esModule",{value:!0});gI.reportTypeError=gI.checkDataTypes=gI.checkDataType=gI.coerceAndCheckDataType=gI.getJSONTypes=gI.getSchemaTypes=gI.DataType=void 0;var dI=ry(),pI=ny(),fI=ma(),L=ee(),Ll=ue(),ts;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ts||(gI.DataType=ts={}));function gY(e){let t=mI(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"');if(e.nullable===!0)t.push("null")}return t}gI.getSchemaTypes=gY;function mI(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(dI.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}gI.getJSONTypes=mI;function yY(e,t){let{gen:r,data:n,opts:o}=e,s=wY(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&pI.schemaHasRulesForType(e,t[0]));if(i){let a=sy(t,n,o.strictNumbers,ts.Wrong);r.if(a,()=>{if(s.length)bY(e,t,s);else iy(e)})}return i}gI.coerceAndCheckDataType=yY;var hI=new Set(["string","number","integer","boolean","null"]);function wY(e,t){return t?e.filter((r)=>hI.has(r)||t==="array"&&r==="array"):[]}function bY(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",L._`typeof ${o}`),a=n.let("coerced",L._`undefined`);if(s.coerceTypes==="array")n.if(L._`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,L._`${o}[0]`).assign(i,L._`typeof ${o}`).if(sy(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(L._`${a} !== undefined`);for(let u of r)if(hI.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),iy(e),n.endIf(),n.if(L._`${a} !== undefined`,()=>{n.assign(o,a),_Y(e,a)});function c(u){switch(u){case"string":n.elseIf(L._`${i} == "number" || ${i} == "boolean"`).assign(a,L._`"" + ${o}`).elseIf(L._`${o} === null`).assign(a,L._`""`);return;case"number":n.elseIf(L._`${i} == "boolean" || ${o} === null
|
|
167
|
-
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,
|
|
168
|
-
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,
|
|
169
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,L._`[${o}]`)}}}function _Y({gen:e,parentData:t,parentDataProperty:r},n){e.if(L._`${t} !== undefined`,()=>e.assign(L._`${t}[${r}]`,n))}function oy(e,t,r,n=ts.Correct){let o=n===ts.Correct?L.operators.EQ:L.operators.NEQ,s;switch(e){case"null":return L._`${t} ${o} null`;case"array":s=L._`Array.isArray(${t})`;break;case"object":s=L._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i(L._`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return L._`typeof ${t} ${o} ${e}`}return n===ts.Correct?s:L.not(s);function i(a=L.nil){return L.and(L._`typeof ${t} == "number"`,a,r?L._`isFinite(${t})`:L.nil)}}gI.checkDataType=oy;function sy(e,t,r,n){if(e.length===1)return oy(e[0],t,r,n);let o,s=Ll.toHash(e);if(s.array&&s.object){let i=L._`typeof ${t} != "object"`;o=s.null?i:L._`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=L.nil;if(s.number)delete s.integer;for(let i in s)o=L.and(o,oy(i,t,r,n));return o}gI.checkDataTypes=sy;var vY={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?L._`{type: ${e}}`:L._`{type: ${t}}`};function iy(e){let t=SY(e);fI.reportError(t,vY)}gI.reportTypeError=iy;function SY(e){let{gen:t,data:r,schema:n}=e,o=Ll.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var SI=E(function(_I){Object.defineProperty(_I,"__esModule",{value:!0});_I.assignDefaults=void 0;var qt=ee(),bI=ue();function OY(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)wI(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>wI(e,s,o.default))}_I.assignDefaults=OY;function wI(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=qt._`${s}${qt.getProperty(t)}`;if(o){bI.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=qt._`${a} === undefined`;if(i.useDefaults==="empty")c=qt._`${c} || ${a} === null || ${a} === ""`;n.if(c,qt._`${a} = ${qt.stringify(r)}`)}});var Ft=E(function(TI){Object.defineProperty(TI,"__esModule",{value:!0});TI.validateUnion=TI.validateArray=TI.usePattern=TI.callValidateCode=TI.schemaProperties=TI.allSchemaProperties=TI.noPropertyInData=TI.propertyInData=TI.isOwnProperty=TI.hasPropFunc=TI.reportMissingProp=TI.checkMissingProp=TI.checkReportMissingProp=void 0;var G=ee(),rs=ue(),fn=zr(),kI=ue();function IY(e,t){let{gen:r,data:n,it:o}=e;r.if(cy(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:G._`${t}`},!0),e.error()})}TI.checkReportMissingProp=IY;function AY({gen:e,data:t,it:{opts:r}},n,o){return G.or(...n.map((s)=>G.and(cy(e,t,s,r.ownProperties),G._`${o} = ${s}`)))}TI.checkMissingProp=AY;function RY(e,t){e.setParams({missingProperty:t},!0),e.error()}TI.reportMissingProp=RY;function xI(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:G._`Object.prototype.hasOwnProperty`})}TI.hasPropFunc=xI;function ay(e,t,r){return G._`${xI(e)}.call(${t}, ${r})`}TI.isOwnProperty=ay;function CY(e,t,r,n){let o=G._`${t}${G.getProperty(r)} !== undefined`;return n?G._`${o} && ${ay(e,t,r)}`:o}TI.propertyInData=CY;function cy(e,t,r,n){let o=G._`${t}${G.getProperty(r)} === undefined`;return n?G.or(o,G.not(ay(e,t,r))):o}TI.noPropertyInData=cy;function $I(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}TI.allSchemaProperties=$I;function zY(e,t){return $I(t).filter((r)=>!rs.alwaysValidSchema(e,t[r]))}TI.schemaProperties=zY;function NY({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?G._`${e}, ${t}, ${n}${o}`:t,d=[[fn.default.instancePath,G.strConcat(fn.default.instancePath,s)],[fn.default.parentData,i.parentData],[fn.default.parentDataProperty,i.parentDataProperty],[fn.default.rootData,fn.default.rootData]];if(i.opts.dynamicRef)d.push([fn.default.dynamicAnchors,fn.default.dynamicAnchors]);let f=G._`${l}, ${r.object(...d)}`;return c!==G.nil?G._`${a}.call(${c}, ${f})`:G._`${a}(${f})`}TI.callValidateCode=NY;var LY=G._`new RegExp`;function jY({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,s=o(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:G._`${o.code==="new RegExp"?LY:kI.useFunc(e,o)}(${r}, ${n})`})}TI.usePattern=jY;function DY(e){let{gen:t,data:r,keyword:n,it:o}=e,s=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return i(()=>t.assign(a,!1)),a}return t.var(s,!0),i(()=>t.break()),s;function i(a){let c=t.const("len",G._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:rs.Type.Num},s),t.if(G.not(s),a)})}}TI.validateArray=DY;function MY(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>rs.alwaysValidSchema(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);if(t.assign(i,G._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(G.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}TI.validateUnion=MY});var zI=E(function(RI){Object.defineProperty(RI,"__esModule",{value:!0});RI.validateKeywordUsage=RI.validSchemaType=RI.funcKeywordCode=RI.macroKeywordCode=void 0;var he=ee(),eo=zr(),OI=Ft(),II=ma();function XY(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=AI(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let u=r.name("valid");e.subschema({schema:a,schemaPath:he.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}RI.macroKeywordCode=XY;function QY(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;t7(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=AI(n,o,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1){if(g(),t.modifying)PI(e);y(()=>e.error())}else{let b=t.async?m():h();if(t.modifying)PI(e);y(()=>e7(e,b))}}function m(){let b=n.let("ruleErrs",null);return n.try(()=>g(he._`await `),(T)=>n.assign(d,!1).if(he._`${T} instanceof ${c.ValidationError}`,()=>n.assign(b,he._`${T}.errors`),()=>n.throw(T))),b}function h(){let b=he._`${l}.errors`;return n.assign(b,null),g(he.nil),b}function g(b=t.async?he._`await `:he.nil){let T=c.opts.passContext?eo.default.this:eo.default.self,S=!(("compile"in t)&&!a||t.schema===!1);n.assign(d,he._`${b}${OI.callValidateCode(e,l,T,S)}`,t.modifying)}function y(b){var T;n.if(he.not((T=t.valid)!==null&&T!==void 0?T:d),b)}}RI.funcKeywordCode=QY;function PI(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,he._`${n.parentData}[${n.parentDataProperty}]`))}function e7(e,t){let{gen:r}=e;r.if(he._`Array.isArray(${t})`,()=>{r.assign(eo.default.vErrors,he._`${eo.default.vErrors} === null ? ${t} : ${eo.default.vErrors}.concat(${t})`).assign(eo.default.errors,he._`${eo.default.vErrors}.length`),II.extendErrors(e)},()=>e.error())}function t7({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function AI(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:he.stringify(r)})}function r7(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}RI.validSchemaType=r7;function n7({schema:e,opts:t,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw Error("ajv implementation error");let i=o.dependencies;if(i===null||i===void 0?void 0:i.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema){if(!o.validateSchema(e[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw Error(c)}}}RI.validateKeywordUsage=n7});var jI=E(function(NI){Object.defineProperty(NI,"__esModule",{value:!0});NI.extendSubschemaMode=NI.extendSubschemaData=NI.getSubschema=void 0;var je=ee(),jl=ue();function a7(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:je._`${e.schemaPath}${je.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:je._`${e.schemaPath}${je.getProperty(t)}${je.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${jl.escapeFragment(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw Error('either "keyword" or "schema" must be passed')}NI.getSubschema=a7;function c7(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=a.let("data",je._`${t.data}${je.getProperty(r)}`,!0);c(f),e.errorPath=je.str`${u}${jl.getErrorPath(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=je._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof je.Name?o:a.let("data",o,!0);if(c(u),i!==void 0)e.propertyName=i}if(s)e.dataTypes=s;function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}NI.extendSubschemaData=c7;function u7(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){if(n!==void 0)e.compositeRule=n;if(o!==void 0)e.createErrors=o;if(s!==void 0)e.allErrors=s;e.jtdDiscriminator=t,e.jtdMetadata=r}NI.extendSubschemaMode=u7});var uy=E(function(cSe,DI){DI.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!e(t[i],r[i]))return!1}return!0}return t!==t&&r!==r}});var qI=E(function(uSe,MI){var mn=MI.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Dl(t,n,o,e,"",e)};mn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mn.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 Dl(e,t,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in mn.arrayKeywords)for(var f=0;f<d.length;f++)Dl(e,t,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in mn.propsKeywords){if(d&&typeof d=="object")for(var m in d)Dl(e,t,r,d[m],o+"/"+l+"/"+p7(m),s,o,l,n,m)}else if(l in mn.keywords||e.allKeys&&!(l in mn.skipKeywords))Dl(e,t,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function p7(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ga=E(function(ZI){Object.defineProperty(ZI,"__esModule",{value:!0});ZI.getSchemaRefs=ZI.resolveUrl=ZI.normalizeId=ZI._getFullPath=ZI.getFullPath=ZI.inlineRef=void 0;var FI=ue(),f7=uy(),m7=qI(),h7=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function g7(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!ly(e);if(!t)return!1;return UI(e)<=t}ZI.inlineRef=g7;var y7=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function ly(e){for(let t in e){if(y7.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(ly))return!0;if(typeof r=="object"&&ly(r))return!0}return!1}function UI(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,h7.has(r))continue;if(typeof e[r]=="object")FI.eachItem(e[r],(n)=>t+=UI(n));if(t===1/0)return 1/0}return t}function WI(e,t="",r){if(r!==!1)t=ns(t);let n=e.parse(t);return VI(e,n)}ZI.getFullPath=WI;function VI(e,t){return e.serialize(t).split("#")[0]+"#"}ZI._getFullPath=VI;var w7=/#\/?$/;function ns(e){return e?e.replace(w7,""):""}ZI.normalizeId=ns;function b7(e,t,r){return r=ns(r),e.resolve(t,r)}ZI.resolveUrl=b7;var _7=/^[a-z_][-a-z0-9._]*$/i;function v7(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=ns(e[r]||t),s={"":o},i=WI(n,o,!1),a={},c=new Set;return m7(e,{allKeys:!0},(d,f,m,h)=>{if(h===void 0)return;let g=i+f,y=s[h];if(typeof d[r]=="string")y=b.call(this,d[r]);T.call(this,d.$anchor),T.call(this,d.$dynamicAnchor),s[f]=y;function b(S){let I=this.opts.uriResolver.resolve;if(S=ns(y?I(y,S):S),c.has(S))throw l(S);c.add(S);let _=this.refs[S];if(typeof _=="string")_=this.refs[_];if(typeof _=="object")u(d,_.schema,S);else if(S!==ns(g))if(S[0]==="#")u(d,a[S],S),a[S]=d;else this.refs[S]=g;return S}function T(S){if(typeof S=="string"){if(!_7.test(S))throw Error(`invalid anchor "${S}"`);b.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!f7(d,f))throw l(m)}function l(d){return Error(`reference "${d}" resolves to more than one schema`)}}ZI.getSchemaRefs=v7});var ya=E(function(aA){Object.defineProperty(aA,"__esModule",{value:!0});aA.getData=aA.KeywordCxt=aA.validateFunctionCode=void 0;var ql=oI(),Ml=ha(),ss=ny(),hn=ha(),JI=SI(),pr=zI(),os=jI(),R=ee(),X=zr(),YI=ga(),Ke=ue(),dr=ma();function E7(e){if(eA(e)){if(tA(e),QI(e)){I7(e);return}}XI(e,()=>ql.topBoolOrEmptySchema(e))}aA.validateFunctionCode=E7;function XI({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,R._`${X.default.data}, ${X.default.valCxt}`,n.$async,()=>{e.code(R._`"use strict"; ${KI(r,o)}`),O7(e,o),e.code(s)});else e.func(t,R._`${X.default.data}, ${P7(o)}`,n.$async,()=>e.code(KI(r,o)).code(s))}function P7(e){return R._`{${X.default.instancePath}="", ${X.default.parentData}, ${X.default.parentDataProperty}, ${X.default.rootData}=${X.default.data}${e.dynamicRef?R._`, ${X.default.dynamicAnchors}={}`:R.nil}}={}`}function O7(e,t){e.if(X.default.valCxt,()=>{if(e.var(X.default.instancePath,R._`${X.default.valCxt}.${X.default.instancePath}`),e.var(X.default.parentData,R._`${X.default.valCxt}.${X.default.parentData}`),e.var(X.default.parentDataProperty,R._`${X.default.valCxt}.${X.default.parentDataProperty}`),e.var(X.default.rootData,R._`${X.default.valCxt}.${X.default.rootData}`),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`${X.default.valCxt}.${X.default.dynamicAnchors}`)},()=>{if(e.var(X.default.instancePath,R._`""`),e.var(X.default.parentData,R._`undefined`),e.var(X.default.parentDataProperty,R._`undefined`),e.var(X.default.rootData,X.default.data),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`{}`)})}function I7(e){let{schema:t,opts:r,gen:n}=e;XI(e,()=>{if(r.$comment&&t.$comment)nA(e);if(N7(e),n.let(X.default.vErrors,null),n.let(X.default.errors,0),r.unevaluated)A7(e);rA(e),D7(e)});return}function A7(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",R._`${r}.evaluated`),t.if(R._`${e.evaluated}.dynamicProps`,()=>t.assign(R._`${e.evaluated}.props`,R._`undefined`)),t.if(R._`${e.evaluated}.dynamicItems`,()=>t.assign(R._`${e.evaluated}.items`,R._`undefined`))}function KI(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?R._`/*# sourceURL=${r} */`:R.nil}function R7(e,t){if(eA(e)){if(tA(e),QI(e)){C7(e,t);return}}ql.boolOrEmptySchema(e,t)}function QI({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function eA(e){return typeof e.schema!="boolean"}function C7(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)nA(e);L7(e),j7(e);let s=n.const("_errs",X.default.errors);rA(e,s),n.var(t,R._`${s} === ${X.default.errors}`)}function tA(e){Ke.checkUnknownRules(e),z7(e)}function rA(e,t){if(e.opts.jtd)return HI(e,[],!1,t);let r=Ml.getSchemaTypes(e.schema),n=Ml.coerceAndCheckDataType(e,r);HI(e,r,!n,t)}function z7(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Ke.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function N7(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Ke.checkStrictMode(e,"default is ignored in the schema root")}function L7(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=YI.resolveUrl(e.opts.uriResolver,e.baseId,t)}function j7(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function nA({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(R._`${X.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=R.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(R._`${X.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function D7(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(R._`${X.default.errors} === 0`,()=>t.return(X.default.data),()=>t.throw(R._`new ${o}(${X.default.vErrors})`));else{if(t.assign(R._`${n}.errors`,X.default.vErrors),s.unevaluated)M7(e);t.return(R._`${X.default.errors} === 0`)}}function M7({gen:e,evaluated:t,props:r,items:n}){if(r instanceof R.Name)e.assign(R._`${t}.props`,r);if(n instanceof R.Name)e.assign(R._`${t}.items`,n)}function HI(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=e,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!Ke.schemaHasRulesButRef(s,l))){o.block(()=>sA(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)q7(e,t);o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){if(!ss.shouldUseGroup(s,f))return;if(f.type){if(o.if(hn.checkDataType(f.type,i,c.strictNumbers)),GI(e,f),t.length===1&&t[0]===f.type&&r)o.else(),hn.reportTypeError(e);o.endIf()}else GI(e,f);if(!a)o.if(R._`${X.default.errors} === ${n||0}`)}}function GI(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)JI.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(ss.shouldUseRule(n,s))sA(e,s.keyword,s.definition,t.type)})}function q7(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(F7(e,t),!e.opts.allowUnionTypes)U7(e,t);W7(e,e.dataTypes)}function F7(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!oA(e.dataTypes,r))dy(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Z7(e,t)}function U7(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))dy(e,"use allowUnionTypes to allow union type keyword")}function W7(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&ss.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>V7(t,i)))dy(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function V7(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function oA(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Z7(e,t){let r=[];for(let n of e.dataTypes)if(oA(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function dy(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Ke.checkStrictMode(e,t,e.opts.strictTypes)}class py{constructor(e,t,r){if(pr.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=Ke.schemaRefOrVal(e,this.schema,r,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",iA(this.$data,e));else if(this.schemaCode=this.schemaValue,!pr.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",X.default.errors)}result(e,t,r){this.failResult(R.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(R.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(R._`${t} !== undefined && (${R.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?dr.reportExtraError:dr.reportError)(this,this.def.error,t)}$dataError(){dr.reportError(this,this.def.$dataError||dr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');dr.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=R.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=R.nil,t=R.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:o,def:s}=this;if(r.if(R.or(R._`${n} === undefined`,t)),e!==R.nil)r.assign(e,!0);if(o.length||s.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==R.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:o}=this;return R.or(s(),i());function s(){if(r.length){if(!(t instanceof R.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return R._`${hn.checkDataTypes(a,t,o.opts.strictNumbers,hn.DataType.Wrong)}`}return R.nil}function i(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return R._`!${a}(${t})`}return R.nil}}subschema(e,t){let r=os.getSubschema(this.it,e);os.extendSubschemaData(r,this.it,e),os.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return R7(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=Ke.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Ke.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,R.Name)),!0}}aA.KeywordCxt=py;function sA(e,t,r,n){let o=new py(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)pr.funcKeywordCode(o,r);else if("macro"in r)pr.macroKeywordCode(o,r);else if(r.compile||r.validate)pr.funcKeywordCode(o,r)}var B7=/^\/(?:[^~]|~0|~1)*$/,K7=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function iA(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return X.default.rootData;if(e[0]==="/"){if(!B7.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=X.default.rootData}else{let u=K7.exec(e);if(!u)throw Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=t)throw Error(c("property/index",l));return n[t-l]}if(l>t)throw Error(c("data",l));if(s=r[t-l],!o)return s}let i=s,a=o.split("/");for(let u of a)if(u)s=R._`${s}${R.getProperty(Ke.unescapeJsonPointer(u))}`,i=R._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}aA.getData=iA});var Fl=E(function(lA){Object.defineProperty(lA,"__esModule",{value:!0});class uA extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}lA.default=uA});var wa=E(function(pA){Object.defineProperty(pA,"__esModule",{value:!0});var is=ga();class dA extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=is.resolveUrl(e,t,r),this.missingSchema=is.normalizeId(is.getFullPath(e,this.missingRef))}}pA.default=dA});var Vl=E(function(hA){Object.defineProperty(hA,"__esModule",{value:!0});hA.resolveSchema=hA.getCompilingSchema=hA.resolveRef=hA.compileSchema=hA.SchemaEnv=void 0;var Ae=ee(),X7=Fl(),to=zr(),Re=ga(),Ul=ue(),fA=ya();class ba{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:Re.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}hA.SchemaEnv=ba;function my(e){let t=mA.call(this,e);if(t)return t;let r=Re.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Ae.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:X7.default,code:Ae._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:to.default.data,parentData:to.default.parentData,parentDataProperty:to.default.parentDataProperty,dataNames:[to.default.data],dataPathArr:[Ae.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Ae.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ae.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Ae._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),fA.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let d=i.toString();if(l=`${i.scopeRefs(to.default.scope)}return ${d}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${to.default.self}`,`${to.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:c,validateCode:d,scopeValues:i._values};if(this.opts.unevaluated){let{props:h,items:g}=u;if(m.evaluated={props:h instanceof Ae.Name?void 0:h,items:g instanceof Ae.Name?void 0:g,dynamicProps:h instanceof Ae.Name,dynamicItems:g instanceof Ae.Name},m.source)m.source.evaluated=Ae.stringify(m.evaluated)}return e.validate=m,e}catch(d){if(delete e.validate,delete e.validateName,l)this.logger.error("Error compiling schema, function code:",l);throw d}finally{this._compilations.delete(e)}}hA.compileSchema=my;function Q7(e,t,r){var n;r=Re.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=r8.call(this,e,r);if(s===void 0){let i=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(i)s=new ba({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=e8.call(this,s)}hA.resolveRef=Q7;function e8(e){if(Re.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:my.call(this,e)}function mA(e){for(let t of this._compilations)if(t8(t,e))return t}hA.getCompilingSchema=mA;function t8(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function r8(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Wl.call(this,e,t)}function Wl(e,t){let r=this.opts.uriResolver.parse(t),n=Re._getFullPath(this.opts.uriResolver,r),o=Re.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return fy.call(this,r,e);let s=Re.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Wl.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return fy.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)my.call(this,i);if(s===Re.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Re.resolveUrl(this.opts.uriResolver,o,u);return new ba({schema:a,schemaId:c,root:e,baseId:o})}return fy.call(this,r,i)}hA.resolveSchema=Wl;var n8=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function fy(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let c=r[Ul.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!n8.has(a)&&u)t=Re.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!Ul.schemaHasRulesButRef(r,this.RULES)){let a=Re.resolveUrl(this.opts.uriResolver,t,r.$ref);s=Wl.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new ba({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var yA=E(function(hSe,c8){c8.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}});var yy=E(function(gSe,kA){var u8=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),bA=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),hy=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),_A=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),l8=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function gy(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var d8=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function wA(e){return e.length=0,!0}function p8(e,t,r){if(e.length){let n=gy(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function f8(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=p8;for(let c=0;c<e.length;c++){let u=e[c];if(u==="["||u==="]")continue;if(u===":"){if(s===!0)i=!0;if(!a(o,n,r))break;if(++t>7){r.error=!0;break}if(c>0&&e[c-1]===":")s=!0;n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=wA}else{o.push(u);continue}}if(o.length)if(a===wA)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(gy(o));return r.address=n.join(""),r}function vA(e){if(m8(e,":")<2)return{host:e,isIPV6:!1};let t=f8(e);if(!t.error){let{address:r,address:n}=t;if(t.zone)r+="%"+t.zone,n+="%25"+t.zone;return{host:r,isIPV6:!0,escapedHost:n}}else return{host:e,isIPV6:!1}}function m8(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function h8(e){let t=e,r=[],n=-1,o=0;while(o=t.length){if(o===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(o===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(o===3){if(t==="/.."){if(r.length!==0)r.pop();r.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]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}var g8={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},y8=/[@/?#:]/g,w8=/[@/?#]/g;function SA(e,t){let r=t?w8:y8;return r.lastIndex=0,e.replace(r,(n)=>g8[n])}function b8(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(hy(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&_A(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function _8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(hy(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&_A(s))t+=s;else t+="%"+o;r+=2;continue}}if(l8(e[r]))t+=e[r];else t+=escape(e[r])}return t}function v8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(hy(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function S8(e){let t=[];if(e.userinfo!==void 0)t.push(e.userinfo),t.push("@");if(e.host!==void 0){let r=unescape(e.host);if(!bA(r)){let n=vA(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=SA(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string")t.push(":"),t.push(String(e.port));return t.length?t.join(""):void 0}kA.exports={nonSimpleDomain:d8,recomposeAuthority:S8,reescapeHostDelimiters:SA,normalizePercentEncoding:b8,normalizePathEncoding:_8,escapePreservingEscapes:v8,removeDotSegments:h8,isIPv4:bA,isUUID:u8,normalizeIPv6:vA,stringArrayToHexStripped:gy}});var PA=E(function(ySe,EA){var{isUUID:k8}=yy(),x8=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,$8=["http","https","ws","wss","urn","urn:uuid"];function T8(e){return $8.indexOf(e)!==-1}function wy(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return 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");else return!1}function xA(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function $A(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function E8(e){return e.secure=wy(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function P8(e){if(e.port===(wy(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function O8(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(x8);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,s=by(o);if(e.path=void 0,s)e=s.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function I8(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,s=by(o);if(s)e=s.serialize(e,t);let i=e,a=e.nss;return i.path=`${n||t.nid}:${a}`,t.skipEscape=!0,i}function A8(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!k8(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function R8(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var TA={scheme:"http",domainHost:!0,parse:xA,serialize:$A},C8={scheme:"https",domainHost:TA.domainHost,parse:xA,serialize:$A},Zl={scheme:"ws",domainHost:!0,parse:E8,serialize:P8},z8={scheme:"wss",domainHost:Zl.domainHost,parse:Zl.parse,serialize:Zl.serialize},N8={scheme:"urn",parse:O8,serialize:I8,skipNormalize:!0},L8={scheme:"urn:uuid",parse:A8,serialize:R8,skipNormalize:!0},Bl={http:TA,https:C8,ws:Zl,wss:z8,urn:N8,"urn:uuid":L8};Object.setPrototypeOf(Bl,null);function by(e){return e&&(Bl[e]||Bl[e.toLowerCase()])||void 0}EA.exports={wsIsSecure:wy,SCHEMES:Bl,isValidSchemeName:T8,getSchemeHandler:by}});var zA=E(function(wSe,Kl){var{normalizeIPv6:j8,removeDotSegments:_a,recomposeAuthority:D8,normalizePercentEncoding:M8,normalizePathEncoding:q8,escapePreservingEscapes:F8,reescapeHostDelimiters:U8,isIPv4:W8,nonSimpleDomain:V8}=yy(),{SCHEMES:Z8,getSchemeHandler:IA}=PA();function B8(e,t){if(typeof e==="string")e=X8(e,t);else if(typeof e==="object")e=as(ro(e,t),t);return e}function K8(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=AA(as(e,n),as(t,n),n,!0);return n.skipEscape=!0,ro(o,n)}function AA(e,t,r,n){let o={};if(!n)e=as(ro(e,r),r),t=as(ro(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=_a(t.path||""),o.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=_a(t.path||""),o.query=t.query;else{if(!t.path)if(o.path=e.path,t.query!==void 0)o.query=t.query;else o.query=e.query;else{if(t.path[0]==="/")o.path=_a(t.path);else{if((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path)o.path="/"+t.path;else if(!e.path)o.path=t.path;else o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;o.path=_a(o.path)}o.query=t.query}o.userinfo=e.userinfo,o.host=e.host,o.port=e.port}o.scheme=e.scheme}return o.fragment=t.fragment,o}function H8(e,t,r){let n=OA(e,r),o=OA(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function ro(e,t){let r={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:""},n=Object.assign({},t),o=[],s=IA(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=F8(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=M8(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=D8(r);if(i!==void 0){if(n.reference!=="suffix")o.push("//");if(o.push(i),r.path&&r.path[0]!=="/")o.push("/")}if(r.path!==void 0){let a=r.path;if(!n.absolutePath&&(!s||!s.absolutePath))a=_a(a);if(i===void 0&&a[0]==="/"&&a[1]==="/")a="/%2F"+a.slice(2);o.push(a)}if(r.query!==void 0)o.push("?",r.query);if(r.fragment!==void 0)o.push("#",r.fragment);return o.join("")}var G8=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,J8=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function Y8(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.";return}function RA(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let i=e.match(J8);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(G8);if(a){if(n.scheme=a[1],n.userinfo=a[3],n.host=a[4],n.port=parseInt(a[5],10),n.path=a[6]||"",n.query=a[7],n.fragment=a[8],isNaN(n.port))n.port=a[5];let c=Y8(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(W8(n.host)===!1){let d=j8(n.host);n.host=d.host.toLowerCase(),s=d.isIPV6}else s=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let u=IA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&V8(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}}if(!u||u&&!u.skipNormalize){if(e.indexOf("%")!==-1){if(n.scheme!==void 0)n.scheme=unescape(n.scheme);if(n.host!==void 0)n.host=U8(unescape(n.host),s)}if(n.path)n.path=q8(n.path);if(n.fragment)try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}}if(u&&u.parse)u.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function as(e,t){return RA(e,t).parsed}function X8(e,t){return CA(e,t).normalized}function CA(e,t){let{parsed:r,malformedAuthorityOrPort:n}=RA(e,t);return{normalized:n?e:ro(r,t),malformedAuthorityOrPort:n}}function OA(e,t){if(typeof e==="string"){let{normalized:r,malformedAuthorityOrPort:n}=CA(e,t);return n?void 0:r}if(typeof e==="object")return ro(e,t)}var _y={SCHEMES:Z8,normalize:B8,resolve:K8,resolveComponent:AA,equal:H8,serialize:ro,parse:as};Kl.exports=_y;Kl.exports.default=_y;Kl.exports.fastUri=_y});var jA=E(function(LA){Object.defineProperty(LA,"__esModule",{value:!0});var NA=zA();NA.code='require("ajv/dist/runtime/uri").default';LA.default=NA});var KA=E(function(Nr){Object.defineProperty(Nr,"__esModule",{value:!0});Nr.CodeGen=Nr.Name=Nr.nil=Nr.stringify=Nr.str=Nr._=Nr.KeywordCxt=void 0;var eX=ya();Object.defineProperty(Nr,"KeywordCxt",{enumerable:!0,get:function(){return eX.KeywordCxt}});var us=ee();Object.defineProperty(Nr,"_",{enumerable:!0,get:function(){return us._}});Object.defineProperty(Nr,"str",{enumerable:!0,get:function(){return us.str}});Object.defineProperty(Nr,"stringify",{enumerable:!0,get:function(){return us.stringify}});Object.defineProperty(Nr,"nil",{enumerable:!0,get:function(){return us.nil}});Object.defineProperty(Nr,"Name",{enumerable:!0,get:function(){return us.Name}});Object.defineProperty(Nr,"CodeGen",{enumerable:!0,get:function(){return us.CodeGen}});var tX=Fl(),UA=wa(),WA=ry(),fr=Vl(),VA=ee(),mr=ga(),gn=ha(),cs=ue(),DA=yA(),rX=jA(),ZA=(e,t)=>new RegExp(e,t);ZA.code="new RegExp";var nX=["removeAdditional","useDefaults","coerceTypes"],oX=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),sX={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."},iX={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},MA=200;function aX(e){var t,r,n,o,s,i,a,c,u,l,d,f,m,h,g,y,b,T,S,I,_,v,x,A,j;let Y=e.strict,ie=(t=e.code)===null||t===void 0?void 0:t.optimize,ae=ie===!0||ie===void 0?1:ie||0,Me=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ZA,W=(o=e.uriResolver)!==null&&o!==void 0?o:rX.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:Y)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Y)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:Y)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:Y)!==null&&f!==void 0?f:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:Y)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:ae,regExp:Me}:{optimize:ae,regExp:Me},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:MA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:MA,meta:(b=e.meta)!==null&&b!==void 0?b:!0,messages:(T=e.messages)!==null&&T!==void 0?T:!0,inlineRefs:(S=e.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(I=e.schemaId)!==null&&I!==void 0?I:"$id",addUsedSchema:(_=e.addUsedSchema)!==null&&_!==void 0?_:!0,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:!0,validateFormats:(x=e.validateFormats)!==null&&x!==void 0?x:!0,unicodeRegExp:(A=e.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(j=e.int32range)!==null&&j!==void 0?j:!0,uriResolver:W}}class Hl{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...aX(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new VA.ValueScope({scope:{},prefixes:oX,es5:t,lines:r}),this.logger=fX(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=WA.getRules(),qA.call(this,sX,e,"NOT SUPPORTED"),qA.call(this,iX,e,"DEPRECATED","warn"),this._metaOpts=dX.call(this),e.formats)uX.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)lX.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);cX.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=DA;if(r==="id")n={...DA},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!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 r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(u,l){await o.call(this,u.$schema);let d=this._addSchema(u,l);return d.validate||s.call(this,d)}async function o(u){if(u&&!this.getSchema(u))await n.call(this,{$ref:u},!0)}async function s(u){try{return this._compileSchemaEnv(u)}catch(l){if(!(l instanceof UA.default))throw l;return i.call(this,l),await a.call(this,l.missingSchema),s.call(this,u)}}function i({missingSchema:u,missingRef:l}){if(this.refs[u])throw Error(`AnySchema ${u} is loaded but ${l} cannot be resolved`)}async function a(u){let l=await c.call(this,u);if(!this.refs[u])await o.call(this,l.$schema);if(!this.refs[u])this.addSchema(l,u,t)}async function c(u){let l=this._loading[u];if(l)return l;try{return await(this._loading[u]=r(u))}finally{delete this._loading[u]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let s of e)this.addSchema(s,void 0,r,n);return this}let o;if(typeof e==="object"){let{schemaId:s}=this.opts;if(o=e[s],o!==void 0&&typeof o!="string")throw Error(`schema ${s} must be string`)}return t=mr.normalizeId(t||o),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw Error(o)}return n}getSchema(e){let t;while(typeof(t=FA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new fr.SchemaEnv({schema:{},schemaId:r});if(t=fr.resolveSchema.call(this,n,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=FA.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=mr.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(hX.call(this,r,t),!t)return cs.eachItem(r,(o)=>vy.call(this,o)),this;yX.call(this,t);let n={...t,type:gn.getJSONTypes(t.type),schemaType:gn.getJSONTypes(t.schemaType)};return cs.eachItem(r,n.type.length===0?(o)=>vy.call(this,o,n):(o)=>n.type.forEach((s)=>vy.call(this,o,n,s))),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 r of t.rules){let n=r.rules.findIndex((o)=>o.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,o)=>n+t+o)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let o=n.split("/").slice(1),s=e;for(let i of o)s=s[i];for(let i in r){let a=r[i];if(typeof a!="object")continue;let{$data:c}=a.definition,u=s[i];if(c&&u)s[i]=BA(u)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,o=this.opts.addUsedSchema){let s,{schemaId:i}=this.opts;if(typeof e=="object")s=e[i];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 a=this._cache.get(e);if(a!==void 0)return a;r=mr.normalizeId(s||r);let c=mr.getSchemaRefs.call(this,e,r);if(a=new fr.SchemaEnv({schema:e,schemaId:i,meta:t,baseId:r,localRefs:c}),this._cache.set(a.schema,a),o&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else fr.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{fr.compileSchema.call(this,e)}finally{this.opts=t}}}Hl.ValidationError=tX.default;Hl.MissingRefError=UA.default;Nr.default=Hl;function qA(e,t,r,n="error"){for(let o in e){let s=o;if(s in t)this.logger[n](`${r}: option ${o}. ${e[s]}`)}}function FA(e){return e=mr.normalizeId(e),this.schemas[e]||this.refs[e]}function cX(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function uX(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function lX(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 r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function dX(){let e={...this.opts};for(let t of nX)delete e[t];return e}var pX={log(){},warn(){},error(){}};function fX(e){if(e===!1)return pX;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")}var mX=/^[a-z_$][a-z0-9_$:-]*$/i;function hX(e,t){let{RULES:r}=this;if(cs.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!mX.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function vy(e,t,r){var n;let o=t===null||t===void 0?void 0:t.post;if(r&&o)throw Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(!i)i={type:r,rules:[]},s.rules.push(i);if(s.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:gn.getJSONTypes(t.type),schemaType:gn.getJSONTypes(t.schemaType)}};if(t.before)gX.call(this,i,a,t.before);else i.rules.push(a);s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((c)=>this.addKeyword(c))}function gX(e,t,r){let n=e.rules.findIndex((o)=>o.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function yX(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=BA(t);e.validateSchema=this.compile(t,!0)}var wX={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function BA(e){return{anyOf:[e,wX]}}});var GA=E(function(HA){Object.defineProperty(HA,"__esModule",{value:!0});var vX={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};HA.default=vX});var QA=E(function(YA){Object.defineProperty(YA,"__esModule",{value:!0});YA.callRef=YA.getValidate=void 0;var kX=wa(),Jl=Ft(),be=ee(),ls=zr(),Yl=Vl(),yn=ue(),xX={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Yl.resolveRef.call(c,u,o,r);if(l===void 0)throw new kX.default(n.opts.uriResolver,o,r);if(l instanceof Yl.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Gl(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return Gl(e,be._`${h}.validate`,u,u.$async)}function f(h){let g=JA(e,h);Gl(e,g,h,h.$async)}function m(h){let g=t.scopeValue("schema",a.code.source===!0?{ref:h,code:be.stringify(h)}:{ref:h}),y=t.name("valid"),b=e.subschema({schema:h,dataTypes:[],schemaPath:be.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(b),e.ok(y)}}};function JA(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):be._`${r.scopeValue("wrapper",{ref:t})}.validate`}YA.getValidate=JA;function Gl(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?ls.default.this:be.nil;if(n)l();else d();function l(){if(!a.$async)throw Error("async schema referenced by sync schema");let h=o.let("valid");o.try(()=>{if(o.code(be._`await ${Jl.callValidateCode(e,t,u)}`),m(t),!i)o.assign(h,!0)},(g)=>{if(o.if(be._`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),f(g),!i)o.assign(h,!1)}),e.ok(h)}function d(){e.result(Jl.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=be._`${h}.errors`;o.assign(ls.default.vErrors,be._`${ls.default.vErrors} === null ? ${g} : ${ls.default.vErrors}.concat(${g})`),o.assign(ls.default.errors,be._`${ls.default.vErrors}.length`)}function m(h){var g;if(!s.opts.unevaluated)return;let y=(g=r===null||r===void 0?void 0:r.validate)===null||g===void 0?void 0:g.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps){if(y.props!==void 0)s.props=yn.mergeEvaluated.props(o,y.props,s.props)}else{let b=o.var("props",be._`${h}.evaluated.props`);s.props=yn.mergeEvaluated.props(o,b,s.props,be.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=yn.mergeEvaluated.items(o,y.items,s.items)}else{let b=o.var("items",be._`${h}.evaluated.items`);s.items=yn.mergeEvaluated.items(o,b,s.items,be.Name)}}}YA.callRef=Gl;YA.default=xX});var tR=E(function(eR){Object.defineProperty(eR,"__esModule",{value:!0});var EX=GA(),PX=QA(),OX=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",EX.default,PX.default];eR.default=OX});var nR=E(function(rR){Object.defineProperty(rR,"__esModule",{value:!0});var bn=ee(),wn=bn.operators,Xl={maximum:{okStr:"<=",ok:wn.LTE,fail:wn.GT},minimum:{okStr:">=",ok:wn.GTE,fail:wn.LT},exclusiveMaximum:{okStr:"<",ok:wn.LT,fail:wn.GTE},exclusiveMinimum:{okStr:">",ok:wn.GT,fail:wn.LTE}},AX={message:({keyword:e,schemaCode:t})=>bn.str`must be ${Xl[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>bn._`{comparison: ${Xl[e].okStr}, limit: ${t}}`},RX={keyword:Object.keys(Xl),type:"number",schemaType:"number",$data:!0,error:AX,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(bn._`${r} ${Xl[t].fail} ${n} || isNaN(${r})`)}};rR.default=RX});var sR=E(function(oR){Object.defineProperty(oR,"__esModule",{value:!0});var hr=ee(),zX={message:({schemaCode:e})=>hr.str`must be multiple of ${e}`,params:({schemaCode:e})=>hr._`{multipleOf: ${e}}`},NX={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zX,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?hr._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:hr._`${i} !== parseInt(${i})`;e.fail$data(hr._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};oR.default=NX});var cR=E(function(aR){Object.defineProperty(aR,"__esModule",{value:!0});function iR(e){let t=e.length,r=0,n=0,o;while(n<t)if(r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t){if(o=e.charCodeAt(n),(o&64512)===56320)n++}return r}aR.default=iR;iR.code='require("ajv/dist/runtime/ucs2length").default'});var dR=E(function(lR){Object.defineProperty(lR,"__esModule",{value:!0});var mt=ee(),uR=ue(),DX=cR(),MX={message({keyword:e,schemaCode:t}){return mt.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>mt._`{limit: ${e}}`},qX={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:MX,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?mt.operators.GT:mt.operators.LT,i=o.opts.unicode===!1?mt._`${r}.length`:mt._`${uR.useFunc(e.gen,DX.default)}(${r})`;e.fail$data(mt._`${i} ${s} ${n}`)}};lR.default=qX});var hR=E(function(mR){Object.defineProperty(mR,"__esModule",{value:!0});var pR=Ft(),fR=ue(),Ut=ee(),UX={message:({schemaCode:e})=>Ut.str`must match pattern "${e}"`,params:({schemaCode:e})=>Ut._`{pattern: ${e}}`},WX={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:UX,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?Ut._`new RegExp`:fR.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,Ut._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(Ut._`!${l}`)}else{let c=pR.usePattern(e,o);e.fail$data(Ut._`!${c}.test(${r})`)}}};mR.default=WX});var yR=E(function(gR){Object.defineProperty(gR,"__esModule",{value:!0});var gr=ee(),ZX={message({keyword:e,schemaCode:t}){return gr.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>gr._`{limit: ${e}}`},BX={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:ZX,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?gr.operators.GT:gr.operators.LT;e.fail$data(gr._`Object.keys(${r}).length ${o} ${n}`)}};gR.default=BX});var _R=E(function(bR){Object.defineProperty(bR,"__esModule",{value:!0});var yr=Ft(),wr=ee(),wR=ue(),HX={message:({params:{missingProperty:e}})=>wr.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>wr._`{missingProperty: ${e}}`},GX={keyword:"required",type:"object",schemaType:"array",$data:!0,error:HX,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:s,it:i}=e,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors)u();else l();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:h}=e.it;for(let g of r)if((m===null||m===void 0?void 0:m[g])===void 0&&!h.has(g)){let y=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${g}" is not defined at "${y}" (strictRequired)`;wR.checkStrictMode(i,b,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(wr.nil,d);else for(let m of r)yr.checkReportMissingProp(e,m)}function l(){let m=t.let("missing");if(c||s){let h=t.let("valid",!0);e.block$data(h,()=>f(m,h)),e.ok(h)}else t.if(yr.checkMissingProp(e,r,m)),yr.reportMissingProp(e,m),t.else()}function d(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(yr.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,yr.propertyInData(t,o,m,a.ownProperties)),t.if(wr.not(h),()=>{e.error(),t.break()})},wr.nil)}}};bR.default=GX});var SR=E(function(vR){Object.defineProperty(vR,"__esModule",{value:!0});var br=ee(),YX={message({keyword:e,schemaCode:t}){return br.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>br._`{limit: ${e}}`},XX={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:YX,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?br.operators.GT:br.operators.LT;e.fail$data(br._`${r}.length ${o} ${n}`)}};vR.default=XX});var Ql=E(function(xR){Object.defineProperty(xR,"__esModule",{value:!0});var kR=uy();kR.code='require("ajv/dist/runtime/equal").default';xR.default=kR});var ER=E(function(TR){Object.defineProperty(TR,"__esModule",{value:!0});var ds=ha(),le=ee(),$R=ue(),tQ=Ql(),rQ={message:({params:{i:e,j:t}})=>le.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>le._`{i: ${e}, j: ${t}}`},nQ={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:rQ,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),u=s.items?ds.getSchemaTypes(s.items):[];e.block$data(c,l,le._`${i} === false`),e.ok(c);function l(){let h=t.let("i",le._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(le._`${h} > 1`,()=>(d()?f:m)(h,g))}function d(){return u.length>0&&!u.some((h)=>h==="object"||h==="array")}function f(h,g){let y=t.name("item"),b=ds.checkDataTypes(u,y,a.opts.strictNumbers,ds.DataType.Wrong),T=t.const("indices",le._`{}`);t.for(le._`;${h}--;`,()=>{if(t.let(y,le._`${r}[${h}]`),t.if(b,le._`continue`),u.length>1)t.if(le._`typeof ${y} == "string"`,le._`${y} += "_"`);t.if(le._`typeof ${T}[${y}] == "number"`,()=>{t.assign(g,le._`${T}[${y}]`),e.error(),t.assign(c,!1).break()}).code(le._`${T}[${y}] = ${h}`)})}function m(h,g){let y=$R.useFunc(t,tQ.default),b=t.name("outer");t.label(b).for(le._`;${h}--;`,()=>t.for(le._`${g} = ${h}; ${g}--;`,()=>t.if(le._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(b)})))}}};TR.default=nQ});var IR=E(function(OR){Object.defineProperty(OR,"__esModule",{value:!0});var ps=ee(),PR=ue(),sQ=Ql(),iQ={message:"must be equal to constant",params:({schemaCode:e})=>ps._`{allowedValue: ${e}}`},aQ={keyword:"const",$data:!0,error:iQ,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(ps._`!${PR.useFunc(t,sQ.default)}(${r}, ${o})`);else e.fail(ps._`${s} !== ${r}`)}};OR.default=aQ});var CR=E(function(RR){Object.defineProperty(RR,"__esModule",{value:!0});var _r=ee(),AR=ue(),uQ=Ql(),lQ={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>_r._`{allowedValues: ${e}}`},dQ={keyword:"enum",schemaType:"array",$data:!0,error:lQ,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e;if(!n&&o.length===0)throw Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c!==null&&c!==void 0?c:c=AR.useFunc(t,uQ.default),l;if(a||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(o))throw Error("ajv implementation error");let m=t.const("vSchema",s);l=_r.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(_r._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?_r._`${u()}(${r}, ${m}[${h}])`:_r._`${r} === ${g}`}}};RR.default=dQ});var NR=E(function(zR){Object.defineProperty(zR,"__esModule",{value:!0});var fQ=nR(),mQ=sR(),hQ=dR(),gQ=hR(),yQ=yR(),wQ=_R(),bQ=SR(),_Q=ER(),vQ=IR(),SQ=CR(),kQ=[fQ.default,mQ.default,hQ.default,gQ.default,yQ.default,wQ.default,bQ.default,_Q.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},vQ.default,SQ.default];zR.default=kQ});var Sy=E(function(jR){Object.defineProperty(jR,"__esModule",{value:!0});jR.validateAdditionalItems=void 0;var ht=ee(),fs=ue(),$Q={message:({params:{len:e}})=>ht.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>ht._`{limit: ${e}}`},TQ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$Q,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){fs.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}LR(e,n)}};function LR(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",ht._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(ht._`${a} <= ${t.length}`);else if(typeof n=="object"&&!fs.alwaysValidSchema(i,n)){let u=r.var("valid",ht._`${a} <= ${t.length}`);r.if(ht.not(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,a,(l)=>{if(e.subschema({keyword:s,dataProp:l,dataPropType:fs.Type.Num},u),!i.allErrors)r.if(ht.not(u),()=>r.break())})}}jR.validateAdditionalItems=LR;jR.default=TQ});var ky=E(function(FR){Object.defineProperty(FR,"__esModule",{value:!0});FR.validateTuple=void 0;var ed=ee(),_n=ue(),MR=Ft(),PQ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return qR(e,"additionalItems",t);if(r.items=!0,_n.alwaysValidSchema(r,t))return;e.ok(MR.validateArray(e))}};function qR(e,t,r=e.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=e;if(l(o),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=_n.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",ed._`${s}.length`);r.forEach((d,f)=>{if(_n.alwaysValidSchema(a,d))return;n.if(ed._`${u} > ${f}`,()=>e.subschema({keyword:i,schemaProp:f,dataProp:f},c)),e.ok(c)});function l(d){let{opts:f,errSchemaPath:m}=a,h=r.length,g=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!g){let y=`"${i}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;_n.checkStrictMode(a,y,f.strictTuples)}}}FR.validateTuple=qR;FR.default=PQ});var ZR=E(function(VR){Object.defineProperty(VR,"__esModule",{value:!0});var WR=ky(),IQ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>WR.validateTuple(e,"items")};VR.default=IQ});var JR=E(function(GR){Object.defineProperty(GR,"__esModule",{value:!0});var td=ee(),BR=ue(),KR=Ft(),HR=Sy(),RQ={message:({params:{len:e}})=>td.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>td._`{limit: ${e}}`},CQ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:RQ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,BR.alwaysValidSchema(n,t))return;if(o)HR.validateAdditionalItems(e,o);else e.ok(KR.validateArray(e))}};GR.default=CQ});var XR=E(function(YR){Object.defineProperty(YR,"__esModule",{value:!0});var Pe=ee(),vn=ue(),NQ={message:({params:{min:e,max:t}})=>t===void 0?Pe.str`must contain at least ${e} valid item(s)`:Pe.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?Pe._`{minContains: ${e}}`:Pe._`{minContains: ${e}, maxContains: ${t}}`},LQ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:NQ,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:u}=n;if(s.opts.next)i=c===void 0?1:c,a=u;else i=1;let l=t.const("len",Pe._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){vn.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){vn.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(vn.alwaysValidSchema(s,r)){let g=Pe._`${l} >= ${i}`;if(a!==void 0)g=Pe._`${g} && ${l} <= ${a}`;e.pass(g);return}s.items=!0;let d=t.name("valid");if(a===void 0&&i===1)m(d,()=>t.if(d,()=>t.break()));else if(i===0){if(t.let(d,!0),a!==void 0)t.if(Pe._`${o}.length > 0`,f)}else t.let(d,!1),f();e.result(d,()=>e.reset());function f(){let g=t.name("_valid"),y=t.let("count",0);m(g,()=>t.if(g,()=>h(y)))}function m(g,y){t.forRange("i",0,l,(b)=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:vn.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(Pe._`${g}++`),a===void 0)t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0).break());else if(t.if(Pe._`${g} > ${a}`,()=>t.assign(d,!1).break()),i===1)t.assign(d,!0);else t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0))}}};YR.default=LQ});var sC=E(function(rC){Object.defineProperty(rC,"__esModule",{value:!0});rC.validateSchemaDeps=rC.validatePropertyDeps=rC.error=void 0;var ms=ee(),QR=ue(),vr=Ft();rC.error={message:({params:{property:e,depsCount:t,deps:r}})=>ms.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>ms._`{property: ${e},
|
|
165
|
+
`,t)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let t=ol(e),r=Jo(t);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let t=ol(e),r=Jo(t);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){if(this.type!=="comment")return!1;if(this.indent<=t)return!1;return e.every((r)=>r.type==="newline"||r.type==="space")}*documentEnd(e){if(this.type!=="doc-mode"){if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}IG.Parser=dP});var gP=E(function(MG){var pP=Yh(),RG=Ji(),ra=Yi(),CG=ah(),zG=ce(),NG=ag(),fP=cg();function mP(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new NG.LineCounter||null,prettyErrors:t}}function LG(e,t={}){let{lineCounter:r,prettyErrors:n}=mP(t),o=new fP.Parser(r?.addNewLine),s=new pP.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(ra.prettifyError(e,r)),a.warnings.forEach(ra.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function hP(e,t={}){let{lineCounter:r,prettyErrors:n}=mP(t),o=new fP.Parser(r?.addNewLine),s=new pP.Composer(t),i=null;for(let a of s.compose(o.parse(e),!0,e.length))if(!i)i=a;else if(i.options.logLevel!=="silent"){i.errors.push(new ra.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(ra.prettifyError(e,r)),i.warnings.forEach(ra.prettifyError(e,r));return i}function jG(e,t,r){let n=void 0;if(typeof t==="function")n=t;else if(r===void 0&&t&&typeof t==="object")r=t;let o=hP(e,r);if(!o)return null;if(o.warnings.forEach((s)=>CG.warn(o.options.logLevel,s)),o.errors.length>0)if(o.options.logLevel!=="silent")throw o.errors[0];else o.errors=[];return o.toJS(Object.assign({reviver:n},r))}function DG(e,t,r){let n=null;if(typeof t==="function"||Array.isArray(t))n=t;else if(r===void 0&&t)r=t;if(typeof r==="string")r=r.length;if(typeof r==="number"){let o=Math.round(r);r=o<1?void 0:o>8?{indent:8}:{indent:o}}if(e===void 0){let{keepUndefined:o}=r??t??{};if(!o)return}if(zG.isDocument(e)&&!n)return e.toString(r);return new RG.Document(e,n,r).toString(r)}MG.parse=jG;MG.parseAllDocuments=LG;MG.parseDocument=hP;MG.stringify=DG});var ma=E(function(vO){Object.defineProperty(vO,"__esModule",{value:!0});vO.regexpCode=vO.getEsmExportName=vO.getProperty=vO.safeStringify=vO.stringify=vO.strConcat=vO.addCodeArg=vO.str=vO._=vO.nil=vO._Code=vO.Name=vO.IDENTIFIER=vO._CodeOrName=void 0;class Ol{}vO._CodeOrName=Ol;vO.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class ts extends Ol{constructor(e){super();if(!vO.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}vO.Name=ts;class Qt extends Ol{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(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof ts)t[r.str]=(t[r.str]||0)+1;return t},{})}}vO._Code=Qt;vO.nil=new Qt("");function _O(e,...t){let r=[e[0]],n=0;while(n<t.length)Jg(r,t[n]),r.push(e[++n]);return new Qt(r)}vO._=_O;var Gg=new Qt("+");function SO(e,...t){let r=[fa(e[0])],n=0;while(n<t.length)r.push(Gg),Jg(r,t[n]),r.push(Gg,fa(e[++n]));return K6(r),new Qt(r)}vO.str=SO;function Jg(e,t){if(t instanceof Qt)e.push(...t._items);else if(t instanceof ts)e.push(t);else e.push(J6(t))}vO.addCodeArg=Jg;function K6(e){let t=1;while(t<e.length-1){if(e[t]===Gg){let r=H6(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function H6(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof ts||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof ts))return`"${e}${t.slice(1)}`;return}function G6(e,t){return t.emptyStr()?e:e.emptyStr()?t:SO`${e}${t}`}vO.strConcat=G6;function J6(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:fa(Array.isArray(e)?e.join(","):e)}function Y6(e){return new Qt(fa(e))}vO.stringify=Y6;function fa(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}vO.safeStringify=fa;function X6(e){return typeof e=="string"&&vO.IDENTIFIER.test(e)?new Qt(`.${e}`):_O`[${e}]`}vO.getProperty=X6;function Q6(e){if(typeof e=="string"&&vO.IDENTIFIER.test(e))return new Qt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}vO.getEsmExportName=Q6;function e5(e){return new Qt(e.toString())}vO.regexpCode=e5});var ey=E(function(TO){Object.defineProperty(TO,"__esModule",{value:!0});TO.ValueScope=TO.ValueScopeName=TO.Scope=TO.varKinds=TO.UsedValueState=void 0;var be=ma();class xO extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var Al;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Al||(TO.UsedValueState=Al={}));TO.varKinds={const:new be.Name("const"),let:new be.Name("let"),var:new be.Name("var")};class Xg{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof be.Name?e:this.name(e)}name(e){return new be.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.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}}}TO.Scope=Xg;class Qg extends be.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=be._`.${new be.Name(t)}[${r}]`}}TO.ValueScopeName=Qg;var f5=be._`\n`;class $O extends Xg{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?f5:be.nil}}get(){return this._scope}name(e){return new Qg(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:o}=n,s=(r=t.key)!==null&&r!==void 0?r:t.ref,i=this._values[o];if(i){let u=i.get(s);if(u)return u}else i=this._values[o]=new Map;i.set(s,n);let a=this._scope[o]||(this._scope[o]=[]),c=a.length;return a[c]=t.ref,n.setValue(t,{property:o,itemIndex:c}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return be._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let o=be.nil;for(let s in e){let i=e[s];if(!i)continue;let a=r[s]=r[s]||new Map;i.forEach((c)=>{if(a.has(c))return;a.set(c,Al.Started);let u=t(c);if(u){let l=this.opts.es5?TO.varKinds.var:TO.varKinds.const;o=be._`${o}${l} ${c} = ${u};${this.opts._n}`}else if(u=n===null||n===void 0?void 0:n(c))o=be._`${o}${u}${this.opts._n}`;else throw new xO(c);a.set(c,Al.Completed)})}return o}}TO.ValueScope=$O});var te=E(function(mt){Object.defineProperty(mt,"__esModule",{value:!0});mt.or=mt.and=mt.not=mt.CodeGen=mt.operators=mt.varKinds=mt.ValueScopeName=mt.ValueScope=mt.Scope=mt.Name=mt.regexpCode=mt.stringify=mt.getProperty=mt.nil=mt.strConcat=mt.str=mt._=void 0;var M=ma(),Ae=ey(),dn=ma();Object.defineProperty(mt,"_",{enumerable:!0,get:function(){return dn._}});Object.defineProperty(mt,"str",{enumerable:!0,get:function(){return dn.str}});Object.defineProperty(mt,"strConcat",{enumerable:!0,get:function(){return dn.strConcat}});Object.defineProperty(mt,"nil",{enumerable:!0,get:function(){return dn.nil}});Object.defineProperty(mt,"getProperty",{enumerable:!0,get:function(){return dn.getProperty}});Object.defineProperty(mt,"stringify",{enumerable:!0,get:function(){return dn.stringify}});Object.defineProperty(mt,"regexpCode",{enumerable:!0,get:function(){return dn.regexpCode}});Object.defineProperty(mt,"Name",{enumerable:!0,get:function(){return dn.Name}});var jl=ey();Object.defineProperty(mt,"Scope",{enumerable:!0,get:function(){return jl.Scope}});Object.defineProperty(mt,"ValueScope",{enumerable:!0,get:function(){return jl.ValueScope}});Object.defineProperty(mt,"ValueScopeName",{enumerable:!0,get:function(){return jl.ValueScopeName}});Object.defineProperty(mt,"varKinds",{enumerable:!0,get:function(){return jl.varKinds}});mt.operators={GT:new M._Code(">"),GTE:new M._Code(">="),LT:new M._Code("<"),LTE:new M._Code("<="),EQ:new M._Code("==="),NEQ:new M._Code("!=="),NOT:new M._Code("!"),OR:new M._Code("||"),AND:new M._Code("&&"),ADD:new M._Code("+")};class pn{optimizeNodes(){return this}optimizeNames(e,t){return this}}class PO extends pn{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Ae.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=ns(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class ny extends pn{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof M.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=ns(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Ll(e,this.rhs)}}class OO extends ny{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class IO extends pn{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class AO extends pn{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class RO extends pn{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class CO extends pn{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=ns(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class Dl extends pn{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let o=r[n];if(o.optimizeNames(e,t))continue;y5(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>eo(e,t.names),{})}}class fn extends Dl{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class zO extends Dl{}class ha extends fn{}ha.kind="else";class Nr extends fn{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new ha(r):r}if(t){if(e===!1)return t instanceof Nr?t:t.nodes;if(this.nodes.length)return this;return new Nr(MO(e),t instanceof Nr?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=ns(this.condition,e,t),this}get names(){let e=super.names;if(Ll(e,this.condition),this.else)eo(e,this.else.names);return e}}Nr.kind="if";class rs extends fn{}rs.kind="for";class NO extends rs{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=ns(this.iteration,e,t),this}get names(){return eo(super.names,this.iteration.names)}}class LO extends rs{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Ae.varKinds.var:this.varKind,{name:r,from:n,to:o}=this;return`for(${t} ${r}=${n}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){let e=Ll(super.names,this.from);return Ll(e,this.to)}}class ty extends rs{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=ns(this.iterable,e,t),this}get names(){return eo(super.names,this.iterable.names)}}class Rl extends fn{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}Rl.kind="func";class Cl extends Dl{render(e){return"return "+super.render(e)}}Cl.kind="return";class jO extends fn{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)eo(e,this.catch.names);if(this.finally)eo(e,this.finally.names);return e}}class zl extends fn{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}zl.kind="catch";class Nl extends fn{render(e){return"finally"+super.render(e)}}Nl.kind="finally";class DO{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
166
|
+
`:""},this._extScope=e,this._scope=new Ae.Scope({parent:e}),this._nodes=[new zO]}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 r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}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,r,n){let o=this._scope.toName(t);if(r!==void 0&&n)this._constants[o.str]=r;return this._leafNode(new PO(e,o,r)),o}const(e,t,r){return this._def(Ae.varKinds.const,e,t,r)}let(e,t,r){return this._def(Ae.varKinds.let,e,t,r)}var(e,t,r){return this._def(Ae.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new ny(e,t,r))}add(e,t){return this._leafNode(new OO(e,mt.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new CO(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),M.addCodeArg(t,n)}return t.push("}"),new M._Code(t)}if(e,t,r){if(this._blockNode(new Nr(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Nr(e))}else(){return this._elseNode(new ha)}endIf(){return this._endBlockNode(Nr,ha)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new NO(e),t)}forRange(e,t,r,n,o=this.opts.es5?Ae.varKinds.var:Ae.varKinds.let){let s=this._scope.toName(e);return this._for(new LO(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Ae.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let s=t instanceof M.Name?t:this.var("_arr",t);return this.forRange("_i",0,M._`${s}.length`,(i)=>{this.var(o,M._`${s}[${i}]`),r(o)})}return this._for(new ty("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Ae.varKinds.var:Ae.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,M._`Object.keys(${t})`,r);let o=this._scope.toName(e);return this._for(new ty("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(rs)}label(e){return this._leafNode(new IO(e))}break(e){return this._leafNode(new AO(e))}return(e){let t=new Cl;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Cl)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new jO;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new zl(o),t(o)}if(r)this._currNode=n.finally=new Nl,this.code(r);return this._endBlockNode(zl,Nl)}throw(e){return this._leafNode(new RO(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=M.nil,r,n){if(this._blockNode(new Rl(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Rl)}optimize(e=1){while(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 r=this._currNode;if(r instanceof e||t&&r 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 Nr))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}}mt.CodeGen=DO;function eo(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Ll(e,t){return t instanceof M._CodeOrName?eo(e,t.names):e}function ns(e,t,r){if(e instanceof M.Name)return n(e);if(!o(e))return e;return new M._Code(e._items.reduce((s,i)=>{if(i instanceof M.Name)i=n(i);if(i instanceof M._Code)s.push(...i._items);else s.push(i);return s},[]));function n(s){let i=r[s.str];if(i===void 0||t[s.str]!==1)return s;return delete t[s.str],i}function o(s){return s instanceof M._Code&&s._items.some((i)=>i instanceof M.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function y5(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function MO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${ry(e)}`}mt.not=MO;var w5=qO(mt.operators.AND);function b5(...e){return e.reduce(w5)}mt.and=b5;var _5=qO(mt.operators.OR);function S5(...e){return e.reduce(_5)}mt.or=S5;function qO(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${ry(t)} ${e} ${ry(r)}`}function ry(e){return e instanceof M.Name?e:M._`(${e})`}});var ue=E(function(JO){Object.defineProperty(JO,"__esModule",{value:!0});JO.checkStrictMode=JO.getErrorPath=JO.Type=JO.useFunc=JO.setEvaluated=JO.evaluatedPropsToName=JO.mergeEvaluated=JO.eachItem=JO.unescapeJsonPointer=JO.escapeJsonPointer=JO.escapeFragment=JO.unescapeFragment=JO.schemaRefOrVal=JO.schemaHasRulesButRef=JO.schemaHasRules=JO.checkUnknownRules=JO.alwaysValidSchema=JO.toHash=void 0;var B=te(),VO=ma();function $5(e){let t={};for(let r of e)t[r]=!0;return t}JO.toHash=$5;function T5(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return ZO(e,t),!BO(t,e.self.RULES.all)}JO.alwaysValidSchema=T5;function ZO(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let o=n.RULES.keywords;for(let s in t)if(!o[s])GO(e,`unknown keyword: "${s}"`)}JO.checkUnknownRules=ZO;function BO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}JO.schemaHasRules=BO;function E5(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}JO.schemaHasRulesButRef=E5;function P5({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return B._`${r}`}return B._`${e}${t}${B.getProperty(n)}`}JO.schemaRefOrVal=P5;function O5(e){return KO(decodeURIComponent(e))}JO.unescapeFragment=O5;function I5(e){return encodeURIComponent(sy(e))}JO.escapeFragment=I5;function sy(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}JO.escapeJsonPointer=sy;function KO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}JO.unescapeJsonPointer=KO;function A5(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}JO.eachItem=A5;function UO({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof B.Name?(s instanceof B.Name?e(o,s,i):t(o,s,i),i):s instanceof B.Name?(t(o,i,s),s):r(s,i);return a===B.Name&&!(c instanceof B.Name)?n(o,c):c}}JO.mergeEvaluated={props:UO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>{e.if(B._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,B._`${r} || {}`).code(B._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,B._`${r} || {}`),iy(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:HO}),items:UO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,B._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>e.assign(r,t===!0?!0:B._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function HO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",B._`{}`);if(t!==void 0)iy(e,r,t);return r}JO.evaluatedPropsToName=HO;function iy(e,t,r){Object.keys(r).forEach((n)=>e.assign(B._`${t}${B.getProperty(n)}`,!0))}JO.setEvaluated=iy;var WO={};function R5(e,t){return e.scopeValue("func",{ref:t,code:WO[t.code]||(WO[t.code]=new VO._Code(t.code))})}JO.useFunc=R5;var oy;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(oy||(JO.Type=oy={}));function C5(e,t,r){if(e instanceof B.Name){let n=t===oy.Num;return r?n?B._`"[" + ${e} + "]"`:B._`"['" + ${e} + "']"`:n?B._`"/" + ${e}`:B._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?B.getProperty(e).toString():"/"+sy(e)}JO.getErrorPath=C5;function GO(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}JO.checkStrictMode=GO});var Lr=E(function(XO){Object.defineProperty(XO,"__esModule",{value:!0});var pe=te(),Y5={data:new pe.Name("data"),valCxt:new pe.Name("valCxt"),instancePath:new pe.Name("instancePath"),parentData:new pe.Name("parentData"),parentDataProperty:new pe.Name("parentDataProperty"),rootData:new pe.Name("rootData"),dynamicAnchors:new pe.Name("dynamicAnchors"),vErrors:new pe.Name("vErrors"),errors:new pe.Name("errors"),this:new pe.Name("this"),self:new pe.Name("self"),scope:new pe.Name("scope"),json:new pe.Name("json"),jsonPos:new pe.Name("jsonPos"),jsonLen:new pe.Name("jsonLen"),jsonPart:new pe.Name("jsonPart")};XO.default=Y5});var ga=E(function(rI){Object.defineProperty(rI,"__esModule",{value:!0});rI.extendErrors=rI.resetErrorsCount=rI.reportExtraError=rI.reportError=rI.keyword$DataError=rI.keywordError=void 0;var F=te(),mn=ue(),it=Lr();rI.keywordError={message:({keyword:e})=>F.str`must pass "${e}" keyword validation`};rI.keyword$DataError={message:({keyword:e,schemaType:t})=>t?F.str`"${e}" keyword must be ${t} ($data)`:F.str`"${e}" keyword is invalid ($data)`};function Q5(e,t=rI.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=tI(e,t,r);if(n!==null&&n!==void 0?n:i||a)QO(s,c);else eI(o,F._`[${c}]`)}rI.reportError=Q5;function eY(e,t=rI.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=tI(e,t,r);if(QO(o,a),!(s||i))eI(n,it.default.vErrors)}rI.reportExtraError=eY;function tY(e,t){e.assign(it.default.errors,t),e.if(F._`${it.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(F._`${it.default.vErrors}.length`,t),()=>e.assign(it.default.vErrors,null)))}rI.resetErrorsCount=tY;function rY({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw Error("ajv implementation error");let i=e.name("err");e.forRange("i",o,it.default.errors,(a)=>{if(e.const(i,F._`${it.default.vErrors}[${a}]`),e.if(F._`${i}.instancePath === undefined`,()=>e.assign(F._`${i}.instancePath`,F.strConcat(it.default.instancePath,s.errorPath))),e.assign(F._`${i}.schemaPath`,F.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(F._`${i}.schema`,r),e.assign(F._`${i}.data`,n)})}rI.extendErrors=rY;function QO(e,t){let r=e.const("err",t);e.if(F._`${it.default.vErrors} === null`,()=>e.assign(it.default.vErrors,F._`[${r}]`),F._`${it.default.vErrors}.push(${r})`),e.code(F._`${it.default.errors}++`)}function eI(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(F._`new ${e.ValidationError}(${t})`);else r.assign(F._`${n}.errors`,t),r.return(!1)}var to={keyword:new F.Name("keyword"),schemaPath:new F.Name("schemaPath"),params:new F.Name("params"),propertyName:new F.Name("propertyName"),message:new F.Name("message"),schema:new F.Name("schema"),parentSchema:new F.Name("parentSchema")};function tI(e,t,r){let{createErrors:n}=e.it;if(n===!1)return F._`{}`;return nY(e,t,r)}function nY(e,t,r={}){let{gen:n,it:o}=e,s=[oY(o,r),sY(e,r)];return iY(e,t,s),n.object(...s)}function oY({errorPath:e},{instancePath:t}){let r=t?F.str`${e}${mn.getErrorPath(t,mn.Type.Str)}`:e;return[it.default.instancePath,F.strConcat(it.default.instancePath,r)]}function sY({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:F.str`${t}/${e}`;if(r)o=F.str`${o}${mn.getErrorPath(r,mn.Type.Str)}`;return[to.schemaPath,o]}function iY(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;if(n.push([to.keyword,o],[to.params,typeof t=="function"?t(e):t||F._`{}`]),c.messages)n.push([to.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([to.schema,i],[to.parentSchema,F._`${l}${d}`],[it.default.data,s]);if(u)n.push([to.propertyName,u])}});var uI=E(function(aI){Object.defineProperty(aI,"__esModule",{value:!0});aI.boolOrEmptySchema=aI.topBoolOrEmptySchema=void 0;var oI=ga(),sI=te(),dY=Lr(),pY={message:"boolean schema is false"};function fY(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)iI(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(dY.default.data);else t.assign(sI._`${n}.errors`,null),t.return(!0)}aI.topBoolOrEmptySchema=fY;function mY(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),iI(e);else r.var(t,!0)}aI.boolOrEmptySchema=mY;function iI(e,t){let{gen:r,data:n}=e;oI.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},pY,void 0,t)}});var cy=E(function(lI){Object.defineProperty(lI,"__esModule",{value:!0});lI.getRules=lI.isJSONType=void 0;var gY=["string","number","integer","boolean","null","object","array"],yY=new Set(gY);function wY(e){return typeof e=="string"&&yY.has(e)}lI.isJSONType=wY;function bY(){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:{}}}lI.getRules=bY});var uy=E(function(mI){Object.defineProperty(mI,"__esModule",{value:!0});mI.shouldUseRule=mI.shouldUseGroup=mI.schemaHasRulesForType=void 0;function SY({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&pI(e,n)}mI.schemaHasRulesForType=SY;function pI(e,t){return t.rules.some((r)=>fI(e,r))}mI.shouldUseGroup=pI;function fI(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}mI.shouldUseRule=fI});var ya=E(function(SI){Object.defineProperty(SI,"__esModule",{value:!0});SI.reportTypeError=SI.checkDataTypes=SI.checkDataType=SI.coerceAndCheckDataType=SI.getJSONTypes=SI.getSchemaTypes=SI.DataType=void 0;var gI=cy(),yI=uy(),wI=ga(),j=te(),ql=ue(),os;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(os||(SI.DataType=os={}));function xY(e){let t=bI(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"');if(e.nullable===!0)t.push("null")}return t}SI.getSchemaTypes=xY;function bI(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(gI.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}SI.getJSONTypes=bI;function $Y(e,t){let{gen:r,data:n,opts:o}=e,s=TY(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&yI.schemaHasRulesForType(e,t[0]));if(i){let a=dy(t,n,o.strictNumbers,os.Wrong);r.if(a,()=>{if(s.length)EY(e,t,s);else py(e)})}return i}SI.coerceAndCheckDataType=$Y;var _I=new Set(["string","number","integer","boolean","null"]);function TY(e,t){return t?e.filter((r)=>_I.has(r)||t==="array"&&r==="array"):[]}function EY(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",j._`typeof ${o}`),a=n.let("coerced",j._`undefined`);if(s.coerceTypes==="array")n.if(j._`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,j._`${o}[0]`).assign(i,j._`typeof ${o}`).if(dy(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(j._`${a} !== undefined`);for(let u of r)if(_I.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),py(e),n.endIf(),n.if(j._`${a} !== undefined`,()=>{n.assign(o,a),PY(e,a)});function c(u){switch(u){case"string":n.elseIf(j._`${i} == "number" || ${i} == "boolean"`).assign(a,j._`"" + ${o}`).elseIf(j._`${o} === null`).assign(a,j._`""`);return;case"number":n.elseIf(j._`${i} == "boolean" || ${o} === null
|
|
167
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,j._`+${o}`);return;case"integer":n.elseIf(j._`${i} === "boolean" || ${o} === null
|
|
168
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,j._`+${o}`);return;case"boolean":n.elseIf(j._`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf(j._`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf(j._`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf(j._`${i} === "string" || ${i} === "number"
|
|
169
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,j._`[${o}]`)}}}function PY({gen:e,parentData:t,parentDataProperty:r},n){e.if(j._`${t} !== undefined`,()=>e.assign(j._`${t}[${r}]`,n))}function ly(e,t,r,n=os.Correct){let o=n===os.Correct?j.operators.EQ:j.operators.NEQ,s;switch(e){case"null":return j._`${t} ${o} null`;case"array":s=j._`Array.isArray(${t})`;break;case"object":s=j._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i(j._`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return j._`typeof ${t} ${o} ${e}`}return n===os.Correct?s:j.not(s);function i(a=j.nil){return j.and(j._`typeof ${t} == "number"`,a,r?j._`isFinite(${t})`:j.nil)}}SI.checkDataType=ly;function dy(e,t,r,n){if(e.length===1)return ly(e[0],t,r,n);let o,s=ql.toHash(e);if(s.array&&s.object){let i=j._`typeof ${t} != "object"`;o=s.null?i:j._`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=j.nil;if(s.number)delete s.integer;for(let i in s)o=j.and(o,ly(i,t,r,n));return o}SI.checkDataTypes=dy;var OY={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?j._`{type: ${e}}`:j._`{type: ${t}}`};function py(e){let t=IY(e);wI.reportError(t,OY)}SI.reportTypeError=py;function IY(e){let{gen:t,data:r,schema:n}=e,o=ql.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var EI=E(function($I){Object.defineProperty($I,"__esModule",{value:!0});$I.assignDefaults=void 0;var Ft=te(),xI=ue();function jY(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)kI(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>kI(e,s,o.default))}$I.assignDefaults=jY;function kI(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=Ft._`${s}${Ft.getProperty(t)}`;if(o){xI.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=Ft._`${a} === undefined`;if(i.useDefaults==="empty")c=Ft._`${c} || ${a} === null || ${a} === ""`;n.if(c,Ft._`${a} = ${Ft.stringify(r)}`)}});var Ut=E(function(AI){Object.defineProperty(AI,"__esModule",{value:!0});AI.validateUnion=AI.validateArray=AI.usePattern=AI.callValidateCode=AI.schemaProperties=AI.allSchemaProperties=AI.noPropertyInData=AI.propertyInData=AI.isOwnProperty=AI.hasPropFunc=AI.reportMissingProp=AI.checkMissingProp=AI.checkReportMissingProp=void 0;var J=te(),ss=ue(),hn=Lr(),PI=ue();function DY(e,t){let{gen:r,data:n,it:o}=e;r.if(my(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:J._`${t}`},!0),e.error()})}AI.checkReportMissingProp=DY;function MY({gen:e,data:t,it:{opts:r}},n,o){return J.or(...n.map((s)=>J.and(my(e,t,s,r.ownProperties),J._`${o} = ${s}`)))}AI.checkMissingProp=MY;function qY(e,t){e.setParams({missingProperty:t},!0),e.error()}AI.reportMissingProp=qY;function OI(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:J._`Object.prototype.hasOwnProperty`})}AI.hasPropFunc=OI;function fy(e,t,r){return J._`${OI(e)}.call(${t}, ${r})`}AI.isOwnProperty=fy;function FY(e,t,r,n){let o=J._`${t}${J.getProperty(r)} !== undefined`;return n?J._`${o} && ${fy(e,t,r)}`:o}AI.propertyInData=FY;function my(e,t,r,n){let o=J._`${t}${J.getProperty(r)} === undefined`;return n?J.or(o,J.not(fy(e,t,r))):o}AI.noPropertyInData=my;function II(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}AI.allSchemaProperties=II;function UY(e,t){return II(t).filter((r)=>!ss.alwaysValidSchema(e,t[r]))}AI.schemaProperties=UY;function WY({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?J._`${e}, ${t}, ${n}${o}`:t,d=[[hn.default.instancePath,J.strConcat(hn.default.instancePath,s)],[hn.default.parentData,i.parentData],[hn.default.parentDataProperty,i.parentDataProperty],[hn.default.rootData,hn.default.rootData]];if(i.opts.dynamicRef)d.push([hn.default.dynamicAnchors,hn.default.dynamicAnchors]);let f=J._`${l}, ${r.object(...d)}`;return c!==J.nil?J._`${a}.call(${c}, ${f})`:J._`${a}(${f})`}AI.callValidateCode=WY;var VY=J._`new RegExp`;function ZY({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,s=o(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:J._`${o.code==="new RegExp"?VY:PI.useFunc(e,o)}(${r}, ${n})`})}AI.usePattern=ZY;function BY(e){let{gen:t,data:r,keyword:n,it:o}=e,s=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return i(()=>t.assign(a,!1)),a}return t.var(s,!0),i(()=>t.break()),s;function i(a){let c=t.const("len",J._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:ss.Type.Num},s),t.if(J.not(s),a)})}}AI.validateArray=BY;function KY(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>ss.alwaysValidSchema(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);if(t.assign(i,J._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(J.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}AI.validateUnion=KY});var MI=E(function(jI){Object.defineProperty(jI,"__esModule",{value:!0});jI.validateKeywordUsage=jI.validSchemaType=jI.funcKeywordCode=jI.macroKeywordCode=void 0;var ge=te(),ro=Lr(),zI=Ut(),NI=ga();function i7(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=LI(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let u=r.name("valid");e.subschema({schema:a,schemaPath:ge.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}jI.macroKeywordCode=i7;function a7(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;u7(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=LI(n,o,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1){if(g(),t.modifying)CI(e);y(()=>e.error())}else{let b=t.async?m():h();if(t.modifying)CI(e);y(()=>c7(e,b))}}function m(){let b=n.let("ruleErrs",null);return n.try(()=>g(ge._`await `),(T)=>n.assign(d,!1).if(ge._`${T} instanceof ${c.ValidationError}`,()=>n.assign(b,ge._`${T}.errors`),()=>n.throw(T))),b}function h(){let b=ge._`${l}.errors`;return n.assign(b,null),g(ge.nil),b}function g(b=t.async?ge._`await `:ge.nil){let T=c.opts.passContext?ro.default.this:ro.default.self,k=!(("compile"in t)&&!a||t.schema===!1);n.assign(d,ge._`${b}${zI.callValidateCode(e,l,T,k)}`,t.modifying)}function y(b){var T;n.if(ge.not((T=t.valid)!==null&&T!==void 0?T:d),b)}}jI.funcKeywordCode=a7;function CI(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,ge._`${n.parentData}[${n.parentDataProperty}]`))}function c7(e,t){let{gen:r}=e;r.if(ge._`Array.isArray(${t})`,()=>{r.assign(ro.default.vErrors,ge._`${ro.default.vErrors} === null ? ${t} : ${ro.default.vErrors}.concat(${t})`).assign(ro.default.errors,ge._`${ro.default.vErrors}.length`),NI.extendErrors(e)},()=>e.error())}function u7({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function LI(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:ge.stringify(r)})}function l7(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}jI.validSchemaType=l7;function d7({schema:e,opts:t,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw Error("ajv implementation error");let i=o.dependencies;if(i===null||i===void 0?void 0:i.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema){if(!o.validateSchema(e[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw Error(c)}}}jI.validateKeywordUsage=d7});var UI=E(function(qI){Object.defineProperty(qI,"__esModule",{value:!0});qI.extendSubschemaMode=qI.extendSubschemaData=qI.getSubschema=void 0;var De=te(),Fl=ue();function h7(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:De._`${e.schemaPath}${De.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:De._`${e.schemaPath}${De.getProperty(t)}${De.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${Fl.escapeFragment(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw Error('either "keyword" or "schema" must be passed')}qI.getSubschema=h7;function g7(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=a.let("data",De._`${t.data}${De.getProperty(r)}`,!0);c(f),e.errorPath=De.str`${u}${Fl.getErrorPath(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=De._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof De.Name?o:a.let("data",o,!0);if(c(u),i!==void 0)e.propertyName=i}if(s)e.dataTypes=s;function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}qI.extendSubschemaData=g7;function y7(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){if(n!==void 0)e.compositeRule=n;if(o!==void 0)e.createErrors=o;if(s!==void 0)e.allErrors=s;e.jtdDiscriminator=t,e.jtdMetadata=r}qI.extendSubschemaMode=y7});var hy=E(function(Vve,WI){WI.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!e(t[i],r[i]))return!1}return!0}return t!==t&&r!==r}});var ZI=E(function(Zve,VI){var gn=VI.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ul(t,n,o,e,"",e)};gn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};gn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};gn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};gn.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 Ul(e,t,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in gn.arrayKeywords)for(var f=0;f<d.length;f++)Ul(e,t,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in gn.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ul(e,t,r,d[m],o+"/"+l+"/"+_7(m),s,o,l,n,m)}else if(l in gn.keywords||e.allKeys&&!(l in gn.skipKeywords))Ul(e,t,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function _7(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var wa=E(function(JI){Object.defineProperty(JI,"__esModule",{value:!0});JI.getSchemaRefs=JI.resolveUrl=JI.normalizeId=JI._getFullPath=JI.getFullPath=JI.inlineRef=void 0;var BI=ue(),S7=hy(),v7=ZI(),k7=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function x7(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!gy(e);if(!t)return!1;return KI(e)<=t}JI.inlineRef=x7;var $7=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function gy(e){for(let t in e){if($7.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(gy))return!0;if(typeof r=="object"&&gy(r))return!0}return!1}function KI(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,k7.has(r))continue;if(typeof e[r]=="object")BI.eachItem(e[r],(n)=>t+=KI(n));if(t===1/0)return 1/0}return t}function HI(e,t="",r){if(r!==!1)t=is(t);let n=e.parse(t);return GI(e,n)}JI.getFullPath=HI;function GI(e,t){return e.serialize(t).split("#")[0]+"#"}JI._getFullPath=GI;var T7=/#\/?$/;function is(e){return e?e.replace(T7,""):""}JI.normalizeId=is;function E7(e,t,r){return r=is(r),e.resolve(t,r)}JI.resolveUrl=E7;var P7=/^[a-z_][-a-z0-9._]*$/i;function O7(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=is(e[r]||t),s={"":o},i=HI(n,o,!1),a={},c=new Set;return v7(e,{allKeys:!0},(d,f,m,h)=>{if(h===void 0)return;let g=i+f,y=s[h];if(typeof d[r]=="string")y=b.call(this,d[r]);T.call(this,d.$anchor),T.call(this,d.$dynamicAnchor),s[f]=y;function b(k){let I=this.opts.uriResolver.resolve;if(k=is(y?I(y,k):k),c.has(k))throw l(k);c.add(k);let _=this.refs[k];if(typeof _=="string")_=this.refs[_];if(typeof _=="object")u(d,_.schema,k);else if(k!==is(g))if(k[0]==="#")u(d,a[k],k),a[k]=d;else this.refs[k]=g;return k}function T(k){if(typeof k=="string"){if(!P7.test(k))throw Error(`invalid anchor "${k}"`);b.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!S7(d,f))throw l(m)}function l(d){return Error(`reference "${d}" resolves to more than one schema`)}}JI.getSchemaRefs=O7});var ba=E(function(pA){Object.defineProperty(pA,"__esModule",{value:!0});pA.getData=pA.KeywordCxt=pA.validateFunctionCode=void 0;var Vl=uI(),Wl=ya(),cs=uy(),yn=ya(),tA=EI(),mr=MI(),as=UI(),R=te(),X=Lr(),rA=wa(),Ke=ue(),fr=ga();function N7(e){if(sA(e)){if(iA(e),oA(e)){D7(e);return}}nA(e,()=>Vl.topBoolOrEmptySchema(e))}pA.validateFunctionCode=N7;function nA({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,R._`${X.default.data}, ${X.default.valCxt}`,n.$async,()=>{e.code(R._`"use strict"; ${XI(r,o)}`),j7(e,o),e.code(s)});else e.func(t,R._`${X.default.data}, ${L7(o)}`,n.$async,()=>e.code(XI(r,o)).code(s))}function L7(e){return R._`{${X.default.instancePath}="", ${X.default.parentData}, ${X.default.parentDataProperty}, ${X.default.rootData}=${X.default.data}${e.dynamicRef?R._`, ${X.default.dynamicAnchors}={}`:R.nil}}={}`}function j7(e,t){e.if(X.default.valCxt,()=>{if(e.var(X.default.instancePath,R._`${X.default.valCxt}.${X.default.instancePath}`),e.var(X.default.parentData,R._`${X.default.valCxt}.${X.default.parentData}`),e.var(X.default.parentDataProperty,R._`${X.default.valCxt}.${X.default.parentDataProperty}`),e.var(X.default.rootData,R._`${X.default.valCxt}.${X.default.rootData}`),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`${X.default.valCxt}.${X.default.dynamicAnchors}`)},()=>{if(e.var(X.default.instancePath,R._`""`),e.var(X.default.parentData,R._`undefined`),e.var(X.default.parentDataProperty,R._`undefined`),e.var(X.default.rootData,X.default.data),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`{}`)})}function D7(e){let{schema:t,opts:r,gen:n}=e;nA(e,()=>{if(r.$comment&&t.$comment)cA(e);if(W7(e),n.let(X.default.vErrors,null),n.let(X.default.errors,0),r.unevaluated)M7(e);aA(e),B7(e)});return}function M7(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",R._`${r}.evaluated`),t.if(R._`${e.evaluated}.dynamicProps`,()=>t.assign(R._`${e.evaluated}.props`,R._`undefined`)),t.if(R._`${e.evaluated}.dynamicItems`,()=>t.assign(R._`${e.evaluated}.items`,R._`undefined`))}function XI(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?R._`/*# sourceURL=${r} */`:R.nil}function q7(e,t){if(sA(e)){if(iA(e),oA(e)){F7(e,t);return}}Vl.boolOrEmptySchema(e,t)}function oA({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function sA(e){return typeof e.schema!="boolean"}function F7(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)cA(e);V7(e),Z7(e);let s=n.const("_errs",X.default.errors);aA(e,s),n.var(t,R._`${s} === ${X.default.errors}`)}function iA(e){Ke.checkUnknownRules(e),U7(e)}function aA(e,t){if(e.opts.jtd)return QI(e,[],!1,t);let r=Wl.getSchemaTypes(e.schema),n=Wl.coerceAndCheckDataType(e,r);QI(e,r,!n,t)}function U7(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Ke.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function W7(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Ke.checkStrictMode(e,"default is ignored in the schema root")}function V7(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=rA.resolveUrl(e.opts.uriResolver,e.baseId,t)}function Z7(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function cA({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(R._`${X.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=R.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(R._`${X.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function B7(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(R._`${X.default.errors} === 0`,()=>t.return(X.default.data),()=>t.throw(R._`new ${o}(${X.default.vErrors})`));else{if(t.assign(R._`${n}.errors`,X.default.vErrors),s.unevaluated)K7(e);t.return(R._`${X.default.errors} === 0`)}}function K7({gen:e,evaluated:t,props:r,items:n}){if(r instanceof R.Name)e.assign(R._`${t}.props`,r);if(n instanceof R.Name)e.assign(R._`${t}.items`,n)}function QI(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=e,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!Ke.schemaHasRulesButRef(s,l))){o.block(()=>lA(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)H7(e,t);o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){if(!cs.shouldUseGroup(s,f))return;if(f.type){if(o.if(yn.checkDataType(f.type,i,c.strictNumbers)),eA(e,f),t.length===1&&t[0]===f.type&&r)o.else(),yn.reportTypeError(e);o.endIf()}else eA(e,f);if(!a)o.if(R._`${X.default.errors} === ${n||0}`)}}function eA(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)tA.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(cs.shouldUseRule(n,s))lA(e,s.keyword,s.definition,t.type)})}function H7(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(G7(e,t),!e.opts.allowUnionTypes)J7(e,t);Y7(e,e.dataTypes)}function G7(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!uA(e.dataTypes,r))yy(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Q7(e,t)}function J7(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))yy(e,"use allowUnionTypes to allow union type keyword")}function Y7(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&cs.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>X7(t,i)))yy(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function X7(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function uA(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Q7(e,t){let r=[];for(let n of e.dataTypes)if(uA(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function yy(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Ke.checkStrictMode(e,t,e.opts.strictTypes)}class wy{constructor(e,t,r){if(mr.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=Ke.schemaRefOrVal(e,this.schema,r,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",dA(this.$data,e));else if(this.schemaCode=this.schemaValue,!mr.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",X.default.errors)}result(e,t,r){this.failResult(R.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(R.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(R._`${t} !== undefined && (${R.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?fr.reportExtraError:fr.reportError)(this,this.def.error,t)}$dataError(){fr.reportError(this,this.def.$dataError||fr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');fr.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=R.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=R.nil,t=R.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:o,def:s}=this;if(r.if(R.or(R._`${n} === undefined`,t)),e!==R.nil)r.assign(e,!0);if(o.length||s.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==R.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:o}=this;return R.or(s(),i());function s(){if(r.length){if(!(t instanceof R.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return R._`${yn.checkDataTypes(a,t,o.opts.strictNumbers,yn.DataType.Wrong)}`}return R.nil}function i(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return R._`!${a}(${t})`}return R.nil}}subschema(e,t){let r=as.getSubschema(this.it,e);as.extendSubschemaData(r,this.it,e),as.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return q7(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=Ke.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Ke.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,R.Name)),!0}}pA.KeywordCxt=wy;function lA(e,t,r,n){let o=new wy(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)mr.funcKeywordCode(o,r);else if("macro"in r)mr.macroKeywordCode(o,r);else if(r.compile||r.validate)mr.funcKeywordCode(o,r)}var e8=/^\/(?:[^~]|~0|~1)*$/,t8=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function dA(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return X.default.rootData;if(e[0]==="/"){if(!e8.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=X.default.rootData}else{let u=t8.exec(e);if(!u)throw Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=t)throw Error(c("property/index",l));return n[t-l]}if(l>t)throw Error(c("data",l));if(s=r[t-l],!o)return s}let i=s,a=o.split("/");for(let u of a)if(u)s=R._`${s}${R.getProperty(Ke.unescapeJsonPointer(u))}`,i=R._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}pA.getData=dA});var Zl=E(function(hA){Object.defineProperty(hA,"__esModule",{value:!0});class mA extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}hA.default=mA});var _a=E(function(yA){Object.defineProperty(yA,"__esModule",{value:!0});var us=wa();class gA extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=us.resolveUrl(e,t,r),this.missingSchema=us.normalizeId(us.getFullPath(e,this.missingRef))}}yA.default=gA});var Hl=E(function(_A){Object.defineProperty(_A,"__esModule",{value:!0});_A.resolveSchema=_A.getCompilingSchema=_A.resolveRef=_A.compileSchema=_A.SchemaEnv=void 0;var Re=te(),i8=Zl(),no=Lr(),Ce=wa(),Bl=ue(),wA=ba();class Sa{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:Ce.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}_A.SchemaEnv=Sa;function _y(e){let t=bA.call(this,e);if(t)return t;let r=Ce.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Re.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:i8.default,code:Re._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:no.default.data,parentData:no.default.parentData,parentDataProperty:no.default.parentDataProperty,dataNames:[no.default.data],dataPathArr:[Re.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Re.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Re.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Re._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),wA.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let d=i.toString();if(l=`${i.scopeRefs(no.default.scope)}return ${d}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${no.default.self}`,`${no.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:c,validateCode:d,scopeValues:i._values};if(this.opts.unevaluated){let{props:h,items:g}=u;if(m.evaluated={props:h instanceof Re.Name?void 0:h,items:g instanceof Re.Name?void 0:g,dynamicProps:h instanceof Re.Name,dynamicItems:g instanceof Re.Name},m.source)m.source.evaluated=Re.stringify(m.evaluated)}return e.validate=m,e}catch(d){if(delete e.validate,delete e.validateName,l)this.logger.error("Error compiling schema, function code:",l);throw d}finally{this._compilations.delete(e)}}_A.compileSchema=_y;function a8(e,t,r){var n;r=Ce.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=l8.call(this,e,r);if(s===void 0){let i=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(i)s=new Sa({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=c8.call(this,s)}_A.resolveRef=a8;function c8(e){if(Ce.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:_y.call(this,e)}function bA(e){for(let t of this._compilations)if(u8(t,e))return t}_A.getCompilingSchema=bA;function u8(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function l8(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Kl.call(this,e,t)}function Kl(e,t){let r=this.opts.uriResolver.parse(t),n=Ce._getFullPath(this.opts.uriResolver,r),o=Ce.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return by.call(this,r,e);let s=Ce.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Kl.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return by.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)_y.call(this,i);if(s===Ce.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Ce.resolveUrl(this.opts.uriResolver,o,u);return new Sa({schema:a,schemaId:c,root:e,baseId:o})}return by.call(this,r,i)}_A.resolveSchema=Kl;var d8=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function by(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let c=r[Bl.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!d8.has(a)&&u)t=Ce.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!Bl.schemaHasRulesButRef(r,this.RULES)){let a=Ce.resolveUrl(this.opts.uriResolver,t,r.$ref);s=Kl.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Sa({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var vA=E(function(Yve,g8){g8.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}});var ky=E(function(Xve,PA){var y8=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),xA=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),Sy=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),$A=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),w8=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function vy(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var b8=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function kA(e){return e.length=0,!0}function _8(e,t,r){if(e.length){let n=vy(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function S8(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=_8;for(let c=0;c<e.length;c++){let u=e[c];if(u==="["||u==="]")continue;if(u===":"){if(s===!0)i=!0;if(!a(o,n,r))break;if(++t>7){r.error=!0;break}if(c>0&&e[c-1]===":")s=!0;n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=kA}else{o.push(u);continue}}if(o.length)if(a===kA)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(vy(o));return r.address=n.join(""),r}function TA(e){if(v8(e,":")<2)return{host:e,isIPV6:!1};let t=S8(e);if(!t.error){let{address:r,address:n}=t;if(t.zone)r+="%"+t.zone,n+="%25"+t.zone;return{host:r,isIPV6:!0,escapedHost:n}}else return{host:e,isIPV6:!1}}function v8(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function k8(e){let t=e,r=[],n=-1,o=0;while(o=t.length){if(o===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(o===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(o===3){if(t==="/.."){if(r.length!==0)r.pop();r.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]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}var x8={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},$8=/[@/?#:]/g,T8=/[@/?#]/g;function EA(e,t){let r=t?T8:$8;return r.lastIndex=0,e.replace(r,(n)=>x8[n])}function E8(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(Sy(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&$A(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function P8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Sy(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&$A(s))t+=s;else t+="%"+o;r+=2;continue}}if(w8(e[r]))t+=e[r];else t+=escape(e[r])}return t}function O8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(Sy(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function I8(e){let t=[];if(e.userinfo!==void 0)t.push(e.userinfo),t.push("@");if(e.host!==void 0){let r=unescape(e.host);if(!xA(r)){let n=TA(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=EA(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string")t.push(":"),t.push(String(e.port));return t.length?t.join(""):void 0}PA.exports={nonSimpleDomain:b8,recomposeAuthority:I8,reescapeHostDelimiters:EA,normalizePercentEncoding:E8,normalizePathEncoding:P8,escapePreservingEscapes:O8,removeDotSegments:k8,isIPv4:xA,isUUID:y8,normalizeIPv6:TA,stringArrayToHexStripped:vy}});var CA=E(function(Qve,RA){var{isUUID:A8}=ky(),R8=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,C8=["http","https","ws","wss","urn","urn:uuid"];function z8(e){return C8.indexOf(e)!==-1}function xy(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return 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");else return!1}function OA(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function IA(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function N8(e){return e.secure=xy(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function L8(e){if(e.port===(xy(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function j8(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(R8);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,s=$y(o);if(e.path=void 0,s)e=s.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function D8(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,s=$y(o);if(s)e=s.serialize(e,t);let i=e,a=e.nss;return i.path=`${n||t.nid}:${a}`,t.skipEscape=!0,i}function M8(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!A8(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function q8(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var AA={scheme:"http",domainHost:!0,parse:OA,serialize:IA},F8={scheme:"https",domainHost:AA.domainHost,parse:OA,serialize:IA},Gl={scheme:"ws",domainHost:!0,parse:N8,serialize:L8},U8={scheme:"wss",domainHost:Gl.domainHost,parse:Gl.parse,serialize:Gl.serialize},W8={scheme:"urn",parse:j8,serialize:D8,skipNormalize:!0},V8={scheme:"urn:uuid",parse:M8,serialize:q8,skipNormalize:!0},Jl={http:AA,https:F8,ws:Gl,wss:U8,urn:W8,"urn:uuid":V8};Object.setPrototypeOf(Jl,null);function $y(e){return e&&(Jl[e]||Jl[e.toLowerCase()])||void 0}RA.exports={wsIsSecure:xy,SCHEMES:Jl,isValidSchemeName:z8,getSchemeHandler:$y}});var MA=E(function(eke,Yl){var{normalizeIPv6:Z8,removeDotSegments:va,recomposeAuthority:B8,normalizePercentEncoding:K8,normalizePathEncoding:H8,escapePreservingEscapes:G8,reescapeHostDelimiters:J8,isIPv4:Y8,nonSimpleDomain:X8}=ky(),{SCHEMES:Q8,getSchemeHandler:NA}=CA();function eX(e,t){if(typeof e==="string")e=iX(e,t);else if(typeof e==="object")e=ls(oo(e,t),t);return e}function tX(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=LA(ls(e,n),ls(t,n),n,!0);return n.skipEscape=!0,oo(o,n)}function LA(e,t,r,n){let o={};if(!n)e=ls(oo(e,r),r),t=ls(oo(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=va(t.path||""),o.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=va(t.path||""),o.query=t.query;else{if(!t.path)if(o.path=e.path,t.query!==void 0)o.query=t.query;else o.query=e.query;else{if(t.path[0]==="/")o.path=va(t.path);else{if((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path)o.path="/"+t.path;else if(!e.path)o.path=t.path;else o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;o.path=va(o.path)}o.query=t.query}o.userinfo=e.userinfo,o.host=e.host,o.port=e.port}o.scheme=e.scheme}return o.fragment=t.fragment,o}function rX(e,t,r){let n=zA(e,r),o=zA(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function oo(e,t){let r={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:""},n=Object.assign({},t),o=[],s=NA(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=G8(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=K8(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=B8(r);if(i!==void 0){if(n.reference!=="suffix")o.push("//");if(o.push(i),r.path&&r.path[0]!=="/")o.push("/")}if(r.path!==void 0){let a=r.path;if(!n.absolutePath&&(!s||!s.absolutePath))a=va(a);if(i===void 0&&a[0]==="/"&&a[1]==="/")a="/%2F"+a.slice(2);o.push(a)}if(r.query!==void 0)o.push("?",r.query);if(r.fragment!==void 0)o.push("#",r.fragment);return o.join("")}var nX=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,oX=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function sX(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.";return}function jA(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let i=e.match(oX);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(nX);if(a){if(n.scheme=a[1],n.userinfo=a[3],n.host=a[4],n.port=parseInt(a[5],10),n.path=a[6]||"",n.query=a[7],n.fragment=a[8],isNaN(n.port))n.port=a[5];let c=sX(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(Y8(n.host)===!1){let d=Z8(n.host);n.host=d.host.toLowerCase(),s=d.isIPV6}else s=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let u=NA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&X8(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}}if(!u||u&&!u.skipNormalize){if(e.indexOf("%")!==-1){if(n.scheme!==void 0)n.scheme=unescape(n.scheme);if(n.host!==void 0)n.host=J8(unescape(n.host),s)}if(n.path)n.path=H8(n.path);if(n.fragment)try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}}if(u&&u.parse)u.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function ls(e,t){return jA(e,t).parsed}function iX(e,t){return DA(e,t).normalized}function DA(e,t){let{parsed:r,malformedAuthorityOrPort:n}=jA(e,t);return{normalized:n?e:oo(r,t),malformedAuthorityOrPort:n}}function zA(e,t){if(typeof e==="string"){let{normalized:r,malformedAuthorityOrPort:n}=DA(e,t);return n?void 0:r}if(typeof e==="object")return oo(e,t)}var Ty={SCHEMES:Q8,normalize:eX,resolve:tX,resolveComponent:LA,equal:rX,serialize:oo,parse:ls};Yl.exports=Ty;Yl.exports.default=Ty;Yl.exports.fastUri=Ty});var UA=E(function(FA){Object.defineProperty(FA,"__esModule",{value:!0});var qA=MA();qA.code='require("ajv/dist/runtime/uri").default';FA.default=qA});var XA=E(function(jr){Object.defineProperty(jr,"__esModule",{value:!0});jr.CodeGen=jr.Name=jr.nil=jr.stringify=jr.str=jr._=jr.KeywordCxt=void 0;var cX=ba();Object.defineProperty(jr,"KeywordCxt",{enumerable:!0,get:function(){return cX.KeywordCxt}});var ps=te();Object.defineProperty(jr,"_",{enumerable:!0,get:function(){return ps._}});Object.defineProperty(jr,"str",{enumerable:!0,get:function(){return ps.str}});Object.defineProperty(jr,"stringify",{enumerable:!0,get:function(){return ps.stringify}});Object.defineProperty(jr,"nil",{enumerable:!0,get:function(){return ps.nil}});Object.defineProperty(jr,"Name",{enumerable:!0,get:function(){return ps.Name}});Object.defineProperty(jr,"CodeGen",{enumerable:!0,get:function(){return ps.CodeGen}});var uX=Zl(),KA=_a(),HA=cy(),hr=Hl(),GA=te(),gr=wa(),wn=ya(),ds=ue(),WA=vA(),lX=UA(),JA=(e,t)=>new RegExp(e,t);JA.code="new RegExp";var dX=["removeAdditional","useDefaults","coerceTypes"],pX=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),fX={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."},mX={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},VA=200;function hX(e){var t,r,n,o,s,i,a,c,u,l,d,f,m,h,g,y,b,T,k,I,_,S,x,A,D;let Y=e.strict,ie=(t=e.code)===null||t===void 0?void 0:t.optimize,ae=ie===!0||ie===void 0?1:ie||0,qe=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:JA,W=(o=e.uriResolver)!==null&&o!==void 0?o:lX.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:Y)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Y)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:Y)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:Y)!==null&&f!==void 0?f:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:Y)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:ae,regExp:qe}:{optimize:ae,regExp:qe},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:VA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:VA,meta:(b=e.meta)!==null&&b!==void 0?b:!0,messages:(T=e.messages)!==null&&T!==void 0?T:!0,inlineRefs:(k=e.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(I=e.schemaId)!==null&&I!==void 0?I:"$id",addUsedSchema:(_=e.addUsedSchema)!==null&&_!==void 0?_:!0,validateSchema:(S=e.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(x=e.validateFormats)!==null&&x!==void 0?x:!0,unicodeRegExp:(A=e.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(D=e.int32range)!==null&&D!==void 0?D:!0,uriResolver:W}}class Xl{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...hX(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new GA.ValueScope({scope:{},prefixes:pX,es5:t,lines:r}),this.logger=SX(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=HA.getRules(),ZA.call(this,fX,e,"NOT SUPPORTED"),ZA.call(this,mX,e,"DEPRECATED","warn"),this._metaOpts=bX.call(this),e.formats)yX.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)wX.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);gX.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=WA;if(r==="id")n={...WA},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!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 r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(u,l){await o.call(this,u.$schema);let d=this._addSchema(u,l);return d.validate||s.call(this,d)}async function o(u){if(u&&!this.getSchema(u))await n.call(this,{$ref:u},!0)}async function s(u){try{return this._compileSchemaEnv(u)}catch(l){if(!(l instanceof KA.default))throw l;return i.call(this,l),await a.call(this,l.missingSchema),s.call(this,u)}}function i({missingSchema:u,missingRef:l}){if(this.refs[u])throw Error(`AnySchema ${u} is loaded but ${l} cannot be resolved`)}async function a(u){let l=await c.call(this,u);if(!this.refs[u])await o.call(this,l.$schema);if(!this.refs[u])this.addSchema(l,u,t)}async function c(u){let l=this._loading[u];if(l)return l;try{return await(this._loading[u]=r(u))}finally{delete this._loading[u]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let s of e)this.addSchema(s,void 0,r,n);return this}let o;if(typeof e==="object"){let{schemaId:s}=this.opts;if(o=e[s],o!==void 0&&typeof o!="string")throw Error(`schema ${s} must be string`)}return t=gr.normalizeId(t||o),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw Error(o)}return n}getSchema(e){let t;while(typeof(t=BA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new hr.SchemaEnv({schema:{},schemaId:r});if(t=hr.resolveSchema.call(this,n,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=BA.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=gr.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(kX.call(this,r,t),!t)return ds.eachItem(r,(o)=>Ey.call(this,o)),this;$X.call(this,t);let n={...t,type:wn.getJSONTypes(t.type),schemaType:wn.getJSONTypes(t.schemaType)};return ds.eachItem(r,n.type.length===0?(o)=>Ey.call(this,o,n):(o)=>n.type.forEach((s)=>Ey.call(this,o,n,s))),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 r of t.rules){let n=r.rules.findIndex((o)=>o.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,o)=>n+t+o)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let o=n.split("/").slice(1),s=e;for(let i of o)s=s[i];for(let i in r){let a=r[i];if(typeof a!="object")continue;let{$data:c}=a.definition,u=s[i];if(c&&u)s[i]=YA(u)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,o=this.opts.addUsedSchema){let s,{schemaId:i}=this.opts;if(typeof e=="object")s=e[i];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 a=this._cache.get(e);if(a!==void 0)return a;r=gr.normalizeId(s||r);let c=gr.getSchemaRefs.call(this,e,r);if(a=new hr.SchemaEnv({schema:e,schemaId:i,meta:t,baseId:r,localRefs:c}),this._cache.set(a.schema,a),o&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else hr.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{hr.compileSchema.call(this,e)}finally{this.opts=t}}}Xl.ValidationError=uX.default;Xl.MissingRefError=KA.default;jr.default=Xl;function ZA(e,t,r,n="error"){for(let o in e){let s=o;if(s in t)this.logger[n](`${r}: option ${o}. ${e[s]}`)}}function BA(e){return e=gr.normalizeId(e),this.schemas[e]||this.refs[e]}function gX(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function yX(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function wX(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 r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function bX(){let e={...this.opts};for(let t of dX)delete e[t];return e}var _X={log(){},warn(){},error(){}};function SX(e){if(e===!1)return _X;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")}var vX=/^[a-z_$][a-z0-9_$:-]*$/i;function kX(e,t){let{RULES:r}=this;if(ds.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!vX.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function Ey(e,t,r){var n;let o=t===null||t===void 0?void 0:t.post;if(r&&o)throw Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(!i)i={type:r,rules:[]},s.rules.push(i);if(s.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:wn.getJSONTypes(t.type),schemaType:wn.getJSONTypes(t.schemaType)}};if(t.before)xX.call(this,i,a,t.before);else i.rules.push(a);s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((c)=>this.addKeyword(c))}function xX(e,t,r){let n=e.rules.findIndex((o)=>o.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function $X(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=YA(t);e.validateSchema=this.compile(t,!0)}var TX={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function YA(e){return{anyOf:[e,TX]}}});var eR=E(function(QA){Object.defineProperty(QA,"__esModule",{value:!0});var OX={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};QA.default=OX});var oR=E(function(rR){Object.defineProperty(rR,"__esModule",{value:!0});rR.callRef=rR.getValidate=void 0;var AX=_a(),ed=Ut(),_e=te(),fs=Lr(),td=Hl(),bn=ue(),RX={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=td.resolveRef.call(c,u,o,r);if(l===void 0)throw new AX.default(n.opts.uriResolver,o,r);if(l instanceof td.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ql(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return Ql(e,_e._`${h}.validate`,u,u.$async)}function f(h){let g=tR(e,h);Ql(e,g,h,h.$async)}function m(h){let g=t.scopeValue("schema",a.code.source===!0?{ref:h,code:_e.stringify(h)}:{ref:h}),y=t.name("valid"),b=e.subschema({schema:h,dataTypes:[],schemaPath:_e.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(b),e.ok(y)}}};function tR(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):_e._`${r.scopeValue("wrapper",{ref:t})}.validate`}rR.getValidate=tR;function Ql(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?fs.default.this:_e.nil;if(n)l();else d();function l(){if(!a.$async)throw Error("async schema referenced by sync schema");let h=o.let("valid");o.try(()=>{if(o.code(_e._`await ${ed.callValidateCode(e,t,u)}`),m(t),!i)o.assign(h,!0)},(g)=>{if(o.if(_e._`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),f(g),!i)o.assign(h,!1)}),e.ok(h)}function d(){e.result(ed.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=_e._`${h}.errors`;o.assign(fs.default.vErrors,_e._`${fs.default.vErrors} === null ? ${g} : ${fs.default.vErrors}.concat(${g})`),o.assign(fs.default.errors,_e._`${fs.default.vErrors}.length`)}function m(h){var g;if(!s.opts.unevaluated)return;let y=(g=r===null||r===void 0?void 0:r.validate)===null||g===void 0?void 0:g.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps){if(y.props!==void 0)s.props=bn.mergeEvaluated.props(o,y.props,s.props)}else{let b=o.var("props",_e._`${h}.evaluated.props`);s.props=bn.mergeEvaluated.props(o,b,s.props,_e.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=bn.mergeEvaluated.items(o,y.items,s.items)}else{let b=o.var("items",_e._`${h}.evaluated.items`);s.items=bn.mergeEvaluated.items(o,b,s.items,_e.Name)}}}rR.callRef=Ql;rR.default=RX});var iR=E(function(sR){Object.defineProperty(sR,"__esModule",{value:!0});var NX=eR(),LX=oR(),jX=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",NX.default,LX.default];sR.default=jX});var cR=E(function(aR){Object.defineProperty(aR,"__esModule",{value:!0});var Sn=te(),_n=Sn.operators,rd={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}},MX={message:({keyword:e,schemaCode:t})=>Sn.str`must be ${rd[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Sn._`{comparison: ${rd[e].okStr}, limit: ${t}}`},qX={keyword:Object.keys(rd),type:"number",schemaType:"number",$data:!0,error:MX,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(Sn._`${r} ${rd[t].fail} ${n} || isNaN(${r})`)}};aR.default=qX});var lR=E(function(uR){Object.defineProperty(uR,"__esModule",{value:!0});var yr=te(),UX={message:({schemaCode:e})=>yr.str`must be multiple of ${e}`,params:({schemaCode:e})=>yr._`{multipleOf: ${e}}`},WX={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:UX,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?yr._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:yr._`${i} !== parseInt(${i})`;e.fail$data(yr._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};uR.default=WX});var fR=E(function(pR){Object.defineProperty(pR,"__esModule",{value:!0});function dR(e){let t=e.length,r=0,n=0,o;while(n<t)if(r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t){if(o=e.charCodeAt(n),(o&64512)===56320)n++}return r}pR.default=dR;dR.code='require("ajv/dist/runtime/ucs2length").default'});var gR=E(function(hR){Object.defineProperty(hR,"__esModule",{value:!0});var ht=te(),mR=ue(),BX=fR(),KX={message({keyword:e,schemaCode:t}){return ht.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>ht._`{limit: ${e}}`},HX={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:KX,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?ht.operators.GT:ht.operators.LT,i=o.opts.unicode===!1?ht._`${r}.length`:ht._`${mR.useFunc(e.gen,BX.default)}(${r})`;e.fail$data(ht._`${i} ${s} ${n}`)}};hR.default=HX});var _R=E(function(bR){Object.defineProperty(bR,"__esModule",{value:!0});var yR=Ut(),wR=ue(),Wt=te(),JX={message:({schemaCode:e})=>Wt.str`must match pattern "${e}"`,params:({schemaCode:e})=>Wt._`{pattern: ${e}}`},YX={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:JX,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?Wt._`new RegExp`:wR.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,Wt._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(Wt._`!${l}`)}else{let c=yR.usePattern(e,o);e.fail$data(Wt._`!${c}.test(${r})`)}}};bR.default=YX});var vR=E(function(SR){Object.defineProperty(SR,"__esModule",{value:!0});var wr=te(),QX={message({keyword:e,schemaCode:t}){return wr.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>wr._`{limit: ${e}}`},eQ={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:QX,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?wr.operators.GT:wr.operators.LT;e.fail$data(wr._`Object.keys(${r}).length ${o} ${n}`)}};SR.default=eQ});var $R=E(function(xR){Object.defineProperty(xR,"__esModule",{value:!0});var br=Ut(),_r=te(),kR=ue(),rQ={message:({params:{missingProperty:e}})=>_r.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>_r._`{missingProperty: ${e}}`},nQ={keyword:"required",type:"object",schemaType:"array",$data:!0,error:rQ,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:s,it:i}=e,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors)u();else l();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:h}=e.it;for(let g of r)if((m===null||m===void 0?void 0:m[g])===void 0&&!h.has(g)){let y=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${g}" is not defined at "${y}" (strictRequired)`;kR.checkStrictMode(i,b,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(_r.nil,d);else for(let m of r)br.checkReportMissingProp(e,m)}function l(){let m=t.let("missing");if(c||s){let h=t.let("valid",!0);e.block$data(h,()=>f(m,h)),e.ok(h)}else t.if(br.checkMissingProp(e,r,m)),br.reportMissingProp(e,m),t.else()}function d(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(br.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,br.propertyInData(t,o,m,a.ownProperties)),t.if(_r.not(h),()=>{e.error(),t.break()})},_r.nil)}}};xR.default=nQ});var ER=E(function(TR){Object.defineProperty(TR,"__esModule",{value:!0});var Sr=te(),sQ={message({keyword:e,schemaCode:t}){return Sr.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>Sr._`{limit: ${e}}`},iQ={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:sQ,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?Sr.operators.GT:Sr.operators.LT;e.fail$data(Sr._`${r}.length ${o} ${n}`)}};TR.default=iQ});var nd=E(function(OR){Object.defineProperty(OR,"__esModule",{value:!0});var PR=hy();PR.code='require("ajv/dist/runtime/equal").default';OR.default=PR});var RR=E(function(AR){Object.defineProperty(AR,"__esModule",{value:!0});var ms=ya(),le=te(),IR=ue(),uQ=nd(),lQ={message:({params:{i:e,j:t}})=>le.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>le._`{i: ${e}, j: ${t}}`},dQ={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:lQ,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),u=s.items?ms.getSchemaTypes(s.items):[];e.block$data(c,l,le._`${i} === false`),e.ok(c);function l(){let h=t.let("i",le._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(le._`${h} > 1`,()=>(d()?f:m)(h,g))}function d(){return u.length>0&&!u.some((h)=>h==="object"||h==="array")}function f(h,g){let y=t.name("item"),b=ms.checkDataTypes(u,y,a.opts.strictNumbers,ms.DataType.Wrong),T=t.const("indices",le._`{}`);t.for(le._`;${h}--;`,()=>{if(t.let(y,le._`${r}[${h}]`),t.if(b,le._`continue`),u.length>1)t.if(le._`typeof ${y} == "string"`,le._`${y} += "_"`);t.if(le._`typeof ${T}[${y}] == "number"`,()=>{t.assign(g,le._`${T}[${y}]`),e.error(),t.assign(c,!1).break()}).code(le._`${T}[${y}] = ${h}`)})}function m(h,g){let y=IR.useFunc(t,uQ.default),b=t.name("outer");t.label(b).for(le._`;${h}--;`,()=>t.for(le._`${g} = ${h}; ${g}--;`,()=>t.if(le._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(b)})))}}};AR.default=dQ});var NR=E(function(zR){Object.defineProperty(zR,"__esModule",{value:!0});var hs=te(),CR=ue(),fQ=nd(),mQ={message:"must be equal to constant",params:({schemaCode:e})=>hs._`{allowedValue: ${e}}`},hQ={keyword:"const",$data:!0,error:mQ,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(hs._`!${CR.useFunc(t,fQ.default)}(${r}, ${o})`);else e.fail(hs._`${s} !== ${r}`)}};zR.default=hQ});var DR=E(function(jR){Object.defineProperty(jR,"__esModule",{value:!0});var vr=te(),LR=ue(),yQ=nd(),wQ={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>vr._`{allowedValues: ${e}}`},bQ={keyword:"enum",schemaType:"array",$data:!0,error:wQ,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e;if(!n&&o.length===0)throw Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c!==null&&c!==void 0?c:c=LR.useFunc(t,yQ.default),l;if(a||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(o))throw Error("ajv implementation error");let m=t.const("vSchema",s);l=vr.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(vr._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?vr._`${u()}(${r}, ${m}[${h}])`:vr._`${r} === ${g}`}}};jR.default=bQ});var qR=E(function(MR){Object.defineProperty(MR,"__esModule",{value:!0});var SQ=cR(),vQ=lR(),kQ=gR(),xQ=_R(),$Q=vR(),TQ=$R(),EQ=ER(),PQ=RR(),OQ=NR(),IQ=DR(),AQ=[SQ.default,vQ.default,kQ.default,xQ.default,$Q.default,TQ.default,EQ.default,PQ.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},OQ.default,IQ.default];MR.default=AQ});var Py=E(function(UR){Object.defineProperty(UR,"__esModule",{value:!0});UR.validateAdditionalItems=void 0;var gt=te(),gs=ue(),CQ={message:({params:{len:e}})=>gt.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>gt._`{limit: ${e}}`},zQ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:CQ,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){gs.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}FR(e,n)}};function FR(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",gt._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(gt._`${a} <= ${t.length}`);else if(typeof n=="object"&&!gs.alwaysValidSchema(i,n)){let u=r.var("valid",gt._`${a} <= ${t.length}`);r.if(gt.not(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,a,(l)=>{if(e.subschema({keyword:s,dataProp:l,dataPropType:gs.Type.Num},u),!i.allErrors)r.if(gt.not(u),()=>r.break())})}}UR.validateAdditionalItems=FR;UR.default=zQ});var Oy=E(function(BR){Object.defineProperty(BR,"__esModule",{value:!0});BR.validateTuple=void 0;var od=te(),vn=ue(),VR=Ut(),LQ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return ZR(e,"additionalItems",t);if(r.items=!0,vn.alwaysValidSchema(r,t))return;e.ok(VR.validateArray(e))}};function ZR(e,t,r=e.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=e;if(l(o),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=vn.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",od._`${s}.length`);r.forEach((d,f)=>{if(vn.alwaysValidSchema(a,d))return;n.if(od._`${u} > ${f}`,()=>e.subschema({keyword:i,schemaProp:f,dataProp:f},c)),e.ok(c)});function l(d){let{opts:f,errSchemaPath:m}=a,h=r.length,g=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!g){let y=`"${i}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;vn.checkStrictMode(a,y,f.strictTuples)}}}BR.validateTuple=ZR;BR.default=LQ});var JR=E(function(GR){Object.defineProperty(GR,"__esModule",{value:!0});var HR=Oy(),DQ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>HR.validateTuple(e,"items")};GR.default=DQ});var tC=E(function(eC){Object.defineProperty(eC,"__esModule",{value:!0});var sd=te(),YR=ue(),XR=Ut(),QR=Py(),qQ={message:({params:{len:e}})=>sd.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>sd._`{limit: ${e}}`},FQ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:qQ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,YR.alwaysValidSchema(n,t))return;if(o)QR.validateAdditionalItems(e,o);else e.ok(XR.validateArray(e))}};eC.default=FQ});var nC=E(function(rC){Object.defineProperty(rC,"__esModule",{value:!0});var Pe=te(),kn=ue(),WQ={message:({params:{min:e,max:t}})=>t===void 0?Pe.str`must contain at least ${e} valid item(s)`:Pe.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?Pe._`{minContains: ${e}}`:Pe._`{minContains: ${e}, maxContains: ${t}}`},VQ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:WQ,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:u}=n;if(s.opts.next)i=c===void 0?1:c,a=u;else i=1;let l=t.const("len",Pe._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){kn.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){kn.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(kn.alwaysValidSchema(s,r)){let g=Pe._`${l} >= ${i}`;if(a!==void 0)g=Pe._`${g} && ${l} <= ${a}`;e.pass(g);return}s.items=!0;let d=t.name("valid");if(a===void 0&&i===1)m(d,()=>t.if(d,()=>t.break()));else if(i===0){if(t.let(d,!0),a!==void 0)t.if(Pe._`${o}.length > 0`,f)}else t.let(d,!1),f();e.result(d,()=>e.reset());function f(){let g=t.name("_valid"),y=t.let("count",0);m(g,()=>t.if(g,()=>h(y)))}function m(g,y){t.forRange("i",0,l,(b)=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:kn.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(Pe._`${g}++`),a===void 0)t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0).break());else if(t.if(Pe._`${g} > ${a}`,()=>t.assign(d,!1).break()),i===1)t.assign(d,!0);else t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0))}}};rC.default=VQ});var lC=E(function(aC){Object.defineProperty(aC,"__esModule",{value:!0});aC.validateSchemaDeps=aC.validatePropertyDeps=aC.error=void 0;var ys=te(),oC=ue(),kr=Ut();aC.error={message:({params:{property:e,depsCount:t,deps:r}})=>ys.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>ys._`{property: ${e},
|
|
170
170
|
missingProperty: ${n},
|
|
171
171
|
depsCount: ${t},
|
|
172
|
-
deps: ${r}}`};var DQ={keyword:"dependencies",type:"object",schemaType:"object",error:rC.error,code(e){let[t,r]=MQ(e);eC(e,t),tC(e,r)}};function MQ({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function eC(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let i in t){let a=t[i];if(a.length===0)continue;let c=vr.propertyInData(r,n,i,o.opts.ownProperties);if(e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors)r.if(c,()=>{for(let u of a)vr.checkReportMissingProp(e,u)});else r.if(ms._`${c} && (${vr.checkMissingProp(e,a,s)})`),vr.reportMissingProp(e,s),r.else()}}rC.validatePropertyDeps=eC;function tC(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(QR.alwaysValidSchema(s,t[a]))continue;r.if(vr.propertyInData(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i)}}rC.validateSchemaDeps=tC;rC.default=DQ});var cC=E(function(aC){Object.defineProperty(aC,"__esModule",{value:!0});var rd=ee(),iC=ue(),UQ={message:"property name must be valid",params:({params:e})=>rd._`{propertyName: ${e.propertyName}}`},WQ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:UQ,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(iC.alwaysValidSchema(o,r))return;let s=t.name("valid");t.forIn("key",n,(i)=>{e.setParams({propertyName:i}),e.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),t.if(rd.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};aC.default=WQ});var xy=E(function(uC){Object.defineProperty(uC,"__esModule",{value:!0});var Sn=Ft(),Ce=ee(),ZQ=zr(),kn=ue(),BQ={message:"must NOT have additional properties",params:({params:e})=>Ce._`{additionalProperty: ${e.additionalProperty}}`},KQ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:BQ,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&kn.alwaysValidSchema(i,r))return;let u=Sn.allSchemaProperties(n.properties),l=Sn.allSchemaProperties(n.patternProperties);d(),e.ok(Ce._`${s} === ${ZQ.default.errors}`);function d(){t.forIn("key",o,(y)=>{if(!u.length&&!l.length)h(y);else t.if(f(y),()=>h(y))})}function f(y){let b;if(u.length>8){let T=kn.schemaRefOrVal(i,n.properties,"properties");b=Sn.isOwnProperty(t,T,y)}else if(u.length)b=Ce.or(...u.map((T)=>Ce._`${y} === ${T}`));else b=Ce.nil;if(l.length)b=Ce.or(b,...l.map((T)=>Ce._`${Sn.usePattern(e,T)}.test(${y})`));return Ce.not(b)}function m(y){t.code(Ce._`delete ${o}[${y}]`)}function h(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){if(e.setParams({additionalProperty:y}),e.error(),!a)t.break();return}if(typeof r=="object"&&!kn.alwaysValidSchema(i,r)){let b=t.name("valid");if(c.removeAdditional==="failing")g(y,b,!1),t.if(Ce.not(b),()=>{e.reset(),m(y)});else if(g(y,b),!a)t.if(Ce.not(b),()=>t.break())}}function g(y,b,T){let S={keyword:"additionalProperties",dataProp:y,dataPropType:kn.Type.Str};if(T===!1)Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(S,b)}}};uC.default=KQ});var fC=E(function(pC){Object.defineProperty(pC,"__esModule",{value:!0});var dC=ya(),nd=Ft(),hs=ue(),lC=xy(),GQ={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e;if(s.opts.removeAdditional==="all"&&n.additionalProperties===void 0)lC.default.code(new dC.KeywordCxt(s,lC.default,"additionalProperties"));let i=nd.allSchemaProperties(r);for(let d of i)s.definedProperties.add(d);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=hs.mergeEvaluated.props(t,hs.toHash(i),s.props);let a=i.filter((d)=>!hs.alwaysValidSchema(s,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a){if(u(d))l(d);else{if(t.if(nd.propertyInData(t,o,d,s.opts.ownProperties)),l(d),!s.allErrors)t.else().var(c,!0);t.endIf()}e.it.definedProperties.add(d),e.ok(c)}function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};pC.default=GQ});var hC=E(function(mC){Object.defineProperty(mC,"__esModule",{value:!0});var od=Ft(),xn=ee(),sd=ue(),id=ue(),YQ={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=od.allSchemaProperties(r),c=a.filter((g)=>sd.alwaysValidSchema(s,r[g]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=t.name("valid");if(s.props!==!0&&!(s.props instanceof xn.Name))s.props=id.evaluatedPropsToName(t,s.props);let{props:d}=s;f();function f(){for(let g of a){if(u)m(g);if(s.allErrors)h(g);else t.var(l,!0),h(g),t.if(l)}}function m(g){for(let y in u)if(new RegExp(g).test(y))sd.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(xn._`${od.usePattern(e,g)}.test(${y})`,()=>{let b=c.includes(g);if(!b)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:id.Type.Str},l);if(s.opts.unevaluated&&d!==!0)t.assign(xn._`${d}[${y}]`,!0);else if(!b&&!s.allErrors)t.if(xn.not(l),()=>t.break())})})}}};mC.default=YQ});var wC=E(function(yC){Object.defineProperty(yC,"__esModule",{value:!0});var gC=ue(),QQ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(gC.alwaysValidSchema(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};yC.default=QQ});var vC=E(function(_C){Object.defineProperty(_C,"__esModule",{value:!0});var bC=Ft(),tee={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bC.validateUnion,error:{message:"must match a schema in anyOf"}};_C.default=tee});var xC=E(function(kC){Object.defineProperty(kC,"__esModule",{value:!0});var $n=ee(),SC=ue(),nee={message:"must match exactly one schema in oneOf",params:({params:e})=>$n._`{passingSchemas: ${e.passing}}`},oee={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:nee,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(u),e.result(i,()=>e.reset(),()=>e.error(!0));function u(){s.forEach((l,d)=>{let f;if(SC.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c);if(d>0)t.if($n._`${c} && ${i}`).assign(i,!1).assign(a,$n._`[${a}, ${d}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,d),f)e.mergeEvaluated(f,$n.Name)})})}}};kC.default=oee});var EC=E(function(TC){Object.defineProperty(TC,"__esModule",{value:!0});var $C=ue(),iee={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let o=t.name("valid");r.forEach((s,i)=>{if($C.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};TC.default=iee});var IC=E(function(OC){Object.defineProperty(OC,"__esModule",{value:!0});var Tn=ee(),ad=ue(),cee={message:({params:e})=>Tn.str`must match "${e.ifClause}" schema`,params:({params:e})=>Tn._`{failingKeyword: ${e.ifClause}}`},uee={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:cee,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)ad.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=PC(n,"then"),s=PC(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(a,u("then",l),u("else",l))}else if(o)t.if(a,u("then"));else t.if(Tn.not(a),u("else"));e.pass(i,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},a);if(t.assign(i,a),e.mergeValidEvaluated(f,i),d)t.assign(d,Tn._`${l}`);else e.setParams({ifClause:l})}}}};function PC(e,t){let r=e.schema[t];return r!==void 0&&!ad.alwaysValidSchema(e,r)}OC.default=uee});var CC=E(function(RC){Object.defineProperty(RC,"__esModule",{value:!0});var AC=ue(),dee={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)AC.checkStrictMode(r,`"${e}" without "if" is ignored`)}};RC.default=dee});var NC=E(function(zC){Object.defineProperty(zC,"__esModule",{value:!0});var fee=Sy(),mee=ZR(),hee=ky(),gee=JR(),yee=XR(),wee=sC(),bee=cC(),_ee=xy(),vee=fC(),See=hC(),kee=wC(),xee=vC(),$ee=xC(),Tee=EC(),Eee=IC(),Pee=CC();function Oee(e=!1){let t=[kee.default,xee.default,$ee.default,Tee.default,Eee.default,Pee.default,bee.default,_ee.default,wee.default,vee.default,See.default];if(e)t.push(mee.default,gee.default);else t.push(fee.default,hee.default);return t.push(yee.default),t}zC.default=Oee});var jC=E(function(LC){Object.defineProperty(LC,"__esModule",{value:!0});var Q=ee(),Aee={message:({schemaCode:e})=>Q.str`must match format "${e}"`,params:({schemaCode:e})=>Q._`{format: ${e}}`},Ree={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Aee,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;if(o)f();else m();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),g=r.const("fDef",Q._`${h}[${i}]`),y=r.let("fType"),b=r.let("format");r.if(Q._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Q._`${g}.type || "string"`).assign(b,Q._`${g}.validate`),()=>r.assign(y,Q._`"string"`).assign(b,g)),e.fail$data(Q.or(T(),S()));function T(){if(c.strictSchema===!1)return Q.nil;return Q._`${i} && !${b}`}function S(){let I=l.$async?Q._`(${g}.async ? await ${b}(${n}) : ${b}(${n}))`:Q._`${b}(${n})`,_=Q._`(typeof ${b} == "function" ? ${I} : ${b}.test(${n}))`;return Q._`${b} && ${b} !== true && ${y} === ${t} && !${_}`}}function m(){let h=d.formats[s];if(!h){T();return}if(h===!0)return;let[g,y,b]=S(h);if(g===t)e.pass(I());function T(){if(c.strictSchema===!1){d.logger.warn(_());return}throw Error(_());function _(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(_){let v=_ instanceof RegExp?Q.regexpCode(_):c.code.formats?Q._`${c.code.formats}${Q.getProperty(s)}`:void 0,x=r.scopeValue("formats",{key:s,ref:_,code:v});if(typeof _=="object"&&!(_ instanceof RegExp))return[_.type||"string",_.validate,Q._`${x}.validate`];return["string",_,x]}function I(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Q._`await ${b}(${n})`}return typeof y=="function"?Q._`${b}(${n})`:Q._`${b}.test(${n})`}}}};LC.default=Ree});var MC=E(function(DC){Object.defineProperty(DC,"__esModule",{value:!0});var zee=jC(),Nee=[zee.default];DC.default=Nee});var UC=E(function(qC){Object.defineProperty(qC,"__esModule",{value:!0});qC.contentVocabulary=qC.metadataVocabulary=void 0;qC.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];qC.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var VC=E(function(WC){Object.defineProperty(WC,"__esModule",{value:!0});var Dee=tR(),Mee=NR(),qee=NC(),Fee=MC(),cd=UC(),Uee=[Dee.default,Mee.default,(0,qee.default)(),Fee.default,cd.metadataVocabulary,cd.contentVocabulary];WC.default=Uee});var HC=E(function(BC){Object.defineProperty(BC,"__esModule",{value:!0});BC.DiscrError=void 0;var ZC;(function(e){e.Tag="tag",e.Mapping="mapping"})(ZC||(BC.DiscrError=ZC={}))});var YC=E(function(JC){Object.defineProperty(JC,"__esModule",{value:!0});var Wt=ee(),gs=HC(),ud=Vl(),Vee=wa(),GC=ue(),Zee={message:({params:{discrError:e,tagName:t}})=>e===gs.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>Wt._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Bee={keyword:"discriminator",type:"object",schemaType:"object",error:Zee,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:s}=e,{oneOf:i}=o;if(!s.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!i)throw Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",Wt._`${r}${Wt.getProperty(a)}`);t.if(Wt._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:gs.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(Wt._`${u} === ${h}`),t.assign(c,d(m[h]));t.else(),e.error(!1,{discrError:gs.DiscrError.Mapping,tag:u,tagName:a}),t.endIf()}function d(m){let h=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},h);return e.mergeEvaluated(g,Wt.Name),h}function f(){var m;let h={},g=b(o),y=!0;for(let I=0;I<i.length;I++){let _=i[I];if((_===null||_===void 0?void 0:_.$ref)&&!GC.schemaHasRulesButRef(_,s.self.RULES)){let x=_.$ref;if(_=ud.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,x),_ instanceof ud.SchemaEnv)_=_.schema;if(_===void 0)throw new Vee.default(s.opts.uriResolver,s.baseId,x)}let v=(m=_===null||_===void 0?void 0:_.properties)===null||m===void 0?void 0:m[a];if(typeof v!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||b(_)),T(v,I)}if(!y)throw Error(`discriminator: "${a}" must be required`);return h;function b({required:I}){return Array.isArray(I)&&I.includes(a)}function T(I,_){if(I.const)S(I.const,_);else if(I.enum)for(let v of I.enum)S(v,_);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(I,_){if(typeof I!="string"||I in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[I]=_}}}};JC.default=Bee});var XC=E(function(pke,Hee){Hee.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}});var Ty=E(function(gt,$y){Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv=void 0;var Gee=KA(),Jee=VC(),Yee=YC(),QC=XC(),Xee=["/properties"],ld="http://json-schema.org/draft-07/schema";class va extends Gee.default{_addVocabularies(){if(super._addVocabularies(),Jee.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(Yee.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(QC,Xee):QC;this.addMetaSchema(e,ld,!1),this.refs["http://json-schema.org/schema"]=ld}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ld)?ld:void 0)}}gt.Ajv=va;$y.exports=gt=va;$y.exports.Ajv=va;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=va;var Qee=ya();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return Qee.KeywordCxt}});var ys=ee();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return ys._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return ys.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return ys.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return ys.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return ys.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return ys.CodeGen}});var ete=Fl();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return ete.default}});var tte=wa();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return tte.default}})});var u1=E(function(a1){Object.defineProperty(a1,"__esModule",{value:!0});a1.formatNames=a1.fastFormats=a1.fullFormats=void 0;function Sr(e,t){return{validate:e,compare:t}}a1.fullFormats={date:Sr(n1,Iy),time:Sr(Py(!0),Ay),"date-time":Sr(e1(!0),s1),"iso-time":Sr(Py(),o1),"iso-date-time":Sr(e1(),i1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:ute,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:gte,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:lte,int32:{type:"number",validate:fte},int64:{type:"number",validate:mte},float:{type:"number",validate:r1},double:{type:"number",validate:r1},password:!0,binary:!0};a1.fastFormats={...a1.fullFormats,date:Sr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Iy),time:Sr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ay),"date-time":Sr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,s1),"iso-time":Sr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,o1),"iso-date-time":Sr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,i1),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};a1.formatNames=Object.keys(a1.fullFormats);function ote(e){return e%4===0&&(e%100!==0||e%400===0)}var ste=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,ite=[0,31,28,31,30,31,30,31,31,30,31,30,31];function n1(e){let t=ste.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&ote(r)?29:ite[n])}function Iy(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var Ey=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Py(e){return function(r){let n=Ey.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||e&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function Ay(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(!(r&&n))return;return r-n}function o1(e,t){if(!(e&&t))return;let r=Ey.exec(e),n=Ey.exec(t);if(!(r&&n))return;if(e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t)return 1;if(e<t)return-1;return 0}var Oy=/t|\s/i;function e1(e){let t=Py(e);return function(n){let o=n.split(Oy);return o.length===2&&n1(o[0])&&t(o[1])}}function s1(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(!(r&&n))return;return r-n}function i1(e,t){if(!(e&&t))return;let[r,n]=e.split(Oy),[o,s]=t.split(Oy),i=Iy(r,o);if(i===void 0)return;return i||Ay(n,s)}var ate=/\/|:/,cte=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function ute(e){return ate.test(e)&&cte.test(e)}var t1=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function lte(e){return t1.lastIndex=0,t1.test(e)}var dte=-2147483648,pte=2147483647;function fte(e){return Number.isInteger(e)&&e<=pte&&e>=dte}function mte(e){return Number.isInteger(e)}function r1(){return!0}var hte=/[^\\]\\Z/;function gte(e){if(hte.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var p1=E(function(d1){Object.defineProperty(d1,"__esModule",{value:!0});d1.formatLimitDefinition=void 0;var l1=Ty(),ze=ee(),En=ze.operators,dd={formatMaximum:{okStr:"<=",ok:En.LTE,fail:En.GT},formatMinimum:{okStr:">=",ok:En.GTE,fail:En.LT},formatExclusiveMaximum:{okStr:"<",ok:En.LT,fail:En.GTE},formatExclusiveMinimum:{okStr:">",ok:En.GT,fail:En.LTE}},wte={message:({keyword:e,schemaCode:t})=>ze.str`should be ${dd[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>ze._`{comparison: ${dd[e].okStr}, limit: ${t}}`};d1.formatLimitDefinition={keyword:Object.keys(dd),type:"string",schemaType:"string",$data:!0,error:wte,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:s}=e,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new l1.KeywordCxt(s,a.RULES.all.format.definition,"format");if(c.$data)u();else l();function u(){let f=t.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=t.const("fmt",ze._`${f}[${c.schemaCode}]`);e.fail$data(ze.or(ze._`typeof ${m} != "object"`,ze._`${m} instanceof RegExp`,ze._`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw Error(`"${o}": format "${f}" does not define "compare" function`);let h=t.scopeValue("formats",{key:f,ref:m,code:i.code.formats?ze._`${i.code.formats}${ze.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return ze._`${f}.compare(${r}, ${n}) ${dd[o].fail} 0`}},dependencies:["format"]};var bte=(e)=>(e.addKeyword(d1.formatLimitDefinition),e);d1.default=bte});var g1=E(function(Sa,h1){Object.defineProperty(Sa,"__esModule",{value:!0});var Vt=u1(),vte=p1(),ws=ee(),f1=new ws.Name("fullFormats"),Ste=new ws.Name("fastFormats"),zy=(e,t={keywords:!0})=>{if(Array.isArray(t))return m1(e,t,Vt.fullFormats,f1),e;let[r,n]=t.mode==="fast"?[Vt.fastFormats,Ste]:[Vt.fullFormats,f1],o=t.formats||Vt.formatNames;if(m1(e,o,r,n),t.keywords)(0,vte.default)(e);return e};zy.get=(e,t="full")=>{let n=(t==="fast"?Vt.fastFormats:Vt.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function m1(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=ws._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}h1.exports=Sa=zy;Object.defineProperty(Sa,"__esModule",{value:!0});Sa.default=zy});var Kd={};Bz(Kd,{program:()=>Ow,createCommand:()=>Iw,createOption:()=>Aw,createArgument:()=>Rw,Command:()=>Cw,Option:()=>zw,Argument:()=>Nw,Help:()=>Lw,CommanderError:()=>jw,InvalidArgumentError:()=>Dw,InvalidOptionArgumentError:()=>Mw},{program:(Vne)=>Ow=Vne,createCommand:(Vne)=>Iw=Vne,createOption:(Vne)=>Aw=Vne,createArgument:(Vne)=>Rw=Vne,Command:(Vne)=>Cw=Vne,Option:(Vne)=>zw=Vne,Argument:(Vne)=>Nw=Vne,Help:(Vne)=>Lw=Vne,CommanderError:(Vne)=>jw=Vne,InvalidArgumentError:(Vne)=>Dw=Vne,InvalidOptionArgumentError:(Vne)=>Mw=Vne});var pe={};Zz(pe,{ZodISODate:()=>Vs,ZodISODateTime:()=>Ws,ZodISODuration:()=>Bs,ZodISOTime:()=>Zs,date:()=>Pj,datetime:()=>wk,duration:()=>Ij,time:()=>Oj});var{Argument:Tw}=Ia(),{Command:Bd}=$w(),{CommanderError:xN,InvalidArgumentError:Ew}=ks(),{Help:$N}=Fd(),{Option:Pw}=Ud();var Ow=new Bd,Iw=(e)=>new Bd(e),Aw=(e,t)=>new Pw(e,t),Rw=(e,t)=>new Tw(e,t),Cw=Bd,zw=Pw,Nw=Tw,Lw=$N,jw=xN,Dw=Ew,Mw=Ew;var{program:Bne,createCommand:Kne,createArgument:Hne,createOption:Gne,CommanderError:Jne,InvalidArgumentError:Yne,InvalidOptionArgumentError:Xne,Command:qw,Argument:Qne,Option:eoe,Help:toe}=Kd;function $s(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Gd(e,t="|"){return e.map((r)=>Xd(r)).join(t)}function Ts(e,t){if(typeof t==="bigint")return t.toString();return t}class Uw{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;if(e!==void 0)this._value=e(),this._getter=void 0;return this._value}}function Es(e){return new Uw(e)}function Ww(e){return e===null||e===void 0}function Fr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Vw(e,t){let r=e/t,n=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}var Fw=Symbol("evaluating");function Zw(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Fw)return;if(n===void 0)n=Fw,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function bt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Ps(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function xr(e){return Ps(e._zod.def)??e._zod.def.shape}function Bw(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return bt(this,t,n),n},enumerable:!0,configurable:!0})}function Kw(e,t,r){if(t in e)bt(e,t,r);else e[t]=r}function An(e,t,r,n){let o=xr(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Bw(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else Kw(e,s,n?n(i.value,s):i.value)}}function TN(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Bw(e,r,()=>t[r]);else Kw(e,r,n.value)}}function _t(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function Hw(e){return JSON.stringify(e)}function Gw(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Jd="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function co(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Jw=Es(()=>{if(rt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Rn(e){if(co(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(co(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Yd(e){if(Rn(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}var Yw=new Set(["string","number","symbol"]),Xw=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Tr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zt(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function U(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function Xd(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Qw(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var Aa=(()=>({safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]}))(),Qd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function EN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let s={};return An(s,e,Ra(e,t)),Zt(e,_t(r,{shape:s,checks:[]}))}function Ra(e,t){let r=xr(e),n=[];for(let o of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,o)?.enumerable)throw Error(`Unrecognized key: "${String(o)}"`);if(t[o])n.push(o)}return n}function PN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let s=new Set(Ra(e,t)),i={};return An(i,e,Reflect.ownKeys(xr(e)).filter((a)=>!s.has(a))),Zt(e,_t(r,{shape:i,checks:[]}))}function ON(e,t){if(!Rn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=xr(e);for(let s of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Zt(e,_t(e._zod.def,{shape:eb(e,t)}))}function eb(e,t){let r={};return An(r,e,Reflect.ownKeys(xr(e))),TN(r,t),r}function IN(e,t){if(!Rn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Zt(e,_t(e._zod.def,{shape:eb(e,t)}))}function AN(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};An(r,e,Reflect.ownKeys(xr(e))),An(r,t,Reflect.ownKeys(xr(t)));let n=_t(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Zt(e,n)}function tb(e,t,r,n="partial"){let s=t._zod.def.checks;if(s&&s.length>0)throw Error(`.${n}() cannot be used on object schemas containing refinements`);let a=r?new Set(Ra(t,r)):void 0,c={};return An(c,t,Reflect.ownKeys(xr(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Zt(t,_t(t._zod.def,{shape:c,checks:[]}))}function RN(e,t,r){let n=r?new Set(Ra(t,r)):void 0,o={};return An(o,t,Reflect.ownKeys(xr(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Zt(t,_t(t._zod.def,{shape:o}))}function Pt(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function rb(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function Qt(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function xs(e){return typeof e==="string"?e:e?.message}function ep(e){let t=[];for(let r of e??[]){let n=r._zod.def;if(!/_(length|size)$|_equals$/.test(n.check))break;let o=n.maximum??n.length??n.size;if(o>=0)t.push([o,r])}return t}function Ca(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function er(e,t,r){var n;let o=e.inst?._zod?.traits;if(o?.has("$ZodType"))if(o.has("$ZodCheck"))(n=e).schema??(n.schema=e.inst);else e.schema=e.inst;let s=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,i=e.message?e.message:xs(e.inst?._zod.def?.error?.(e))??xs(s?.(e))??xs(t?.error?.(e))??xs(r.customError?.(e))??xs(r.localeError?.(e))??"Invalid input",a={};for(let c of Object.keys(e)){if(c==="inst"||c==="schema"||c==="continue"||c==="input"||c==="__proto__")continue;a[c]=e[c]}if(a.path??(a.path=[]),a.message=i,t?.reportInput)a.input=e.input;return a}var CN=/[\uD800-\uDBFF]/;function za(e){let t=e.length;if(!CN.test(e))return t;let r=t;for(let n=0;n<t-1;n++)if((e.charCodeAt(n)&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320)r--,n++;return r}function Na(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function nb(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Cn(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function ob(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else zN(e,r,n.value)}}function $r(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function La(e,t,r){return $r(e,t,r,!1)}function sb(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return $r(this,r,n(this))},set(o){$r(this,r,o)}})}return t}function zN(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:$r(this,t,r.bind(this))},set(n){$r(this,t,n)}})}function NN(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var Hd,qr=!1,LN={configurable:!0,get(){qr=!0;return}};function re(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&Hd!==e._zod){Hd=void 0;return}Hd=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,LN);let o=qr;qr=!1;try{let s=r(this);if(qr)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return qr=qr||o,s}catch(s){throw delete this[t],qr=qr||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function jN(e,t,r,n){let o=NN(e,t);if(!o)return;Object.defineProperty(o,t,{configurable:!0,get(){let s={configurable:!0,writable:!0,enumerable:n,value:void 0};return Object.defineProperty(this,t,s),s.value=r(this),Object.defineProperty(this,t,s),s.value},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:n,value:s})}})}var DN="~constantCatch";function ib(e){let t=()=>e;return t[DN]=!0,t}var ab,rp=Object.freeze({status:"aborted"}),tp={value:void 0,enumerable:!1},cb="captureStackTrace"in Error?Error:null;function MN(e){let t=cb;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return cb=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function O(e,t,r,n){let o={};function s(f){this.def=f,this.constr=d,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(f,m){if(!f._zod){tp.value=new s(m);try{Object.defineProperty(f,"_zod",tp)}finally{tp.value=void 0}}else if(f._zod.traits.has(e))return;if(f._zod.traits.add(e),t(f,m),a){let g=Object.getPrototypeOf(f),y=f._zod.constr.prototype,b=g;while(b&&b!==y)b=Object.getPrototypeOf(b);let T=b??g;if(!a.has(T))a.add(T),ob(T,i)}let h=d.prototype;for(let g in h){if(!Object.prototype.hasOwnProperty.call(h,g))continue;if(!(g in f))f[g]=h[g].bind(f)}}let u=n?.Parent??Object;class l extends u{}Object.defineProperty(l,"name",{value:e});function d(f){let m=n?.Parent?MN(l):this;c(m,f);let h=m._zod.deferred;if(h){for(let y of h)y();m._zod.deferred=void 0}let g=globalThis.__zod_globalConfig?.postProcessor;if(g)g(m);return m}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:(f)=>{if(n?.Parent&&f instanceof n.Parent)return!0;return f?._zod?.traits?.has(e)}}),Object.defineProperty(d,"name",{value:e}),d}class tr extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Os extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ab=globalThis).__zod_globalConfig??(ab.__zod_globalConfig={});var rt=globalThis.__zod_globalConfig;function at(e){if(e)Object.assign(rt,e);return rt}function qN(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Ts,2)),e.message}function FN(e){this._zod.message=e}var UN={get:qN,set:FN,enumerable:!0,configurable:!0},op={value:void 0,enumerable:!1},ub=new WeakSet([Object.prototype,Error.prototype]),lb=(e,t)=>{e.name="$ZodError",op.value=t,Object.defineProperty(e,"issues",op),op.value=void 0,Object.defineProperty(e,"message",UN);let r=Object.getPrototypeOf(e);if(!ub.has(r))ub.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let n=()=>this.message;return Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0})}})},db=O("$ZodError",lb),pb=O("$ZodError",lb,void 0,{Parent:Error});function WN(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))if(t==="__proto__")Object.defineProperty(e,t,{value:r(),writable:!0,enumerable:!0,configurable:!0});else e[t]=r();return e[t]}function sp(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)WN(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function ip(e,t=(r)=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((a)=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(t(i));else{let c=r,u=0;while(u<a.length){let l=a[u],d=u===a.length-1;if(l==="_errors"){if(d)c._errors.push(t(i));u++;continue}if(!Object.prototype.hasOwnProperty.call(c,l))Object.defineProperty(c,l,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let f=c[l];if(d)f._errors.push(t(i));c=f,u++}}}};return n(e),r}function ja(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Da=(e)=>{let t=(r,n,o,s)=>{let i=o?{...o,async:!1}:{async:!1},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new tr;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>er(u,i,at())));throw Jd(c,s?.callee??t),c}return a.value};return t};var Ma=(e)=>{let t=async(r,n,o,s)=>{let i=o?{...o,async:!0}:{async:!0},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>er(u,i,at())));throw Jd(c,s?.callee??t),c}return a.value};return t};var Is=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new tr;return s.issues.length?fb(e,s.issues,o):{success:!0,data:s.value}},ap=Is(pb);function fb(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>er(o,r,at()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var qa=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?fb(e,s.issues,o):{success:!0,data:s.value}};var ZN=Symbol.for("zod.compile.invalid"),BN=Symbol.for("zod.compile.fallback"),Fa=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==ZN)return!0;if(n.definite===!0&&r===void 0)return!1}return KN(e,t,r)};function KN(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[BN]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new tr;return s.issues.length===0}var Ua=async(e,t,r)=>{let n=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},n);if(o instanceof Promise)o=await o;return o.issues.length===0},mb=(e)=>{let t=Da(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,ja(r,i))};return r};var hb=(e)=>{let t=Da(e),r=(n,o,s,i)=>t(n,o,s,ja(r,i));return r};var gb=(e)=>{let t=Ma(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,ja(r,i))};return r};var yb=(e)=>{let t=Ma(e),r=async(n,o,s,i)=>await t(n,o,s,ja(r,i));return r};var wb=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Is(e)(t,r,o)};var bb=(e)=>(t,r,n)=>Is(e)(t,r,n);var _b=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return qa(e)(t,r,o)};var vb=(e)=>async(t,r,n)=>qa(e)(t,r,n);var Sb=/^[cC][0-9a-z]{6,}$/,kb=/^[0-9a-z]+$/,xb=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,$b=/^[0-9a-vA-V]{20}$/,Tb=/^[A-Za-z0-9]{27}$/,Eb=/^[a-zA-Z0-9_-]{21}$/;function Pb(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var Ob=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Ib=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,up=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var Ab=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var HN="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Rb(){return new RegExp(HN,"u")}var Cb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,zb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var Nb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Lb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Db=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Mb=/^https?$/,qb=/^\+[1-9]\d{6,14}$/;var Fb="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))";function GN(e){return new RegExp(`^${e}$`)}var Ub=GN(Fb);function cp(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?":"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Wb(e){return new RegExp(`^${cp(e)}$`)}function Vb(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${cp({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${cp({precision:e.precision})}`:r;return new RegExp(`^${Fb}T(?:${n})$`)}var Zb=/^[\s\S]{0,}$/,Bb=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Wa=/^-?\d+$/,uo=/^-?\d+(?:\.\d+)?$/,Kb=/^(?:true|false)$/i,Hb=/^null$/i;var Gb=/^[^A-Z]*$/,Jb=/^[^a-z]*$/;var He=O("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var lp=(e)=>{let t=e.value;return!Ww(t)&&t.length!==void 0},Va={number:"number",bigint:"bigint",object:"date"},dp=O("$ZodCheckLessThan",(e,t)=>{He.init(e,t);let r=Va[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:Va[typeof n.value]??r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),pp=O("$ZodCheckGreaterThan",(e,t)=>{He.init(e,t);let r=Va[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:Va[typeof n.value]??r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Yb=O("$ZodCheckMultipleOf",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):Vw(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Xb=O("$ZodCheckNumberFormat",(e,t)=>{He.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=Aa[t.format];e._zod.check=(i)=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(a<o)i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>s)i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:e,continue:!t.abort})}});var Qb=O("$ZodCheckMaxLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?za(o):s)<=t.maximum)return;let a=Na(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),e_=O("$ZodCheckMinLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?za(o):s)>=t.minimum)return;let a=Na(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),t_=O("$ZodCheckLengthEquals",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?za(o):s;if(i===t.length)return;let a=Na(o),c=i>t.length;n.issues.push({origin:a,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),As=O("$ZodCheckStringFormat",(e,t)=>{var r,n;if(He.init(e,t),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),r_=O("$ZodCheckRegex",(e,t)=>{As.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),n_=O("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Gb),As.init(e,t)}),o_=O("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Jb),As.init(e,t)}),s_=O("$ZodCheckIncludes",(e,t)=>{He.init(e,t);let r=Tr(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position},}${r}`:r);t.pattern=n,e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),i_=O("$ZodCheckStartsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`^${Tr(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),a_=O("$ZodCheckEndsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`.*${Tr(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var c_=O("$ZodCheckOverwrite",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class fp{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
172
|
+
deps: ${r}}`};var BQ={keyword:"dependencies",type:"object",schemaType:"object",error:aC.error,code(e){let[t,r]=KQ(e);sC(e,t),iC(e,r)}};function KQ({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function sC(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let i in t){let a=t[i];if(a.length===0)continue;let c=kr.propertyInData(r,n,i,o.opts.ownProperties);if(e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors)r.if(c,()=>{for(let u of a)kr.checkReportMissingProp(e,u)});else r.if(ys._`${c} && (${kr.checkMissingProp(e,a,s)})`),kr.reportMissingProp(e,s),r.else()}}aC.validatePropertyDeps=sC;function iC(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(oC.alwaysValidSchema(s,t[a]))continue;r.if(kr.propertyInData(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i)}}aC.validateSchemaDeps=iC;aC.default=BQ});var fC=E(function(pC){Object.defineProperty(pC,"__esModule",{value:!0});var id=te(),dC=ue(),JQ={message:"property name must be valid",params:({params:e})=>id._`{propertyName: ${e.propertyName}}`},YQ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:JQ,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(dC.alwaysValidSchema(o,r))return;let s=t.name("valid");t.forIn("key",n,(i)=>{e.setParams({propertyName:i}),e.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),t.if(id.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};pC.default=YQ});var Iy=E(function(mC){Object.defineProperty(mC,"__esModule",{value:!0});var xn=Ut(),ze=te(),QQ=Lr(),$n=ue(),eee={message:"must NOT have additional properties",params:({params:e})=>ze._`{additionalProperty: ${e.additionalProperty}}`},tee={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:eee,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&$n.alwaysValidSchema(i,r))return;let u=xn.allSchemaProperties(n.properties),l=xn.allSchemaProperties(n.patternProperties);d(),e.ok(ze._`${s} === ${QQ.default.errors}`);function d(){t.forIn("key",o,(y)=>{if(!u.length&&!l.length)h(y);else t.if(f(y),()=>h(y))})}function f(y){let b;if(u.length>8){let T=$n.schemaRefOrVal(i,n.properties,"properties");b=xn.isOwnProperty(t,T,y)}else if(u.length)b=ze.or(...u.map((T)=>ze._`${y} === ${T}`));else b=ze.nil;if(l.length)b=ze.or(b,...l.map((T)=>ze._`${xn.usePattern(e,T)}.test(${y})`));return ze.not(b)}function m(y){t.code(ze._`delete ${o}[${y}]`)}function h(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){if(e.setParams({additionalProperty:y}),e.error(),!a)t.break();return}if(typeof r=="object"&&!$n.alwaysValidSchema(i,r)){let b=t.name("valid");if(c.removeAdditional==="failing")g(y,b,!1),t.if(ze.not(b),()=>{e.reset(),m(y)});else if(g(y,b),!a)t.if(ze.not(b),()=>t.break())}}function g(y,b,T){let k={keyword:"additionalProperties",dataProp:y,dataPropType:$n.Type.Str};if(T===!1)Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(k,b)}}};mC.default=tee});var wC=E(function(yC){Object.defineProperty(yC,"__esModule",{value:!0});var gC=ba(),ad=Ut(),ws=ue(),hC=Iy(),nee={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e;if(s.opts.removeAdditional==="all"&&n.additionalProperties===void 0)hC.default.code(new gC.KeywordCxt(s,hC.default,"additionalProperties"));let i=ad.allSchemaProperties(r);for(let d of i)s.definedProperties.add(d);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=ws.mergeEvaluated.props(t,ws.toHash(i),s.props);let a=i.filter((d)=>!ws.alwaysValidSchema(s,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a){if(u(d))l(d);else{if(t.if(ad.propertyInData(t,o,d,s.opts.ownProperties)),l(d),!s.allErrors)t.else().var(c,!0);t.endIf()}e.it.definedProperties.add(d),e.ok(c)}function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};yC.default=nee});var _C=E(function(bC){Object.defineProperty(bC,"__esModule",{value:!0});var cd=Ut(),Tn=te(),ud=ue(),ld=ue(),see={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=cd.allSchemaProperties(r),c=a.filter((g)=>ud.alwaysValidSchema(s,r[g]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=t.name("valid");if(s.props!==!0&&!(s.props instanceof Tn.Name))s.props=ld.evaluatedPropsToName(t,s.props);let{props:d}=s;f();function f(){for(let g of a){if(u)m(g);if(s.allErrors)h(g);else t.var(l,!0),h(g),t.if(l)}}function m(g){for(let y in u)if(new RegExp(g).test(y))ud.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(Tn._`${cd.usePattern(e,g)}.test(${y})`,()=>{let b=c.includes(g);if(!b)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:ld.Type.Str},l);if(s.opts.unevaluated&&d!==!0)t.assign(Tn._`${d}[${y}]`,!0);else if(!b&&!s.allErrors)t.if(Tn.not(l),()=>t.break())})})}}};bC.default=see});var kC=E(function(vC){Object.defineProperty(vC,"__esModule",{value:!0});var SC=ue(),aee={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(SC.alwaysValidSchema(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};vC.default=aee});var TC=E(function($C){Object.defineProperty($C,"__esModule",{value:!0});var xC=Ut(),uee={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:xC.validateUnion,error:{message:"must match a schema in anyOf"}};$C.default=uee});var OC=E(function(PC){Object.defineProperty(PC,"__esModule",{value:!0});var En=te(),EC=ue(),dee={message:"must match exactly one schema in oneOf",params:({params:e})=>En._`{passingSchemas: ${e.passing}}`},pee={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:dee,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(u),e.result(i,()=>e.reset(),()=>e.error(!0));function u(){s.forEach((l,d)=>{let f;if(EC.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c);if(d>0)t.if(En._`${c} && ${i}`).assign(i,!1).assign(a,En._`[${a}, ${d}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,d),f)e.mergeEvaluated(f,En.Name)})})}}};PC.default=pee});var RC=E(function(AC){Object.defineProperty(AC,"__esModule",{value:!0});var IC=ue(),mee={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let o=t.name("valid");r.forEach((s,i)=>{if(IC.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};AC.default=mee});var NC=E(function(zC){Object.defineProperty(zC,"__esModule",{value:!0});var Pn=te(),dd=ue(),gee={message:({params:e})=>Pn.str`must match "${e.ifClause}" schema`,params:({params:e})=>Pn._`{failingKeyword: ${e.ifClause}}`},yee={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:gee,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)dd.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=CC(n,"then"),s=CC(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(a,u("then",l),u("else",l))}else if(o)t.if(a,u("then"));else t.if(Pn.not(a),u("else"));e.pass(i,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},a);if(t.assign(i,a),e.mergeValidEvaluated(f,i),d)t.assign(d,Pn._`${l}`);else e.setParams({ifClause:l})}}}};function CC(e,t){let r=e.schema[t];return r!==void 0&&!dd.alwaysValidSchema(e,r)}zC.default=yee});var DC=E(function(jC){Object.defineProperty(jC,"__esModule",{value:!0});var LC=ue(),bee={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)LC.checkStrictMode(r,`"${e}" without "if" is ignored`)}};jC.default=bee});var qC=E(function(MC){Object.defineProperty(MC,"__esModule",{value:!0});var See=Py(),vee=JR(),kee=Oy(),xee=tC(),$ee=nC(),Tee=lC(),Eee=fC(),Pee=Iy(),Oee=wC(),Iee=_C(),Aee=kC(),Ree=TC(),Cee=OC(),zee=RC(),Nee=NC(),Lee=DC();function jee(e=!1){let t=[Aee.default,Ree.default,Cee.default,zee.default,Nee.default,Lee.default,Eee.default,Pee.default,Tee.default,Oee.default,Iee.default];if(e)t.push(vee.default,xee.default);else t.push(See.default,kee.default);return t.push($ee.default),t}MC.default=jee});var UC=E(function(FC){Object.defineProperty(FC,"__esModule",{value:!0});var Q=te(),Mee={message:({schemaCode:e})=>Q.str`must match format "${e}"`,params:({schemaCode:e})=>Q._`{format: ${e}}`},qee={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Mee,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;if(o)f();else m();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),g=r.const("fDef",Q._`${h}[${i}]`),y=r.let("fType"),b=r.let("format");r.if(Q._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Q._`${g}.type || "string"`).assign(b,Q._`${g}.validate`),()=>r.assign(y,Q._`"string"`).assign(b,g)),e.fail$data(Q.or(T(),k()));function T(){if(c.strictSchema===!1)return Q.nil;return Q._`${i} && !${b}`}function k(){let I=l.$async?Q._`(${g}.async ? await ${b}(${n}) : ${b}(${n}))`:Q._`${b}(${n})`,_=Q._`(typeof ${b} == "function" ? ${I} : ${b}.test(${n}))`;return Q._`${b} && ${b} !== true && ${y} === ${t} && !${_}`}}function m(){let h=d.formats[s];if(!h){T();return}if(h===!0)return;let[g,y,b]=k(h);if(g===t)e.pass(I());function T(){if(c.strictSchema===!1){d.logger.warn(_());return}throw Error(_());function _(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(_){let S=_ instanceof RegExp?Q.regexpCode(_):c.code.formats?Q._`${c.code.formats}${Q.getProperty(s)}`:void 0,x=r.scopeValue("formats",{key:s,ref:_,code:S});if(typeof _=="object"&&!(_ instanceof RegExp))return[_.type||"string",_.validate,Q._`${x}.validate`];return["string",_,x]}function I(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Q._`await ${b}(${n})`}return typeof y=="function"?Q._`${b}(${n})`:Q._`${b}.test(${n})`}}}};FC.default=qee});var VC=E(function(WC){Object.defineProperty(WC,"__esModule",{value:!0});var Uee=UC(),Wee=[Uee.default];WC.default=Wee});var KC=E(function(ZC){Object.defineProperty(ZC,"__esModule",{value:!0});ZC.contentVocabulary=ZC.metadataVocabulary=void 0;ZC.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ZC.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var GC=E(function(HC){Object.defineProperty(HC,"__esModule",{value:!0});var Bee=iR(),Kee=qR(),Hee=qC(),Gee=VC(),pd=KC(),Jee=[Bee.default,Kee.default,(0,Hee.default)(),Gee.default,pd.metadataVocabulary,pd.contentVocabulary];HC.default=Jee});var QC=E(function(YC){Object.defineProperty(YC,"__esModule",{value:!0});YC.DiscrError=void 0;var JC;(function(e){e.Tag="tag",e.Mapping="mapping"})(JC||(YC.DiscrError=JC={}))});var r1=E(function(t1){Object.defineProperty(t1,"__esModule",{value:!0});var Vt=te(),bs=QC(),fd=Hl(),Xee=_a(),e1=ue(),Qee={message:({params:{discrError:e,tagName:t}})=>e===bs.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>Vt._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},ete={keyword:"discriminator",type:"object",schemaType:"object",error:Qee,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:s}=e,{oneOf:i}=o;if(!s.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!i)throw Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",Vt._`${r}${Vt.getProperty(a)}`);t.if(Vt._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:bs.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(Vt._`${u} === ${h}`),t.assign(c,d(m[h]));t.else(),e.error(!1,{discrError:bs.DiscrError.Mapping,tag:u,tagName:a}),t.endIf()}function d(m){let h=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},h);return e.mergeEvaluated(g,Vt.Name),h}function f(){var m;let h={},g=b(o),y=!0;for(let I=0;I<i.length;I++){let _=i[I];if((_===null||_===void 0?void 0:_.$ref)&&!e1.schemaHasRulesButRef(_,s.self.RULES)){let x=_.$ref;if(_=fd.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,x),_ instanceof fd.SchemaEnv)_=_.schema;if(_===void 0)throw new Xee.default(s.opts.uriResolver,s.baseId,x)}let S=(m=_===null||_===void 0?void 0:_.properties)===null||m===void 0?void 0:m[a];if(typeof S!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||b(_)),T(S,I)}if(!y)throw Error(`discriminator: "${a}" must be required`);return h;function b({required:I}){return Array.isArray(I)&&I.includes(a)}function T(I,_){if(I.const)k(I.const,_);else if(I.enum)for(let S of I.enum)k(S,_);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(I,_){if(typeof I!="string"||I in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[I]=_}}}};t1.default=ete});var n1=E(function(Hke,rte){rte.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}});var Ry=E(function(yt,Ay){Object.defineProperty(yt,"__esModule",{value:!0});yt.MissingRefError=yt.ValidationError=yt.CodeGen=yt.Name=yt.nil=yt.stringify=yt.str=yt._=yt.KeywordCxt=yt.Ajv=void 0;var nte=XA(),ote=GC(),ste=r1(),o1=n1(),ite=["/properties"],md="http://json-schema.org/draft-07/schema";class ka extends nte.default{_addVocabularies(){if(super._addVocabularies(),ote.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(ste.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(o1,ite):o1;this.addMetaSchema(e,md,!1),this.refs["http://json-schema.org/schema"]=md}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(md)?md:void 0)}}yt.Ajv=ka;Ay.exports=yt=ka;Ay.exports.Ajv=ka;Object.defineProperty(yt,"__esModule",{value:!0});yt.default=ka;var ate=ba();Object.defineProperty(yt,"KeywordCxt",{enumerable:!0,get:function(){return ate.KeywordCxt}});var _s=te();Object.defineProperty(yt,"_",{enumerable:!0,get:function(){return _s._}});Object.defineProperty(yt,"str",{enumerable:!0,get:function(){return _s.str}});Object.defineProperty(yt,"stringify",{enumerable:!0,get:function(){return _s.stringify}});Object.defineProperty(yt,"nil",{enumerable:!0,get:function(){return _s.nil}});Object.defineProperty(yt,"Name",{enumerable:!0,get:function(){return _s.Name}});Object.defineProperty(yt,"CodeGen",{enumerable:!0,get:function(){return _s.CodeGen}});var cte=Zl();Object.defineProperty(yt,"ValidationError",{enumerable:!0,get:function(){return cte.default}});var ute=_a();Object.defineProperty(yt,"MissingRefError",{enumerable:!0,get:function(){return ute.default}})});var m1=E(function(p1){Object.defineProperty(p1,"__esModule",{value:!0});p1.formatNames=p1.fastFormats=p1.fullFormats=void 0;function xr(e,t){return{validate:e,compare:t}}p1.fullFormats={date:xr(c1,Ly),time:xr(zy(!0),jy),"date-time":xr(s1(!0),l1),"iso-time":xr(zy(),u1),"iso-date-time":xr(s1(),d1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:yte,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:xte,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:wte,int32:{type:"number",validate:Ste},int64:{type:"number",validate:vte},float:{type:"number",validate:a1},double:{type:"number",validate:a1},password:!0,binary:!0};p1.fastFormats={...p1.fullFormats,date:xr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Ly),time:xr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jy),"date-time":xr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,l1),"iso-time":xr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u1),"iso-date-time":xr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,d1),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};p1.formatNames=Object.keys(p1.fullFormats);function pte(e){return e%4===0&&(e%100!==0||e%400===0)}var fte=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mte=[0,31,28,31,30,31,30,31,31,30,31,30,31];function c1(e){let t=fte.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&pte(r)?29:mte[n])}function Ly(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var Cy=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function zy(e){return function(r){let n=Cy.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||e&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function jy(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(!(r&&n))return;return r-n}function u1(e,t){if(!(e&&t))return;let r=Cy.exec(e),n=Cy.exec(t);if(!(r&&n))return;if(e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t)return 1;if(e<t)return-1;return 0}var Ny=/t|\s/i;function s1(e){let t=zy(e);return function(n){let o=n.split(Ny);return o.length===2&&c1(o[0])&&t(o[1])}}function l1(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(!(r&&n))return;return r-n}function d1(e,t){if(!(e&&t))return;let[r,n]=e.split(Ny),[o,s]=t.split(Ny),i=Ly(r,o);if(i===void 0)return;return i||jy(n,s)}var hte=/\/|:/,gte=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function yte(e){return hte.test(e)&>e.test(e)}var i1=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wte(e){return i1.lastIndex=0,i1.test(e)}var bte=-2147483648,_te=2147483647;function Ste(e){return Number.isInteger(e)&&e<=_te&&e>=bte}function vte(e){return Number.isInteger(e)}function a1(){return!0}var kte=/[^\\]\\Z/;function xte(e){if(kte.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var y1=E(function(g1){Object.defineProperty(g1,"__esModule",{value:!0});g1.formatLimitDefinition=void 0;var h1=Ry(),Ne=te(),On=Ne.operators,hd={formatMaximum:{okStr:"<=",ok:On.LTE,fail:On.GT},formatMinimum:{okStr:">=",ok:On.GTE,fail:On.LT},formatExclusiveMaximum:{okStr:"<",ok:On.LT,fail:On.GTE},formatExclusiveMinimum:{okStr:">",ok:On.GT,fail:On.LTE}},Tte={message:({keyword:e,schemaCode:t})=>Ne.str`should be ${hd[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Ne._`{comparison: ${hd[e].okStr}, limit: ${t}}`};g1.formatLimitDefinition={keyword:Object.keys(hd),type:"string",schemaType:"string",$data:!0,error:Tte,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:s}=e,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new h1.KeywordCxt(s,a.RULES.all.format.definition,"format");if(c.$data)u();else l();function u(){let f=t.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=t.const("fmt",Ne._`${f}[${c.schemaCode}]`);e.fail$data(Ne.or(Ne._`typeof ${m} != "object"`,Ne._`${m} instanceof RegExp`,Ne._`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw Error(`"${o}": format "${f}" does not define "compare" function`);let h=t.scopeValue("formats",{key:f,ref:m,code:i.code.formats?Ne._`${i.code.formats}${Ne.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return Ne._`${f}.compare(${r}, ${n}) ${hd[o].fail} 0`}},dependencies:["format"]};var Ete=(e)=>(e.addKeyword(g1.formatLimitDefinition),e);g1.default=Ete});var S1=E(function(xa,_1){Object.defineProperty(xa,"__esModule",{value:!0});var Zt=m1(),Ote=y1(),Ss=te(),w1=new Ss.Name("fullFormats"),Ite=new Ss.Name("fastFormats"),qy=(e,t={keywords:!0})=>{if(Array.isArray(t))return b1(e,t,Zt.fullFormats,w1),e;let[r,n]=t.mode==="fast"?[Zt.fastFormats,Ite]:[Zt.fullFormats,w1],o=t.formats||Zt.formatNames;if(b1(e,o,r,n),t.keywords)(0,Ote.default)(e);return e};qy.get=(e,t="full")=>{let n=(t==="fast"?Zt.fastFormats:Zt.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function b1(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=Ss._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}_1.exports=xa=qy;Object.defineProperty(xa,"__esModule",{value:!0});xa.default=qy});var Yd={};Yz(Yd,{program:()=>Nw,createCommand:()=>Lw,createOption:()=>jw,createArgument:()=>Dw,Command:()=>Mw,Option:()=>qw,Argument:()=>Fw,Help:()=>Uw,CommanderError:()=>Ww,InvalidArgumentError:()=>Vw,InvalidOptionArgumentError:()=>Zw},{program:(Xne)=>Nw=Xne,createCommand:(Xne)=>Lw=Xne,createOption:(Xne)=>jw=Xne,createArgument:(Xne)=>Dw=Xne,Command:(Xne)=>Mw=Xne,Option:(Xne)=>qw=Xne,Argument:(Xne)=>Fw=Xne,Help:(Xne)=>Uw=Xne,CommanderError:(Xne)=>Ww=Xne,InvalidArgumentError:(Xne)=>Vw=Xne,InvalidOptionArgumentError:(Xne)=>Zw=Xne});var de={};Jz(de,{ZodISODate:()=>Ks,ZodISODateTime:()=>Bs,ZodISODuration:()=>Gs,ZodISOTime:()=>Hs,date:()=>Cj,datetime:()=>xk,duration:()=>Nj,time:()=>zj});var{Argument:Rw}=Ra(),{Command:Jd}=Aw(),{CommanderError:ON,InvalidArgumentError:Cw}=Ts(),{Help:IN}=Zd(),{Option:zw}=Bd();var Nw=new Jd,Lw=(e)=>new Jd(e),jw=(e,t)=>new zw(e,t),Dw=(e,t)=>new Rw(e,t),Mw=Jd,qw=zw,Fw=Rw,Uw=IN,Ww=ON,Vw=Cw,Zw=Cw;var{program:eoe,createCommand:toe,createArgument:roe,createOption:noe,CommanderError:ooe,InvalidArgumentError:soe,InvalidOptionArgumentError:ioe,Command:Bw,Argument:aoe,Option:coe,Help:uoe}=Yd;function Ps(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Qd(e,t="|"){return e.map((r)=>rp(r)).join(t)}function Os(e,t){if(typeof t==="bigint")return t.toString();return t}class Hw{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;if(e!==void 0)this._value=e(),this._getter=void 0;return this._value}}function Is(e){return new Hw(e)}function Gw(e){return e===null||e===void 0}function Wr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Jw(e,t){let r=e/t,n=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}var Kw=Symbol("evaluating");function Yw(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Kw)return;if(n===void 0)n=Kw,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function _t(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function As(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function Tr(e){return As(e._zod.def)??e._zod.def.shape}function Xw(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return _t(this,t,n),n},enumerable:!0,configurable:!0})}function Qw(e,t,r){if(t in e)_t(e,t,r);else e[t]=r}function Cn(e,t,r,n){let o=Tr(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Xw(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else Qw(e,s,n?n(i.value,s):i.value)}}function AN(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Xw(e,r,()=>t[r]);else Qw(e,r,n.value)}}function St(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function eb(e){return JSON.stringify(e)}function tb(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var ep="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function lo(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var rb=Is(()=>{if(nt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function zn(e){if(lo(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(lo(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function tp(e){if(zn(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}var nb=new Set(["string","number","symbol"]),ob=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Pr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Bt(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function U(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function rp(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function sb(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var Ca=(()=>({safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]}))(),np={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function RN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let s={};return Cn(s,e,za(e,t)),Bt(e,St(r,{shape:s,checks:[]}))}function za(e,t){let r=Tr(e),n=[];for(let o of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,o)?.enumerable)throw Error(`Unrecognized key: "${String(o)}"`);if(t[o])n.push(o)}return n}function CN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let s=new Set(za(e,t)),i={};return Cn(i,e,Reflect.ownKeys(Tr(e)).filter((a)=>!s.has(a))),Bt(e,St(r,{shape:i,checks:[]}))}function zN(e,t){if(!zn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=Tr(e);for(let s of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Bt(e,St(e._zod.def,{shape:ib(e,t)}))}function ib(e,t){let r={};return Cn(r,e,Reflect.ownKeys(Tr(e))),AN(r,t),r}function NN(e,t){if(!zn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Bt(e,St(e._zod.def,{shape:ib(e,t)}))}function LN(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};Cn(r,e,Reflect.ownKeys(Tr(e))),Cn(r,t,Reflect.ownKeys(Tr(t)));let n=St(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Bt(e,n)}function ab(e,t,r,n="partial"){let s=t._zod.def.checks;if(s&&s.length>0)throw Error(`.${n}() cannot be used on object schemas containing refinements`);let a=r?new Set(za(t,r)):void 0,c={};return Cn(c,t,Reflect.ownKeys(Tr(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Bt(t,St(t._zod.def,{shape:c,checks:[]}))}function jN(e,t,r){let n=r?new Set(za(t,r)):void 0,o={};return Cn(o,t,Reflect.ownKeys(Tr(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Bt(t,St(t._zod.def,{shape:o}))}function Ot(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function cb(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function tr(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Es(e){return typeof e==="string"?e:e?.message}function op(e){let t=[];for(let r of e??[]){let n=r._zod.def;if(!/_(length|size)$|_equals$/.test(n.check))break;let o=n.maximum??n.length??n.size;if(o>=0)t.push([o,r])}return t}function Na(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function rr(e,t,r){var n;let o=e.inst?._zod?.traits;if(o?.has("$ZodType"))if(o.has("$ZodCheck"))(n=e).schema??(n.schema=e.inst);else e.schema=e.inst;let s=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,i=e.message?e.message:Es(e.inst?._zod.def?.error?.(e))??Es(s?.(e))??Es(t?.error?.(e))??Es(r.customError?.(e))??Es(r.localeError?.(e))??"Invalid input",a={};for(let c of Object.keys(e)){if(c==="inst"||c==="schema"||c==="continue"||c==="input"||c==="__proto__")continue;a[c]=e[c]}if(a.path??(a.path=[]),a.message=i,t?.reportInput)a.input=e.input;return a}var DN=/[\uD800-\uDBFF]/;function La(e){let t=e.length;if(!DN.test(e))return t;let r=t;for(let n=0;n<t-1;n++)if((e.charCodeAt(n)&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320)r--,n++;return r}function ja(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function ub(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Nn(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function lb(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else MN(e,r,n.value)}}function Er(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function Da(e,t,r){return Er(e,t,r,!1)}function db(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return Er(this,r,n(this))},set(o){Er(this,r,o)}})}return t}function MN(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:Er(this,t,r.bind(this))},set(n){Er(this,t,n)}})}function qN(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var Xd,Ur=!1,FN={configurable:!0,get(){Ur=!0;return}};function re(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&Xd!==e._zod){Xd=void 0;return}Xd=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,FN);let o=Ur;Ur=!1;try{let s=r(this);if(Ur)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return Ur=Ur||o,s}catch(s){throw delete this[t],Ur=Ur||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function UN(e,t,r,n){let o=qN(e,t);if(!o)return;Object.defineProperty(o,t,{configurable:!0,get(){let s={configurable:!0,writable:!0,enumerable:n,value:void 0};return Object.defineProperty(this,t,s),s.value=r(this),Object.defineProperty(this,t,s),s.value},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:n,value:s})}})}var WN="~constantCatch";function pb(e){let t=()=>e;return t[WN]=!0,t}var fb,ip=Object.freeze({status:"aborted"}),sp={value:void 0,enumerable:!1},mb="captureStackTrace"in Error?Error:null;function VN(e){let t=mb;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return mb=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function O(e,t,r,n){let o={};function s(f){this.def=f,this.constr=d,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(f,m){if(!f._zod){sp.value=new s(m);try{Object.defineProperty(f,"_zod",sp)}finally{sp.value=void 0}}else if(f._zod.traits.has(e))return;if(f._zod.traits.add(e),t(f,m),a){let g=Object.getPrototypeOf(f),y=f._zod.constr.prototype,b=g;while(b&&b!==y)b=Object.getPrototypeOf(b);let T=b??g;if(!a.has(T))a.add(T),lb(T,i)}let h=d.prototype;for(let g in h){if(!Object.prototype.hasOwnProperty.call(h,g))continue;if(!(g in f))f[g]=h[g].bind(f)}}let u=n?.Parent??Object;class l extends u{}Object.defineProperty(l,"name",{value:e});function d(f){let m=n?.Parent?VN(l):this;c(m,f);let h=m._zod.deferred;if(h){for(let y of h)y();m._zod.deferred=void 0}let g=globalThis.__zod_globalConfig?.postProcessor;if(g)g(m);return m}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:(f)=>{if(n?.Parent&&f instanceof n.Parent)return!0;return f?._zod?.traits?.has(e)}}),Object.defineProperty(d,"name",{value:e}),d}class nr extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Rs extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(fb=globalThis).__zod_globalConfig??(fb.__zod_globalConfig={});var nt=globalThis.__zod_globalConfig;function ct(e){if(e)Object.assign(nt,e);return nt}function ZN(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Os,2)),e.message}function BN(e){this._zod.message=e}var KN={get:ZN,set:BN,enumerable:!0,configurable:!0},cp={value:void 0,enumerable:!1},hb=new WeakSet([Object.prototype,Error.prototype]),gb=(e,t)=>{e.name="$ZodError",cp.value=t,Object.defineProperty(e,"issues",cp),cp.value=void 0,Object.defineProperty(e,"message",KN);let r=Object.getPrototypeOf(e);if(!hb.has(r))hb.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let n=()=>this.message;return Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0})}})},yb=O("$ZodError",gb),wb=O("$ZodError",gb,void 0,{Parent:Error});function HN(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))if(t==="__proto__")Object.defineProperty(e,t,{value:r(),writable:!0,enumerable:!0,configurable:!0});else e[t]=r();return e[t]}function up(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)HN(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function lp(e,t=(r)=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((a)=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(t(i));else{let c=r,u=0;while(u<a.length){let l=a[u],d=u===a.length-1;if(l==="_errors"){if(d)c._errors.push(t(i));u++;continue}if(!Object.prototype.hasOwnProperty.call(c,l))Object.defineProperty(c,l,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let f=c[l];if(d)f._errors.push(t(i));c=f,u++}}}};return n(e),r}function Ma(e,t){return{callee:t?.callee??e,Err:t?.Err}}var qa=(e)=>{let t=(r,n,o,s)=>{let i=o?{...o,async:!1}:{async:!1},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new nr;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>rr(u,i,ct())));throw ep(c,s?.callee??t),c}return a.value};return t};var Fa=(e)=>{let t=async(r,n,o,s)=>{let i=o?{...o,async:!0}:{async:!0},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>rr(u,i,ct())));throw ep(c,s?.callee??t),c}return a.value};return t};var Cs=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new nr;return s.issues.length?bb(e,s.issues,o):{success:!0,data:s.value}},dp=Cs(wb);function bb(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>rr(o,r,ct()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var Ua=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?bb(e,s.issues,o):{success:!0,data:s.value}};var JN=Symbol.for("zod.compile.invalid"),YN=Symbol.for("zod.compile.fallback"),Wa=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==JN)return!0;if(n.definite===!0&&r===void 0)return!1}return XN(e,t,r)};function XN(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[YN]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new nr;return s.issues.length===0}var Va=async(e,t,r)=>{let n=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},n);if(o instanceof Promise)o=await o;return o.issues.length===0},_b=(e)=>{let t=qa(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,Ma(r,i))};return r};var Sb=(e)=>{let t=qa(e),r=(n,o,s,i)=>t(n,o,s,Ma(r,i));return r};var vb=(e)=>{let t=Fa(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,Ma(r,i))};return r};var kb=(e)=>{let t=Fa(e),r=async(n,o,s,i)=>await t(n,o,s,Ma(r,i));return r};var xb=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Cs(e)(t,r,o)};var $b=(e)=>(t,r,n)=>Cs(e)(t,r,n);var Tb=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Ua(e)(t,r,o)};var Eb=(e)=>async(t,r,n)=>Ua(e)(t,r,n);var Pb=/^[cC][0-9a-z]{6,}$/,Ob=/^[0-9a-z]+$/,Ib=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,Ab=/^[0-9a-vA-V]{20}$/,Rb=/^[A-Za-z0-9]{27}$/,Cb=/^[a-zA-Z0-9_-]{21}$/;function zb(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var Nb=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Lb=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,fp=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var jb=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var QN="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Db(){return new RegExp(QN,"u")}var Mb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,qb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var Fb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ub=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Wb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Vb=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Zb=/^https?$/,Bb=/^\+[1-9]\d{6,14}$/;var Kb="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))";function eL(e){return new RegExp(`^${e}$`)}var Hb=eL(Kb);function pp(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?":"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Gb(e){return new RegExp(`^${pp(e)}$`)}function Jb(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${pp({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${pp({precision:e.precision})}`:r;return new RegExp(`^${Kb}T(?:${n})$`)}var Yb=/^[\s\S]{0,}$/,Xb=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Za=/^-?\d+$/,po=/^-?\d+(?:\.\d+)?$/,Qb=/^(?:true|false)$/i,e_=/^null$/i;var t_=/^[^A-Z]*$/,r_=/^[^a-z]*$/;var He=O("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var mp=(e)=>{let t=e.value;return!Gw(t)&&t.length!==void 0},Ba={number:"number",bigint:"bigint",object:"date"},hp=O("$ZodCheckLessThan",(e,t)=>{He.init(e,t);let r=Ba[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:Ba[typeof n.value]??r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),gp=O("$ZodCheckGreaterThan",(e,t)=>{He.init(e,t);let r=Ba[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:Ba[typeof n.value]??r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),n_=O("$ZodCheckMultipleOf",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):Jw(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),o_=O("$ZodCheckNumberFormat",(e,t)=>{He.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=Ca[t.format];e._zod.check=(i)=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(a<o)i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>s)i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:e,continue:!t.abort})}});var s_=O("$ZodCheckMaxLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=mp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?La(o):s)<=t.maximum)return;let a=ja(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),i_=O("$ZodCheckMinLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=mp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?La(o):s)>=t.minimum)return;let a=ja(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),a_=O("$ZodCheckLengthEquals",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=mp),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?La(o):s;if(i===t.length)return;let a=ja(o),c=i>t.length;n.issues.push({origin:a,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),zs=O("$ZodCheckStringFormat",(e,t)=>{var r,n;if(He.init(e,t),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),c_=O("$ZodCheckRegex",(e,t)=>{zs.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),u_=O("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=t_),zs.init(e,t)}),l_=O("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=r_),zs.init(e,t)}),d_=O("$ZodCheckIncludes",(e,t)=>{He.init(e,t);let r=Pr(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position},}${r}`:r);t.pattern=n,e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),p_=O("$ZodCheckStartsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`^${Pr(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),f_=O("$ZodCheckEndsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`.*${Pr(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var m_=O("$ZodCheckOverwrite",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class yp{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
173
173
|
`).filter((s)=>s),n=Math.min(...r.map((s)=>s.length-s.trimStart().length)),o=r.map((s)=>s.slice(n)).map((s)=>" ".repeat(this.indent*2)+s);for(let s of o)this.content.push(s)}compile(){let e=Function,t=this?.content??[""];return new e(...Object.keys(this.closed),`return function (${this.args.join(", ")}) {
|
|
174
174
|
${t.join(`
|
|
175
175
|
`)}
|
|
176
|
-
};`)(...Object.values(this.closed))}}var l_={major:4,minor:6,patch:7};var fe=O("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=l_;let n=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...n??[]]:n?.length?[...n]:[];for(let s of o)for(let i of s._zod.onattach)i(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let s=(a,c,u)=>{if(a.memo)return a;let l=Pt(a),d;for(let f of c){if(f._zod.def.when){if(rb(a))continue;if(!f._zod.def.when(a))continue}else if(l)continue;let m=a.issues.length,h=f._zod.check(a);if(h instanceof Promise&&u?.async===!1)throw new tr;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if(Ca(a.issues,m,e),!l)l=Pt(a,m)});else{if(a.issues.length===m)continue;if(Ca(a.issues,m,e),!l)l=Pt(a,m)}}if(d)return d.then(()=>a);return a},i=(a,c,u)=>{if(Pt(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new tr;return l.then((d)=>e._zod.parse(d,u))}return e._zod.parse(l,u)};e._zod.run=(a,c)=>{if(c.skipChecks)return e._zod.parse(a,c);if(c.direction==="backward"){let l=e._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});if(l instanceof Promise)return l.then((d)=>i(d,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new tr;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return La(this,"~standard",gp(this))},set "~standard"(e){$r(this,"~standard",e)}}),x_=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>er(r,t,at()))}:{value:e.value};async function JN(e,t){let r={async:!0};return x_(await e._zod.run({value:t,issues:[]},r),r)}function gp(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return x_(n,r)}catch(n){}return JN(e,t)},vendor:"zod",version:1}}var Ha=O("$ZodString",(e,t)=>{fe.init(e,t),e._zod.pattern=t.pattern??Zb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),xe=O("$ZodStringFormat",(e,t)=>{As.init(e,t),Ha.init(e,t)}),$_=O("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Ib),xe.init(e,t)}),T_=O("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=up(n))}else t.pattern??(t.pattern=up());xe.init(e,t)}),E_=O("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ab),xe.init(e,t)}),P_=1,Ba=2;function O_(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function YN(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return O_(e)||Ba;return XN(e,t)}function XN(e,t){if(!t.normalize&&t.protocol?.source===Mb.source&&!/^https?:\/\//i.test(e))return P_;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??Ba}return new URL(e)}catch{return Ba}}var QN=/[\t\n\r]/g;function d_(e){return e.replace(QN,"")}function eL(e,t){return t.lastIndex=0,t.test(e.hostname)}function tL(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var I_=O("$ZodURL",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=YN(n,t);if(o===P_){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===Ba){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=d_(n);return}if(t.hostname&&!eL(o,t.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort});if(t.protocol&&!tL(o,t.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort});r.value=t.normalize?o.href:d_(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),A_=O("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Rb()),xe.init(e,t)}),R_=O("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?Eb:Pb(t.length)),xe.init(e,t)}),C_=O("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Sb),xe.init(e,t)}),z_=O("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=kb),xe.init(e,t)}),N_=O("$ZodULID",(e,t)=>{t.pattern??(t.pattern=xb),xe.init(e,t)}),L_=O("$ZodXID",(e,t)=>{t.pattern??(t.pattern=$b),xe.init(e,t)}),j_=O("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Tb),xe.init(e,t)}),D_=O("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Vb(t)),xe.init(e,t)}),M_=O("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Ub),xe.init(e,t)}),q_=O("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Wb(t)),xe.init(e,t)}),F_=O("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Ob),xe.init(e,t)}),U_=O("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Cb),xe.init(e,t)}),rL=/^[0-9a-fA-F:.]+$/;function W_(e){if(!rL.test(e))return!1;return O_(`http://[${e}]`)}var V_=O("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=zb),xe.init(e,t),e._zod.check=(r)=>{if(!W_(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Z_=O("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Nb),xe.init(e,t)});function nL(e){let t=e.split("/");if(t.length!==2)return!1;let[r,n]=t;if(!n)return!1;let o=Number(n);if(`${o}`!==n)return!1;if(o<0||o>128)return!1;return W_(r)}var B_=O("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Lb),xe.init(e,t),e._zod.check=(r)=>{if(!nL(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function K_(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var yp=/^[0-9a-zA-Z+/]*={0,2}$/,H_=O("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=yp),xe.init(e,t),e._zod.check=(r)=>{if(K_(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Ga=/^[A-Za-z0-9_-]*$/;function oL(e){if(!Ga.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return K_(r)}var G_=O("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ga),xe.init(e,t),e._zod.check=(r)=>{if(oL(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),J_=O("$ZodE164",(e,t)=>{t.pattern??(t.pattern=qb),xe.init(e,t)});function sL(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var Y_=O("$ZodJWT",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{if(sL(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var wp=O("$ZodNumber",(e,t)=>{fe.init(e,t),e._zod.pattern=uo,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(i){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?String(o):void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),r}}),X_=O("$ZodNumberFormat",(e,t)=>{Xb.init(e,t),wp.init(e,t)}),Q_=O("$ZodBoolean",(e,t)=>{fe.init(e,t),e._zod.pattern=Kb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(s){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var ev=O("$ZodNull",(e,t)=>{fe.init(e,t),e._zod.pattern=Hb,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;if(o===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}}),tv=O("$ZodAny",(e,t)=>{fe.init(e,t),e._zod.parse=(r)=>r}),rv=O("$ZodUnknown",(e,t)=>{fe.init(e,t),e._zod.parse=(r)=>r}),nv=O("$ZodNever",(e,t)=>{fe.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function iL(e,t){let r=ep(e._zod.def.checks);if(!r.length)return;let n=Math.min(...r.map((s)=>s[0])),o=e._zod.parse;e._zod.parse=(s,i)=>{let a=t(s.value);if(a>n&&!i?.skipChecks&&i?.direction!=="backward"){for(let[c,u]of ep(e._zod.def.checks))if(a>c&&u._zod.def.when(s)){let l=s.issues.length;return u._zod.check(s),s.issues[l].continue=!1,Ca(s.issues,l,e),s}}return o(s,i)}}var aL=(e)=>Array.isArray(e)?e.length:-1;function p_(e,t,r){if(e.issues.length)t.issues.push(...Qt(r,e.issues));t.value[r]=e.value}var ov=O("$ZodArray",(e,t)=>{fe.init(e,t);let r=rt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),n;n.value=r?r.alloc(e,n,Array(s.length),o):Array(s.length);let i=[],a=o?.abortEarly;for(let c=0;c<s.length;c++){let u=s[c],l=t.element._zod.run({value:u,issues:[]},o);if(l instanceof Promise)i.push(l.then((d)=>p_(d,n,c)));else if(p_(l,n,c),a&&l.issues.length!==0&&Pt(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},iL(e,aL)});function Ka(e,t,r,n,o,s){let i=r in n,a=s==="optional";if(!i&&a&&o==="optional")return;if(e.issues.length){if(o!==void 0&&a&&!i)return;t.issues.push(...Qt(r,e.issues))}if(!i&&o===void 0){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(i||o==="defaulted"&&!a)t.value[r]=void 0}else t.value[r]=e.value}var cL=[];function sv(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:cL,o=n.length?[...t,...n]:t;for(let i of o)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(i)}": expected a Zod schema`);let s=Qw(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function iv(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:d,optout:f}=u,m=0;for(let h in t){if(i&&r.issues.length!==m){if(Pt(r,m))break;m=r.issues.length}if(c.has(h))continue;if(h==="__proto__"){if(l==="never")a.push(h);continue}if(l==="never"){a.push(h);continue}let g=u.run({value:t[h],issues:[]},n);if(g instanceof Promise)e.push(g.then((y)=>Ka(y,r,h,t,d,f)));else Ka(g,r,h,t,d,f)}if(a.length)r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:s,continue:!0});if(!e.length)return r;return Promise.all(e).then(()=>r)}var uL=O("$ZodObject",(e,t)=>{fe.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape"),n=r?.get?r.get.raw:t.shape??{};if(n){let u=()=>{let l={...n};return Object.defineProperty(t,"shape",{value:l}),u.raw=l,l};u.raw=n,Object.defineProperty(t,"shape",{get:u})}let o=Es(()=>sv(t));re(e,"propValues",(u)=>{let l=u.def.shape,d={};for(let f in l){let m=l[f]._zod;if(m.values){if(!Object.prototype.hasOwnProperty.call(d,f))bt(d,f,new Set);for(let h of m.values)d[f].add(h);if(m.optin!==void 0)d[f].add(void 0)}}return d});let s=co,i=t.catchall,a,c=rt.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let d=u.value;if(!s(d))return u.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),u;u.value=c?c.alloc(e,u,{},l):{};let f=[],m=a.shape,h=l?.abortEarly,g=u.issues.length;for(let y of a.allKeys){if(h&&u.issues.length!==g){if(Pt(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let b=m[y],T=b._zod.optin,S=b._zod.optout,I=b._zod.run({value:d[y],issues:[]},l);if(I instanceof Promise)f.push(I.then((_)=>Ka(_,u,y,d,T,S)));else Ka(I,u,y,d,T,S)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return iv(f,d,u,l,o.value,e,h===!0)}}),av=O("$ZodObjectJIT",(e,t)=>{uL.init(e,t);let r=e._zod.parse,n=Es(()=>sv(t)),o=rt.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new fp(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),b=(_)=>`shape[${_}]._zod.run({ value: input[${_}], issues: [] }, ctx)`,T=(_,v)=>`
|
|
176
|
+
};`)(...Object.values(this.closed))}}var g_={major:4,minor:6,patch:7};var me=O("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=g_;let n=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...n??[]]:n?.length?[...n]:[];for(let s of o)for(let i of s._zod.onattach)i(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let s=(a,c,u)=>{if(a.memo)return a;let l=Ot(a),d;for(let f of c){if(f._zod.def.when){if(cb(a))continue;if(!f._zod.def.when(a))continue}else if(l)continue;let m=a.issues.length,h=f._zod.check(a);if(h instanceof Promise&&u?.async===!1)throw new nr;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if(Na(a.issues,m,e),!l)l=Ot(a,m)});else{if(a.issues.length===m)continue;if(Na(a.issues,m,e),!l)l=Ot(a,m)}}if(d)return d.then(()=>a);return a},i=(a,c,u)=>{if(Ot(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new nr;return l.then((d)=>e._zod.parse(d,u))}return e._zod.parse(l,u)};e._zod.run=(a,c)=>{if(c.skipChecks)return e._zod.parse(a,c);if(c.direction==="backward"){let l=e._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});if(l instanceof Promise)return l.then((d)=>i(d,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new nr;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return Da(this,"~standard",_p(this))},set "~standard"(e){Er(this,"~standard",e)}}),I_=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>rr(r,t,ct()))}:{value:e.value};async function tL(e,t){let r={async:!0};return I_(await e._zod.run({value:t,issues:[]},r),r)}function _p(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return I_(n,r)}catch(n){}return tL(e,t)},vendor:"zod",version:1}}var Ja=O("$ZodString",(e,t)=>{me.init(e,t),e._zod.pattern=t.pattern??Yb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),xe=O("$ZodStringFormat",(e,t)=>{zs.init(e,t),Ja.init(e,t)}),A_=O("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Lb),xe.init(e,t)}),R_=O("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=fp(n))}else t.pattern??(t.pattern=fp());xe.init(e,t)}),C_=O("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=jb),xe.init(e,t)}),z_=1,Ha=2;function N_(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function rL(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return N_(e)||Ha;return nL(e,t)}function nL(e,t){if(!t.normalize&&t.protocol?.source===Zb.source&&!/^https?:\/\//i.test(e))return z_;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??Ha}return new URL(e)}catch{return Ha}}var oL=/[\t\n\r]/g;function y_(e){return e.replace(oL,"")}function sL(e,t){return t.lastIndex=0,t.test(e.hostname)}function iL(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var L_=O("$ZodURL",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=rL(n,t);if(o===z_){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===Ha){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=y_(n);return}if(t.hostname&&!sL(o,t.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort});if(t.protocol&&!iL(o,t.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort});r.value=t.normalize?o.href:y_(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),j_=O("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Db()),xe.init(e,t)}),D_=O("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?Cb:zb(t.length)),xe.init(e,t)}),M_=O("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Pb),xe.init(e,t)}),q_=O("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ob),xe.init(e,t)}),F_=O("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Ib),xe.init(e,t)}),U_=O("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Ab),xe.init(e,t)}),W_=O("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Rb),xe.init(e,t)}),V_=O("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Jb(t)),xe.init(e,t)}),Z_=O("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Hb),xe.init(e,t)}),B_=O("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Gb(t)),xe.init(e,t)}),K_=O("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Nb),xe.init(e,t)}),H_=O("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Mb),xe.init(e,t)}),aL=/^[0-9a-fA-F:.]+$/;function G_(e){if(!aL.test(e))return!1;return N_(`http://[${e}]`)}var J_=O("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=qb),xe.init(e,t),e._zod.check=(r)=>{if(!G_(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Y_=O("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Fb),xe.init(e,t)});function cL(e){let t=e.split("/");if(t.length!==2)return!1;let[r,n]=t;if(!n)return!1;let o=Number(n);if(`${o}`!==n)return!1;if(o<0||o>128)return!1;return G_(r)}var X_=O("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Ub),xe.init(e,t),e._zod.check=(r)=>{if(!cL(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function Q_(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Sp=/^[0-9a-zA-Z+/]*={0,2}$/,eS=O("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Sp),xe.init(e,t),e._zod.check=(r)=>{if(Q_(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Ya=/^[A-Za-z0-9_-]*$/;function uL(e){if(!Ya.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Q_(r)}var tS=O("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ya),xe.init(e,t),e._zod.check=(r)=>{if(uL(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),rS=O("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Bb),xe.init(e,t)});function lL(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var nS=O("$ZodJWT",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{if(lL(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var vp=O("$ZodNumber",(e,t)=>{me.init(e,t),e._zod.pattern=po,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(i){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?String(o):void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),r}}),oS=O("$ZodNumberFormat",(e,t)=>{o_.init(e,t),vp.init(e,t)}),sS=O("$ZodBoolean",(e,t)=>{me.init(e,t),e._zod.pattern=Qb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(s){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var iS=O("$ZodNull",(e,t)=>{me.init(e,t),e._zod.pattern=e_,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;if(o===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}}),aS=O("$ZodAny",(e,t)=>{me.init(e,t),e._zod.parse=(r)=>r}),cS=O("$ZodUnknown",(e,t)=>{me.init(e,t),e._zod.parse=(r)=>r}),uS=O("$ZodNever",(e,t)=>{me.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function dL(e,t){let r=op(e._zod.def.checks);if(!r.length)return;let n=Math.min(...r.map((s)=>s[0])),o=e._zod.parse;e._zod.parse=(s,i)=>{let a=t(s.value);if(a>n&&!i?.skipChecks&&i?.direction!=="backward"){for(let[c,u]of op(e._zod.def.checks))if(a>c&&u._zod.def.when(s)){let l=s.issues.length;return u._zod.check(s),s.issues[l].continue=!1,Na(s.issues,l,e),s}}return o(s,i)}}var pL=(e)=>Array.isArray(e)?e.length:-1;function w_(e,t,r){if(e.issues.length)t.issues.push(...tr(r,e.issues));t.value[r]=e.value}var lS=O("$ZodArray",(e,t)=>{me.init(e,t);let r=nt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),n;n.value=r?r.alloc(e,n,Array(s.length),o):Array(s.length);let i=[],a=o?.abortEarly;for(let c=0;c<s.length;c++){let u=s[c],l=t.element._zod.run({value:u,issues:[]},o);if(l instanceof Promise)i.push(l.then((d)=>w_(d,n,c)));else if(w_(l,n,c),a&&l.issues.length!==0&&Ot(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},dL(e,pL)});function Ga(e,t,r,n,o,s){let i=r in n,a=s==="optional";if(!i&&a&&o==="optional")return;if(e.issues.length){if(o!==void 0&&a&&!i)return;t.issues.push(...tr(r,e.issues))}if(!i&&o===void 0){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(i||o==="defaulted"&&!a)t.value[r]=void 0}else t.value[r]=e.value}var fL=[];function dS(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:fL,o=n.length?[...t,...n]:t;for(let i of o)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(i)}": expected a Zod schema`);let s=sb(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function pS(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:d,optout:f}=u,m=0;for(let h in t){if(i&&r.issues.length!==m){if(Ot(r,m))break;m=r.issues.length}if(c.has(h))continue;if(h==="__proto__"){if(l==="never")a.push(h);continue}if(l==="never"){a.push(h);continue}let g=u.run({value:t[h],issues:[]},n);if(g instanceof Promise)e.push(g.then((y)=>Ga(y,r,h,t,d,f)));else Ga(g,r,h,t,d,f)}if(a.length)r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:s,continue:!0});if(!e.length)return r;return Promise.all(e).then(()=>r)}var mL=O("$ZodObject",(e,t)=>{me.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape"),n=r?.get?r.get.raw:t.shape??{};if(n){let u=()=>{let l={...n};return Object.defineProperty(t,"shape",{value:l}),u.raw=l,l};u.raw=n,Object.defineProperty(t,"shape",{get:u})}let o=Is(()=>dS(t));re(e,"propValues",(u)=>{let l=u.def.shape,d={};for(let f in l){let m=l[f]._zod;if(m.values){if(!Object.prototype.hasOwnProperty.call(d,f))_t(d,f,new Set);for(let h of m.values)d[f].add(h);if(m.optin!==void 0)d[f].add(void 0)}}return d});let s=lo,i=t.catchall,a,c=nt.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let d=u.value;if(!s(d))return u.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),u;u.value=c?c.alloc(e,u,{},l):{};let f=[],m=a.shape,h=l?.abortEarly,g=u.issues.length;for(let y of a.allKeys){if(h&&u.issues.length!==g){if(Ot(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let b=m[y],T=b._zod.optin,k=b._zod.optout,I=b._zod.run({value:d[y],issues:[]},l);if(I instanceof Promise)f.push(I.then((_)=>Ga(_,u,y,d,T,k)));else Ga(I,u,y,d,T,k)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return pS(f,d,u,l,o.value,e,h===!0)}}),fS=O("$ZodObjectJIT",(e,t)=>{mL.init(e,t);let r=e._zod.parse,n=Is(()=>dS(t)),o=nt.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new yp(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),b=(_)=>`shape[${_}]._zod.run({ value: input[${_}], issues: [] }, ctx)`,T=(_,S)=>`
|
|
177
177
|
let ${_}_ab = false;
|
|
178
178
|
for (let i = 0; i < ${_}.issues.length; i++) {
|
|
179
179
|
const iss = ${_}.issues[i];
|
|
180
|
-
iss.path = iss.path ? [${
|
|
180
|
+
iss.path = iss.path ? [${S}, ...iss.path] : [${S}];
|
|
181
181
|
payload.issues.push(iss);
|
|
182
182
|
if (iss.continue !== true) ${_}_ab = true;
|
|
183
183
|
}
|
|
184
184
|
if (${_}_ab && ctx && ctx.abortEarly) {
|
|
185
185
|
payload.value = newResult;
|
|
186
186
|
return payload;
|
|
187
|
-
}`;y.write("const input = payload.value;");let
|
|
188
|
-
const ${
|
|
189
|
-
if (!${
|
|
190
|
-
if (${
|
|
187
|
+
}`;y.write("const input = payload.value;");let k=Object.create(null),I=0;for(let _ of h.allKeys)k[_]=`key_${I++}`;y.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let _ of h.allKeys){if(_==="__proto__")continue;let S=k[_],x=typeof _==="symbol"?`syms[${g.indexOf(_)}]`:eb(_),A=`${x} in input`,D=m[_],Y=D?._zod?.optin,ie=Y!==void 0,ae=D?._zod?.optout==="optional";if(y.write(`const ${S} = ${b(x)};`),ie&&ae){let qe=Y==="optional"?`${S}_present`:`${S}.value !== undefined || ${S}_present`;y.write(`
|
|
188
|
+
const ${S}_present = ${A};
|
|
189
|
+
if (!${S}.issues.length || ${S}_present) {
|
|
190
|
+
if (${S}.issues.length) {${T(S,x)}
|
|
191
191
|
}
|
|
192
192
|
|
|
193
|
-
if (${
|
|
194
|
-
newResult[${x}] = ${
|
|
193
|
+
if (${qe}) {
|
|
194
|
+
newResult[${x}] = ${S}.value;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
|
|
198
198
|
`)}else if(!ie)y.write(`
|
|
199
|
-
const ${
|
|
200
|
-
if (${
|
|
199
|
+
const ${S}_present = ${A};
|
|
200
|
+
if (${S}.issues.length) {${T(S,x)}
|
|
201
201
|
}
|
|
202
|
-
if (!${
|
|
202
|
+
if (!${S}_present && !${S}.issues.length) {
|
|
203
203
|
payload.issues.push({
|
|
204
204
|
code: "invalid_type",
|
|
205
205
|
expected: "nonoptional",
|
|
@@ -212,135 +212,135 @@ ${t.join(`
|
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
214
|
|
|
215
|
-
if (${
|
|
216
|
-
newResult[${x}] = ${
|
|
215
|
+
if (${S}_present) {
|
|
216
|
+
newResult[${x}] = ${S}.value;
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
`);else if(y.write(`
|
|
220
|
-
if (${
|
|
220
|
+
if (${S}.issues.length) {${T(S,x)}
|
|
221
221
|
}
|
|
222
|
-
`),Y==="defaulted")y.write(`newResult[${x}] = ${
|
|
223
|
-
if (${
|
|
224
|
-
newResult[${x}] = ${
|
|
222
|
+
`),Y==="defaulted")y.write(`newResult[${x}] = ${S}.value;`);else y.write(`
|
|
223
|
+
if (${S}.value !== undefined || ${A}) {
|
|
224
|
+
newResult[${x}] = ${S}.value;
|
|
225
225
|
}
|
|
226
|
-
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=co,c=!rt.jitless,l=c&&Jw.value,d=t.catchall,f;e._zod.parse=(m,h)=>{f??(f=n.value);let g=m.value;if(!a(g))return m.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),m;if(c&&l&&h?.async===!1&&h.jitless!==!0){if(!i)i=s(t.shape);if(m=i(m,h),!d)return m;return iv([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function f_(e,t,r,n){for(let s of e)if(s.issues.length===0)return t.value=s.value,t;let o=e.filter((s)=>!Pt(s));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((s)=>s.issues.map((i)=>er(i,n,at())))}),t}var bp=O("$ZodUnion",(e,t)=>{fe.init(e,t),re(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),re(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),re(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),re(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>Fr(s.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of t.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}if(!s)return f_(i,n,e,o);return Promise.all(i).then((a)=>f_(a,n,e,o))}});function lL(e){let t=new Map;for(let r of e.options){let n=r._zod.propValues?.[e.discriminator];if(!n||n.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(r)}"`);for(let o of n)if(t.has(o)){if(o!==void 0)throw Error(`Duplicate discriminator value "${String(o)}"`);t.set(o,null)}else t.set(o,r)}return t}var cv=O("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,bp.init(e,t);let r=e._zod.parse;re(e,"propValues",(o)=>{let s={},i=0;for(let a of o.def.options){let c=a._zod.propValues;if(!c||Object.keys(c).length===0)throw Error(`Invalid discriminated union option at index "${o.def.options.indexOf(a)}"`);if(c[o.def.discriminator]?.has(void 0))i++;for(let[u,l]of Object.entries(c)){if(!Object.prototype.hasOwnProperty.call(s,u))bt(s,u,new Set);for(let d of l)s[u].add(d)}}if(!o.def.unionFallback&&i>1)s[o.def.discriminator]?.delete(void 0);return s}),t.options.forEach((o,s)=>{let i=Ps(o._zod.def);if(i&&!Object.prototype.hasOwnProperty.call(i,t.discriminator))throw Error(`Invalid discriminated union option at index "${s}"`)});let n=Es(()=>lL(t));e._zod.parse=(o,s)=>{let i=o.value;if(!co(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;let a=i?.[t.discriminator],c=n.value.get(a);if(c&&(a!==void 0||s.direction!=="backward"))return c._zod.run(o,s);if(t.unionFallback||s.direction==="backward")return r(o,s);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(n.value.keys()).filter((u)=>n.value.get(u)!==null),input:i,path:[t.discriminator],inst:e}),o}}),uv=O("$ZodIntersection",(e,t)=>{fe.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,s=t.left._zod.run({value:o,issues:[]},n),i=t.right._zod.run({value:o,issues:[]},n);if(s instanceof Promise||i instanceof Promise)return Promise.all([s,i]).then(([c,u])=>m_(r,c,u));return m_(r,s,i)}});function mp(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Rn(e)&&Rn(t)){let r=Object.keys(t),n=Object.keys(e).filter((s)=>r.indexOf(s)!==-1),o={...e,...t};if(Object.prototype.hasOwnProperty.call(o,"__proto__"))delete o.__proto__;for(let s of n){if(s==="__proto__")continue;let i=mp(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],s=t[n],i=mp(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function m_(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let d;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),d=u.keys;else if(u.code==="invalid_key"&&u.origin==="record"&&u.path?.length===1){let f=String(u.path[0]);if(!s.has(f))s.set(f,u);d=[f]}else return!1;for(let f of d){if(!n.has(f))n.set(f,{});n.get(f)[l]=!0}return!0};for(let u of t.issues)if(!i(u,"l"))e.issues.push(u);for(let u of r.issues)if(!i(u,"r"))e.issues.push(u);let a=[...n].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(a.length){let u=o?a.filter((l)=>o.keys.includes(l)):[];if(u.length)e.issues.push({...o,keys:u});for(let l of a)if(!u.includes(l)&&s.has(l))e.issues.push(s.get(l))}let c=mp(t.value,r.value);if(!c.valid){if(Pt(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var lv=O("$ZodTuple",(e,t)=>{fe.init(e,t);let r=t.items,n=rt.memoizer;n?.attach(e),e._zod.parse=(o,s)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),o;o.value=n?n.alloc(e,o,[],s):[];let a=[],c=h_(r,"optin"),u=h_(r,"optout");if(!t.rest){if(i.length<c)return o.issues.push({code:"too_small",minimum:c,inclusive:!0,input:i,inst:e,origin:"array"}),o;if(i.length>r.length)o.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:i,inst:e,origin:"array"})}let l=Array(r.length),d=t.rest?s?.abortEarly:void 0,f=!1;for(let m=0;m<r.length;m++){let h=r[m]._zod.run({value:i[m],issues:[]},s);if(h instanceof Promise)a.push(h.then((g)=>{l[m]=g}));else if(l[m]=h,d&&!f&&h.issues.length)f=Pt(h)}if(t.rest&&!f){let m=r.length-1,h=i.slice(r.length),g=o.issues.length;for(let y of h){if(d&&o.issues.length!==g){if(Pt(o,g))break;g=o.issues.length}m++;let b=t.rest._zod.run({value:y,issues:[]},s);if(b instanceof Promise)a.push(b.then((T)=>g_(T,o,m)));else g_(b,o,m)}}if(a.length)return Promise.all(a).then(()=>y_(l,o,r,i,u));return y_(l,o,r,i,u)}});function h_(e,t){for(let r=e.length-1;r>=0;r--)if(!(t==="optin"?e[r]._zod.optin!==void 0:e[r]._zod.optout==="optional"))return r+1;return 0}function g_(e,t,r){if(e.issues.length)t.issues.push(...Qt(r,e.issues));t.value[r]=e.value}function y_(e,t,r,n,o){for(let s=0;s<r.length;s++){let i=e[s],a=s<n.length;if(!a&&s>=o&&r[s]._zod.optin==="optional"){t.value.length=s;break}if(i.issues.length){if(!a&&s>=o){t.value.length=s;break}t.issues.push(...Qt(s,i.issues))}t.value[s]=i.value}for(let s=t.value.length-1;s>=n.length;s--)if(r[s]._zod.optout==="optional"&&t.value[s]===void 0)t.value.length=s;else break;return t}var dv=O("$ZodRecord",(e,t)=>{fe.init(e,t);let r=rt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Rn(s))return n.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a&&!t.partial){n.value=r?r.alloc(e,n,{},o):{};let c=new Set;for(let l of a)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){if(c.add(typeof l==="number"?l.toString():l),l==="__proto__")continue;let d=t.keyType._zod.run({value:l,issues:[]},o);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((h)=>er(h,o,at())),input:l,path:[l],inst:e});continue}let f=d.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[l],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Qt(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Qt(l,m.issues));n.value[f]=m.value}}let u;for(let l in s)if(!c.has(l))if(t.mode==="loose"){if(l==="__proto__")continue;n.value[l]=s[l]}else u=u??[],u.push(l);if(u&&u.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:u,continue:!0})}else{n.value=r?r.alloc(e,n,{},o):{};let c;for(let u of Reflect.ownKeys(s)){if(u==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(s,u))continue;let l=t.keyType._zod.run({value:u,issues:[]},o);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&uo.test(u)&&l.issues.length){let h=t.keyType._zod.run({value:Number(u),issues:[]},o);if(h instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(h.issues.length===0)l=h}if(l.issues.length){if(t.mode==="loose")n.value[u]=s[u];else if(a)c=c??[],c.push(u);else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((h)=>er(h,o,at())),input:u,path:[u],inst:e});continue}let f=l.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[u],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Qt(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Qt(u,m.issues));n.value[f]=m.value}}if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:c,continue:!0})}if(i.length)return Promise.all(i).then(()=>n);return n}});var pv=O("$ZodEnum",(e,t)=>{fe.init(e,t);let r=$s(t.entries),n=new Set(r);e._zod.values=n,re(e,"pattern",(o)=>{let s=$s(o.def.entries).filter((i)=>Yw.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>Tr(i.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{let i=o.value;if(n.has(i))return o;return o.issues.push({code:"invalid_value",values:r,input:i,inst:e}),o}}),fv=O("$ZodLiteral",(e,t)=>{fe.init(e,t);let r=new Set(t.values);e._zod.values=r,re(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?Tr(s):s?Tr(s.toString()):String(s)).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(n,o)=>{let s=n.value;if(r.has(s))return n;return n.issues.push({code:"invalid_value",values:t.values,input:s,inst:e}),n}});var mv=O("$ZodTransform",(e,t)=>{fe.init(e,t),e._zod.optin="optional",rt.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Os(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((i)=>(r.value=i,r));if(o instanceof Promise)throw new tr;return r.value=o,r}});function w_(e,t){return e.value=t.issues.length?void 0:t.value,e}var _p=O("$ZodOptional",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Fr(n.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(r.value===void 0){if(t.innerType._zod.optin!=="defaulted")return r;let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>w_(r,s));return w_(r,o)}return t.innerType._zod.run(r,n)}}),hv=O("$ZodExactOptional",(e,t)=>{_p.init(e,t),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),gv=O("$ZodNullable",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Fr(n.source)}|null)$`):void 0}),re(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),yv=O("$ZodDefault",(e,t)=>{fe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>b_(s,t));return b_(o,t)}});function b_(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var wv=O("$ZodPrefault",(e,t)=>{fe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),bv=O("$ZodNonOptional",(e,t)=>{fe.init(e,t),re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>__(s,e));return __(o,e)}});function __(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function v_(e,t,r,n){if(!t.issues.length){if(e.value=t.value,t.memo)e.memo=!0;return e}return e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map((o)=>er(o,n,at()))},input:e.value}),e}var _v=O("$ZodCatch",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>v_(r,s,t,n));return v_(r,o,t,n)}});var vp=O("$ZodPipe",(e,t)=>{fe.init(e,t),re(e,"values",(r)=>r.def.in._zod.values),re(e,"optin",(r)=>r.def.in._zod.optin),re(e,"optout",(r)=>r.def.out._zod.optout),re(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>Za(i,t.in,n));return Za(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Za(s,t.out,n));return Za(o,t.out,n)}});function Za(e,t,r){if(e.issues.some((n)=>n.code!=="unrecognized_keys"))return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},r)}var vv=O("$ZodPreprocess",(e,t)=>{vp.init(e,t)}),Sv=O("$ZodReadonly",(e,t)=>{fe.init(e,t),re(e,"propValues",(r)=>r.def.innerType._zod.propValues),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"optin",(r)=>r.def.innerType?._zod?.optin),re(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(S_);return S_(o)}});function S_(e){if(!e.memo)e.value=Object.freeze(e.value);return e}function dL(e){let t=e._zod.def,r=t.pattern,n=!!t.format?.includes("int"),o,s;for(let a of t.checks??[]){let c=a._zod.def;if(c.pattern)r=c.pattern;n||(n=!!c.format?.includes("int"));let u=c.minimum??c.length,l=c.maximum??c.length;if(u!==void 0&&(o===void 0||u>o))o=u;if(l!==void 0&&(s===void 0||l<s))s=l}if(r)return r.source;if(o!==void 0&&s!==void 0&&o>s)return"(?!)";if(o!==void 0||s!==void 0)return Bb({minimum:o,maximum:s}).source;let i=e._zod.pattern;return(n&&i===uo?Wa:i)?.source}function hp(e){let t=e._zod.def,r=e._zod.pattern?.source,n=t.innerType??e._zod.innerType;if(n){let o=n._zod.pattern?.source,s=hp(n);if(r&&o&&s&&s!==o)return r.replace(Fr(o),()=>Fr(s));return r}if(t.options){let o=t.options.map(hp);if(o.every(Boolean))return`^(${o.map((s)=>Fr(s)).join("|")})$`}return dL(e)}var kv=O("$ZodTemplateLiteral",(e,t)=>{fe.init(e,t);let r=[];for(let n of t.parts)if(typeof n==="object"&&n!==null){let o=hp(n);if(!o)throw Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);r.push(Fr(o))}else if(n===null||Xw.has(typeof n))r.push(Tr(`${n}`));else throw Error(`Invalid template literal part: ${n}`);e._zod.pattern=new RegExp(`^${r.join("")}$`),e._zod.parse=(n,o)=>{if(typeof n.value!=="string")return n.issues.push({input:n.value,inst:e,expected:"string",code:"invalid_type"}),n;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(n.value))return n.issues.push({input:n.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),n;return n}});var xv=O("$ZodLazy",(e,t)=>{fe.init(e,t),Zw(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),re(e,"pattern",(r)=>r.innerType?._zod?.pattern),re(e,"propValues",(r)=>r.innerType?._zod?.propValues),re(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),re(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),$v=O("$ZodCustom",(e,t)=>{He.init(e,t),fe.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((s)=>k_(s,r,n,e));k_(o,r,n,e);return}});function k_(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(Cn(o))}}class Ev extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var kp="~memo",Tv=[];function Pv(e){return e!==null&&typeof e==="object"}function Sp(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var Ov=new WeakMap,Rs=0,Xa=1,Cs=2;function Qa(e,t,r){let n=Ov.get(e);if(n!==void 0)return n?Cs:Rs;if(t.has(e))return Cs;t.add(e);let o=Rs,s=(l)=>{if(o!==Cs&&l?._zod){let d=Qa(l,t,r);if(d>o)o=d}},i=(l,d)=>{let f=Rs;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(d&&!h.enumerable)continue;let g=h.get?Xa:h.value?._zod?Qa(h.value,t,r):Rs;if(g>f)f=g}return f},a=(l)=>{if(l>o)o=l},c=e._zod.def,u=c.type;switch(u){case"object":{let l=Ps(c);a(l?i(l,!0):Xa),s(c.catchall);break}case"array":s(c.element);break;case"tuple":for(let l of c.items)s(l);s(c.rest);break;case"record":case"map":s(c.keyType),s(c.valueType);break;case"set":s(c.valueType);break;case"union":for(let l of c.options)s(l);break;case"intersection":s(c.left),s(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":s(c.innerType);break;case"pipe":s(c.in),s(c.out);break;case"function":s(c.input),s(c.output);break;case"lazy":{let l=c._cachedInner??(r?e._zod.innerType:void 0);a(l?Qa(l,t,!1):Xa);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let l in c){let d=Object.getOwnPropertyDescriptor(c,l);if(!d||d.get)continue;let f=d.value;if(!f||typeof f!=="object")continue;if(f._zod)s(f);else if(Array.isArray(f))for(let m of f)s(m)}}return t.delete(e),pL(e,o)}function pL(e,t){if(t!==Xa)Ov.set(e,t===Cs);return t}function fL(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Ja,Ya=[],mL={alloc(e,t,r){let n=Ja;if(!n)return r;Ja=void 0;let o={value:r,issues:null};return n.set(t.value,o),Ya.push(o),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let r=e._zod.parse,n=(o,s)=>{if(s.direction!=="backward"&&hL(s,o.value))throw new Ev;return r(o,s)};if(e._zod.parse=n,e._zod.run===r)e._zod.run=n})},attach(e){var t;let r,n=!1,o,s;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let i=e._zod.parse,a=(c,u)=>{if(r===void 0){let b=Qa(e,new Set,!1);if(b===Rs){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(b===Cs||n)r=!0;else n=!0}let l=c.value;if(!Pv(l))return i(c,u);let d=u[kp];if(!d)d={buckets:new WeakMap,backEdges:void 0},u[kp]=d;let f;if(o===u)f=s;else f=fL(d,e),o=u,s=f;let m=f.get(l);if(m){if(c.value=m.value,m.issues){if(m.issues.length)c.issues.push(...Sp(m.issues))}else c.memo=!0,d.backEdges??(d.backEdges=new WeakSet),d.backEdges.add(m.value);return c}Ja=f;let h=Ya.length,g=i(c,u);Ja=void 0;let y=Ya.length>h?Ya.pop():void 0;if(g instanceof Promise)return g.then((b)=>{if(y)y.issues=b.issues.length?Sp(b.issues):Tv;return b});if(y)y.issues=g.issues.length?Sp(g.issues):Tv;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function xp(){return mL}function hL(e,t){let r=e[kp]?.backEdges;return r!==void 0&&Pv(t)&&r.has(t)}var gL=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(s){return e[s]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};function o(s,i){if(s==="number"&&typeof i==="number"&&!Number.isFinite(i))return String(i);return n[s]??s}return(s)=>{switch(s.code){case"invalid_type":{let i=o(s.expected),a=nb(s.input),c=o(a,s.input);return`Invalid input: expected ${i}, received ${c}`}case"invalid_value":if(s.values.length===1)return`Invalid input: expected ${Xd(s.values[0])}`;return`Invalid option: expected one of ${Gd(s.values,"|")}`;case"too_big":{let i=s.exact?"exactly ":s.inclusive?"<=":"<",a=t(s.origin);if(a)return`Too big: expected ${s.origin??"value"} to have ${i}${s.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${s.origin??"value"} to be ${i}${s.maximum.toString()}`}case"too_small":{let i=s.exact?"exactly ":s.inclusive?">=":">",a=t(s.origin);if(a)return`Too small: expected ${s.origin} to have ${i}${s.minimum.toString()} ${a.unit}`;return`Too small: expected ${s.origin} to be ${i}${s.minimum.toString()}`}case"invalid_format":{let i=s;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${r[i.format]??s.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${s.divisor}`;case"unrecognized_keys":return`Unrecognized key${s.keys.length>1?"s":""}: ${Gd(s.keys,", ")}`;case"invalid_key":return`Invalid key in ${s.origin}`;case"invalid_union":if(s.options&&Array.isArray(s.options)&&s.options.length>0)return`Invalid discriminator value. Expected ${s.options.map((a)=>`'${a}'`).join(" | ")}`;if(s.inclusive===!1)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${s.origin}`;default:return"Invalid input"}}};function $p(){return{localeError:gL()}}var Iv;class Av{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Rv(){return new Av}(Iv=globalThis).__zod_globalRegistry??(Iv.__zod_globalRegistry=Rv());var Ur=globalThis.__zod_globalRegistry;function Tp(e){if(e.checks)e.checks=[...e.checks];return e}function Cv(e,t){return new e(Tp({type:"string",...U(t)}))}function zv(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...U(t)})}function Nv(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...U(t)})}function Lv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...U(t)})}function jv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(t)})}function Dv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(t)})}function Mv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(t)})}function Ep(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...U(t)})}function qv(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...U(t)})}function Fv(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(t)})}function Uv(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...U(t)})}function Wv(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(t)})}function Vv(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...U(t)})}function Zv(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...U(t)})}function Bv(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(t)})}function Kv(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(t)})}function Hv(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(t)})}function Gv(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(t)})}function Jv(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(t)})}function Yv(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...U(t)})}function Xv(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...U(t)})}function Qv(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...U(t)})}function eS(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...U(t)})}function ec(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(t)})}function tc(e,t){return new e({type:"string",format:"date",check:"string_format",...U(t)})}function rc(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...U(t)})}function nc(e,t){return new e({type:"string",format:"duration",check:"string_format",...U(t)})}function tS(e,t){return new e(Tp({type:"number",checks:[],...U(t)}))}function rS(e,t){return new e(Tp({type:"number",coerce:!0,checks:[],...U(t)}))}function nS(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...U(t)})}function oS(e,t){return new e({type:"boolean",...U(t)})}function sS(e,t){return new e({type:"null",...U(t)})}function iS(e){return new e({type:"any"})}function aS(e){return new e({type:"unknown"})}function cS(e,t){return new e({type:"never",...U(t)})}function oc(e,t){return new dp({check:"less_than",...U(t),value:e,inclusive:!1})}function zs(e,t){return new dp({check:"less_than",...U(t),value:e,inclusive:!0})}function sc(e,t){return new pp({check:"greater_than",...U(t),value:e,inclusive:!1})}function Ns(e,t){return new pp({check:"greater_than",...U(t),value:e,inclusive:!0})}function ic(e,t){return new Yb({check:"multiple_of",...U(t),value:e})}function ac(e,t){return new Qb({check:"max_length",...U(t),maximum:e})}function po(e,t){return new e_({check:"min_length",...U(t),minimum:e})}function cc(e,t){return new t_({check:"length_equals",...U(t),length:e})}function Pp(e,t){return new r_({check:"string_format",format:"regex",...U(t),pattern:e})}function Op(e){return new n_({check:"string_format",format:"lowercase",...U(e)})}function Ip(e){return new o_({check:"string_format",format:"uppercase",...U(e)})}function Ap(e,t){return new s_({check:"string_format",format:"includes",...U(t),includes:e})}function Rp(e,t){return new i_({check:"string_format",format:"starts_with",...U(t),prefix:e})}function Cp(e,t){return new a_({check:"string_format",format:"ends_with",...U(t),suffix:e})}function Wr(e){return new c_({check:"overwrite",tx:e})}function zp(e){return Wr((t)=>t.normalize(e))}function Np(){return Wr((e)=>e.trim())}function Lp(){return Wr((e)=>e.toLowerCase())}function jp(){return Wr((e)=>e.toUpperCase())}function Dp(){return Wr((e)=>Gw(e))}function uS(e,t,r){return new e({type:"array",element:t,...U(r)})}function lS(e,t,r){let n=U(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function dS(e,t,r){return new e({type:"custom",check:"custom",fn:t,...U(r)})}function pS(e,t){let r=yL((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Cn(o,n.value,r._zod.def));else{let s=o;if(s.fatal)s.continue=!1;if(s.code??(s.code="custom"),!("input"in s))s.input=n.value;s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(Cn(s))}},e(n.value,n)),t);return r}function yL(e,t){let r=new He({check:"custom",...U(t)});return r._zod.check=e,r}function Ls(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))bt(e,n,r[n]);return e}function Ds(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??Ur,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function Ve(e,t,r,n,o){let s=typeof t.unrepresentable==="function"?t.unrepresentable({zodSchema:e,path:n.path,message:o}):t.unrepresentable;if(s==="any")return!1;if(s===void 0||s==="throw")throw Error(o);return Object.assign(r,s),!0}function _e(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s=t.seen.get(e);if(s){if(s.count++,r.schemaPath.includes(e))s.cycle=r.path;return s.schema}let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let a=e._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,l);else{let f=i.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,l)}let d=e._zod.parent;if(d){if(!i.ref)i.ref=d;_e(d,t,l),t.seen.get(d).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Ls(i.schema,c);if(t.io==="input"&&nt(e))delete i.schema.examples,delete i.schema.default;if(t.io==="input"&&"_prefault"in i.schema)(n=i.schema).default??(n.default=i.schema._prefault);return delete i.schema._prefault,t.seen.get(e).schema}function fS(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Ms(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let n=new Map;for(let i of e.seen.entries()){let a=e.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=(i)=>{let a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let d=e.external.registry.get(i[0])?.id,f=e.external.uri??((h)=>h);if(d)return{ref:f(d)};let m=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=m,{defId:m,ref:`${f("__shared")}#/${a}/${fS(m)}`}}let c="#",u=`${c}/${a}/`;if(i[1]===r&&!i[1].schema.id)return{ref:c};let l=i[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+fS(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
226
|
+
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=lo,c=!nt.jitless,l=c&&rb.value,d=t.catchall,f;e._zod.parse=(m,h)=>{f??(f=n.value);let g=m.value;if(!a(g))return m.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),m;if(c&&l&&h?.async===!1&&h.jitless!==!0){if(!i)i=s(t.shape);if(m=i(m,h),!d)return m;return pS([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function b_(e,t,r,n){for(let s of e)if(s.issues.length===0)return t.value=s.value,t;let o=e.filter((s)=>!Ot(s));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((s)=>s.issues.map((i)=>rr(i,n,ct())))}),t}var kp=O("$ZodUnion",(e,t)=>{me.init(e,t),re(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),re(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),re(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),re(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>Wr(s.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of t.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}if(!s)return b_(i,n,e,o);return Promise.all(i).then((a)=>b_(a,n,e,o))}});function hL(e){let t=new Map;for(let r of e.options){let n=r._zod.propValues?.[e.discriminator];if(!n||n.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(r)}"`);for(let o of n)if(t.has(o)){if(o!==void 0)throw Error(`Duplicate discriminator value "${String(o)}"`);t.set(o,null)}else t.set(o,r)}return t}var mS=O("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,kp.init(e,t);let r=e._zod.parse;re(e,"propValues",(o)=>{let s={},i=0;for(let a of o.def.options){let c=a._zod.propValues;if(!c||Object.keys(c).length===0)throw Error(`Invalid discriminated union option at index "${o.def.options.indexOf(a)}"`);if(c[o.def.discriminator]?.has(void 0))i++;for(let[u,l]of Object.entries(c)){if(!Object.prototype.hasOwnProperty.call(s,u))_t(s,u,new Set);for(let d of l)s[u].add(d)}}if(!o.def.unionFallback&&i>1)s[o.def.discriminator]?.delete(void 0);return s}),t.options.forEach((o,s)=>{let i=As(o._zod.def);if(i&&!Object.prototype.hasOwnProperty.call(i,t.discriminator))throw Error(`Invalid discriminated union option at index "${s}"`)});let n=Is(()=>hL(t));e._zod.parse=(o,s)=>{let i=o.value;if(!lo(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;let a=i?.[t.discriminator],c=n.value.get(a);if(c&&(a!==void 0||s.direction!=="backward"))return c._zod.run(o,s);if(t.unionFallback||s.direction==="backward")return r(o,s);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(n.value.keys()).filter((u)=>n.value.get(u)!==null),input:i,path:[t.discriminator],inst:e}),o}}),hS=O("$ZodIntersection",(e,t)=>{me.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,s=t.left._zod.run({value:o,issues:[]},n),i=t.right._zod.run({value:o,issues:[]},n);if(s instanceof Promise||i instanceof Promise)return Promise.all([s,i]).then(([c,u])=>__(r,c,u));return __(r,s,i)}});function wp(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(zn(e)&&zn(t)){let r=Object.keys(t),n=Object.keys(e).filter((s)=>r.indexOf(s)!==-1),o={...e,...t};if(Object.prototype.hasOwnProperty.call(o,"__proto__"))delete o.__proto__;for(let s of n){if(s==="__proto__")continue;let i=wp(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],s=t[n],i=wp(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function __(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let d;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),d=u.keys;else if(u.code==="invalid_key"&&u.origin==="record"&&u.path?.length===1){let f=String(u.path[0]);if(!s.has(f))s.set(f,u);d=[f]}else return!1;for(let f of d){if(!n.has(f))n.set(f,{});n.get(f)[l]=!0}return!0};for(let u of t.issues)if(!i(u,"l"))e.issues.push(u);for(let u of r.issues)if(!i(u,"r"))e.issues.push(u);let a=[...n].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(a.length){let u=o?a.filter((l)=>o.keys.includes(l)):[];if(u.length)e.issues.push({...o,keys:u});for(let l of a)if(!u.includes(l)&&s.has(l))e.issues.push(s.get(l))}let c=wp(t.value,r.value);if(!c.valid){if(Ot(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var gS=O("$ZodTuple",(e,t)=>{me.init(e,t);let r=t.items,n=nt.memoizer;n?.attach(e),e._zod.parse=(o,s)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),o;o.value=n?n.alloc(e,o,[],s):[];let a=[],c=S_(r,"optin"),u=S_(r,"optout");if(!t.rest){if(i.length<c)return o.issues.push({code:"too_small",minimum:c,inclusive:!0,input:i,inst:e,origin:"array"}),o;if(i.length>r.length)o.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:i,inst:e,origin:"array"})}let l=Array(r.length),d=t.rest?s?.abortEarly:void 0,f=!1;for(let m=0;m<r.length;m++){let h=r[m]._zod.run({value:i[m],issues:[]},s);if(h instanceof Promise)a.push(h.then((g)=>{l[m]=g}));else if(l[m]=h,d&&!f&&h.issues.length)f=Ot(h)}if(t.rest&&!f){let m=r.length-1,h=i.slice(r.length),g=o.issues.length;for(let y of h){if(d&&o.issues.length!==g){if(Ot(o,g))break;g=o.issues.length}m++;let b=t.rest._zod.run({value:y,issues:[]},s);if(b instanceof Promise)a.push(b.then((T)=>v_(T,o,m)));else v_(b,o,m)}}if(a.length)return Promise.all(a).then(()=>k_(l,o,r,i,u));return k_(l,o,r,i,u)}});function S_(e,t){for(let r=e.length-1;r>=0;r--)if(!(t==="optin"?e[r]._zod.optin!==void 0:e[r]._zod.optout==="optional"))return r+1;return 0}function v_(e,t,r){if(e.issues.length)t.issues.push(...tr(r,e.issues));t.value[r]=e.value}function k_(e,t,r,n,o){for(let s=0;s<r.length;s++){let i=e[s],a=s<n.length;if(!a&&s>=o&&r[s]._zod.optin==="optional"){t.value.length=s;break}if(i.issues.length){if(!a&&s>=o){t.value.length=s;break}t.issues.push(...tr(s,i.issues))}t.value[s]=i.value}for(let s=t.value.length-1;s>=n.length;s--)if(r[s]._zod.optout==="optional"&&t.value[s]===void 0)t.value.length=s;else break;return t}var yS=O("$ZodRecord",(e,t)=>{me.init(e,t);let r=nt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!zn(s))return n.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a&&!t.partial){n.value=r?r.alloc(e,n,{},o):{};let c=new Set;for(let l of a)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){if(c.add(typeof l==="number"?l.toString():l),l==="__proto__")continue;let d=t.keyType._zod.run({value:l,issues:[]},o);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((h)=>rr(h,o,ct())),input:l,path:[l],inst:e});continue}let f=d.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[l],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...tr(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...tr(l,m.issues));n.value[f]=m.value}}let u;for(let l in s)if(!c.has(l))if(t.mode==="loose"){if(l==="__proto__")continue;n.value[l]=s[l]}else u=u??[],u.push(l);if(u&&u.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:u,continue:!0})}else{n.value=r?r.alloc(e,n,{},o):{};let c;for(let u of Reflect.ownKeys(s)){if(u==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(s,u))continue;let l=t.keyType._zod.run({value:u,issues:[]},o);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&po.test(u)&&l.issues.length){let h=t.keyType._zod.run({value:Number(u),issues:[]},o);if(h instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(h.issues.length===0)l=h}if(l.issues.length){if(t.mode==="loose")n.value[u]=s[u];else if(a)c=c??[],c.push(u);else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((h)=>rr(h,o,ct())),input:u,path:[u],inst:e});continue}let f=l.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[u],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...tr(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...tr(u,m.issues));n.value[f]=m.value}}if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:c,continue:!0})}if(i.length)return Promise.all(i).then(()=>n);return n}});var wS=O("$ZodEnum",(e,t)=>{me.init(e,t);let r=Ps(t.entries),n=new Set(r);e._zod.values=n,re(e,"pattern",(o)=>{let s=Ps(o.def.entries).filter((i)=>nb.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>Pr(i.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{let i=o.value;if(n.has(i))return o;return o.issues.push({code:"invalid_value",values:r,input:i,inst:e}),o}}),bS=O("$ZodLiteral",(e,t)=>{me.init(e,t);let r=new Set(t.values);e._zod.values=r,re(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?Pr(s):s?Pr(s.toString()):String(s)).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(n,o)=>{let s=n.value;if(r.has(s))return n;return n.issues.push({code:"invalid_value",values:t.values,input:s,inst:e}),n}});var _S=O("$ZodTransform",(e,t)=>{me.init(e,t),e._zod.optin="optional",nt.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Rs(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((i)=>(r.value=i,r));if(o instanceof Promise)throw new nr;return r.value=o,r}});function x_(e,t){return e.value=t.issues.length?void 0:t.value,e}var xp=O("$ZodOptional",(e,t)=>{me.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Wr(n.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(r.value===void 0){if(t.innerType._zod.optin!=="defaulted")return r;let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>x_(r,s));return x_(r,o)}return t.innerType._zod.run(r,n)}}),SS=O("$ZodExactOptional",(e,t)=>{xp.init(e,t),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),vS=O("$ZodNullable",(e,t)=>{me.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Wr(n.source)}|null)$`):void 0}),re(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),kS=O("$ZodDefault",(e,t)=>{me.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>$_(s,t));return $_(o,t)}});function $_(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var xS=O("$ZodPrefault",(e,t)=>{me.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),$S=O("$ZodNonOptional",(e,t)=>{me.init(e,t),re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>T_(s,e));return T_(o,e)}});function T_(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function E_(e,t,r,n){if(!t.issues.length){if(e.value=t.value,t.memo)e.memo=!0;return e}return e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map((o)=>rr(o,n,ct()))},input:e.value}),e}var TS=O("$ZodCatch",(e,t)=>{me.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>E_(r,s,t,n));return E_(r,o,t,n)}});var $p=O("$ZodPipe",(e,t)=>{me.init(e,t),re(e,"values",(r)=>r.def.in._zod.values),re(e,"optin",(r)=>r.def.in._zod.optin),re(e,"optout",(r)=>r.def.out._zod.optout),re(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>Ka(i,t.in,n));return Ka(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Ka(s,t.out,n));return Ka(o,t.out,n)}});function Ka(e,t,r){if(e.issues.some((n)=>n.code!=="unrecognized_keys"))return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},r)}var ES=O("$ZodPreprocess",(e,t)=>{$p.init(e,t)}),PS=O("$ZodReadonly",(e,t)=>{me.init(e,t),re(e,"propValues",(r)=>r.def.innerType._zod.propValues),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"optin",(r)=>r.def.innerType?._zod?.optin),re(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(P_);return P_(o)}});function P_(e){if(!e.memo)e.value=Object.freeze(e.value);return e}function gL(e){let t=e._zod.def,r=t.pattern,n=!!t.format?.includes("int"),o,s;for(let a of t.checks??[]){let c=a._zod.def;if(c.pattern)r=c.pattern;n||(n=!!c.format?.includes("int"));let u=c.minimum??c.length,l=c.maximum??c.length;if(u!==void 0&&(o===void 0||u>o))o=u;if(l!==void 0&&(s===void 0||l<s))s=l}if(r)return r.source;if(o!==void 0&&s!==void 0&&o>s)return"(?!)";if(o!==void 0||s!==void 0)return Xb({minimum:o,maximum:s}).source;let i=e._zod.pattern;return(n&&i===po?Za:i)?.source}function bp(e){let t=e._zod.def,r=e._zod.pattern?.source,n=t.innerType??e._zod.innerType;if(n){let o=n._zod.pattern?.source,s=bp(n);if(r&&o&&s&&s!==o)return r.replace(Wr(o),()=>Wr(s));return r}if(t.options){let o=t.options.map(bp);if(o.every(Boolean))return`^(${o.map((s)=>Wr(s)).join("|")})$`}return gL(e)}var OS=O("$ZodTemplateLiteral",(e,t)=>{me.init(e,t);let r=[];for(let n of t.parts)if(typeof n==="object"&&n!==null){let o=bp(n);if(!o)throw Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);r.push(Wr(o))}else if(n===null||ob.has(typeof n))r.push(Pr(`${n}`));else throw Error(`Invalid template literal part: ${n}`);e._zod.pattern=new RegExp(`^${r.join("")}$`),e._zod.parse=(n,o)=>{if(typeof n.value!=="string")return n.issues.push({input:n.value,inst:e,expected:"string",code:"invalid_type"}),n;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(n.value))return n.issues.push({input:n.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),n;return n}});var IS=O("$ZodLazy",(e,t)=>{me.init(e,t),Yw(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),re(e,"pattern",(r)=>r.innerType?._zod?.pattern),re(e,"propValues",(r)=>r.innerType?._zod?.propValues),re(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),re(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),AS=O("$ZodCustom",(e,t)=>{He.init(e,t),me.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((s)=>O_(s,r,n,e));O_(o,r,n,e);return}});function O_(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(Nn(o))}}class CS extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var Ep="~memo",RS=[];function zS(e){return e!==null&&typeof e==="object"}function Tp(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var NS=new WeakMap,Ns=0,ec=1,Ls=2;function tc(e,t,r){let n=NS.get(e);if(n!==void 0)return n?Ls:Ns;if(t.has(e))return Ls;t.add(e);let o=Ns,s=(l)=>{if(o!==Ls&&l?._zod){let d=tc(l,t,r);if(d>o)o=d}},i=(l,d)=>{let f=Ns;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(d&&!h.enumerable)continue;let g=h.get?ec:h.value?._zod?tc(h.value,t,r):Ns;if(g>f)f=g}return f},a=(l)=>{if(l>o)o=l},c=e._zod.def,u=c.type;switch(u){case"object":{let l=As(c);a(l?i(l,!0):ec),s(c.catchall);break}case"array":s(c.element);break;case"tuple":for(let l of c.items)s(l);s(c.rest);break;case"record":case"map":s(c.keyType),s(c.valueType);break;case"set":s(c.valueType);break;case"union":for(let l of c.options)s(l);break;case"intersection":s(c.left),s(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":s(c.innerType);break;case"pipe":s(c.in),s(c.out);break;case"function":s(c.input),s(c.output);break;case"lazy":{let l=c._cachedInner??(r?e._zod.innerType:void 0);a(l?tc(l,t,!1):ec);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let l in c){let d=Object.getOwnPropertyDescriptor(c,l);if(!d||d.get)continue;let f=d.value;if(!f||typeof f!=="object")continue;if(f._zod)s(f);else if(Array.isArray(f))for(let m of f)s(m)}}return t.delete(e),yL(e,o)}function yL(e,t){if(t!==ec)NS.set(e,t===Ls);return t}function wL(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Xa,Qa=[],bL={alloc(e,t,r){let n=Xa;if(!n)return r;Xa=void 0;let o={value:r,issues:null};return n.set(t.value,o),Qa.push(o),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let r=e._zod.parse,n=(o,s)=>{if(s.direction!=="backward"&&_L(s,o.value))throw new CS;return r(o,s)};if(e._zod.parse=n,e._zod.run===r)e._zod.run=n})},attach(e){var t;let r,n=!1,o,s;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let i=e._zod.parse,a=(c,u)=>{if(r===void 0){let b=tc(e,new Set,!1);if(b===Ns){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(b===Ls||n)r=!0;else n=!0}let l=c.value;if(!zS(l))return i(c,u);let d=u[Ep];if(!d)d={buckets:new WeakMap,backEdges:void 0},u[Ep]=d;let f;if(o===u)f=s;else f=wL(d,e),o=u,s=f;let m=f.get(l);if(m){if(c.value=m.value,m.issues){if(m.issues.length)c.issues.push(...Tp(m.issues))}else c.memo=!0,d.backEdges??(d.backEdges=new WeakSet),d.backEdges.add(m.value);return c}Xa=f;let h=Qa.length,g=i(c,u);Xa=void 0;let y=Qa.length>h?Qa.pop():void 0;if(g instanceof Promise)return g.then((b)=>{if(y)y.issues=b.issues.length?Tp(b.issues):RS;return b});if(y)y.issues=g.issues.length?Tp(g.issues):RS;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function Pp(){return bL}function _L(e,t){let r=e[Ep]?.backEdges;return r!==void 0&&zS(t)&&r.has(t)}var SL=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(s){return e[s]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};function o(s,i){if(s==="number"&&typeof i==="number"&&!Number.isFinite(i))return String(i);return n[s]??s}return(s)=>{switch(s.code){case"invalid_type":{let i=o(s.expected),a=ub(s.input),c=o(a,s.input);return`Invalid input: expected ${i}, received ${c}`}case"invalid_value":if(s.values.length===1)return`Invalid input: expected ${rp(s.values[0])}`;return`Invalid option: expected one of ${Qd(s.values,"|")}`;case"too_big":{let i=s.exact?"exactly ":s.inclusive?"<=":"<",a=t(s.origin);if(a)return`Too big: expected ${s.origin??"value"} to have ${i}${s.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${s.origin??"value"} to be ${i}${s.maximum.toString()}`}case"too_small":{let i=s.exact?"exactly ":s.inclusive?">=":">",a=t(s.origin);if(a)return`Too small: expected ${s.origin} to have ${i}${s.minimum.toString()} ${a.unit}`;return`Too small: expected ${s.origin} to be ${i}${s.minimum.toString()}`}case"invalid_format":{let i=s;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${r[i.format]??s.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${s.divisor}`;case"unrecognized_keys":return`Unrecognized key${s.keys.length>1?"s":""}: ${Qd(s.keys,", ")}`;case"invalid_key":return`Invalid key in ${s.origin}`;case"invalid_union":if(s.options&&Array.isArray(s.options)&&s.options.length>0)return`Invalid discriminator value. Expected ${s.options.map((a)=>`'${a}'`).join(" | ")}`;if(s.inclusive===!1)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${s.origin}`;default:return"Invalid input"}}};function Op(){return{localeError:SL()}}var LS;class jS{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function DS(){return new jS}(LS=globalThis).__zod_globalRegistry??(LS.__zod_globalRegistry=DS());var Vr=globalThis.__zod_globalRegistry;function Ip(e){if(e.checks)e.checks=[...e.checks];return e}function MS(e,t){return new e(Ip({type:"string",...U(t)}))}function qS(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...U(t)})}function FS(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...U(t)})}function US(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...U(t)})}function WS(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(t)})}function VS(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(t)})}function ZS(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(t)})}function Ap(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...U(t)})}function BS(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...U(t)})}function KS(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(t)})}function HS(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...U(t)})}function GS(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(t)})}function JS(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...U(t)})}function YS(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...U(t)})}function XS(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(t)})}function QS(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(t)})}function ev(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(t)})}function tv(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(t)})}function rv(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(t)})}function nv(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...U(t)})}function ov(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...U(t)})}function sv(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...U(t)})}function iv(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...U(t)})}function rc(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(t)})}function nc(e,t){return new e({type:"string",format:"date",check:"string_format",...U(t)})}function oc(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...U(t)})}function sc(e,t){return new e({type:"string",format:"duration",check:"string_format",...U(t)})}function av(e,t){return new e(Ip({type:"number",checks:[],...U(t)}))}function cv(e,t){return new e(Ip({type:"number",coerce:!0,checks:[],...U(t)}))}function uv(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...U(t)})}function lv(e,t){return new e({type:"boolean",...U(t)})}function dv(e,t){return new e({type:"null",...U(t)})}function pv(e){return new e({type:"any"})}function fv(e){return new e({type:"unknown"})}function mv(e,t){return new e({type:"never",...U(t)})}function ic(e,t){return new hp({check:"less_than",...U(t),value:e,inclusive:!1})}function js(e,t){return new hp({check:"less_than",...U(t),value:e,inclusive:!0})}function ac(e,t){return new gp({check:"greater_than",...U(t),value:e,inclusive:!1})}function Ds(e,t){return new gp({check:"greater_than",...U(t),value:e,inclusive:!0})}function cc(e,t){return new n_({check:"multiple_of",...U(t),value:e})}function uc(e,t){return new s_({check:"max_length",...U(t),maximum:e})}function mo(e,t){return new i_({check:"min_length",...U(t),minimum:e})}function lc(e,t){return new a_({check:"length_equals",...U(t),length:e})}function Rp(e,t){return new c_({check:"string_format",format:"regex",...U(t),pattern:e})}function Cp(e){return new u_({check:"string_format",format:"lowercase",...U(e)})}function zp(e){return new l_({check:"string_format",format:"uppercase",...U(e)})}function Np(e,t){return new d_({check:"string_format",format:"includes",...U(t),includes:e})}function Lp(e,t){return new p_({check:"string_format",format:"starts_with",...U(t),prefix:e})}function jp(e,t){return new f_({check:"string_format",format:"ends_with",...U(t),suffix:e})}function Zr(e){return new m_({check:"overwrite",tx:e})}function Dp(e){return Zr((t)=>t.normalize(e))}function Mp(){return Zr((e)=>e.trim())}function qp(){return Zr((e)=>e.toLowerCase())}function Fp(){return Zr((e)=>e.toUpperCase())}function Up(){return Zr((e)=>tb(e))}function hv(e,t,r){return new e({type:"array",element:t,...U(r)})}function gv(e,t,r){let n=U(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function yv(e,t,r){return new e({type:"custom",check:"custom",fn:t,...U(r)})}function wv(e,t){let r=vL((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Nn(o,n.value,r._zod.def));else{let s=o;if(s.fatal)s.continue=!1;if(s.code??(s.code="custom"),!("input"in s))s.input=n.value;s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(Nn(s))}},e(n.value,n)),t);return r}function vL(e,t){let r=new He({check:"custom",...U(t)});return r._zod.check=e,r}function Ms(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))_t(e,n,r[n]);return e}function Fs(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??Vr,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function Ve(e,t,r,n,o){let s=typeof t.unrepresentable==="function"?t.unrepresentable({zodSchema:e,path:n.path,message:o}):t.unrepresentable;if(s==="any")return!1;if(s===void 0||s==="throw")throw Error(o);return Object.assign(r,s),!0}function Se(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s=t.seen.get(e);if(s){if(s.count++,r.schemaPath.includes(e))s.cycle=r.path;return s.schema}let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let a=e._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,l);else{let f=i.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,l)}let d=e._zod.parent;if(d){if(!i.ref)i.ref=d;Se(d,t,l),t.seen.get(d).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Ms(i.schema,c);if(t.io==="input"&&ot(e))delete i.schema.examples,delete i.schema.default;if(t.io==="input"&&"_prefault"in i.schema)(n=i.schema).default??(n.default=i.schema._prefault);return delete i.schema._prefault,t.seen.get(e).schema}function bv(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Us(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let n=new Map;for(let i of e.seen.entries()){let a=e.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=(i)=>{let a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let d=e.external.registry.get(i[0])?.id,f=e.external.uri??((h)=>h);if(d)return{ref:f(d)};let m=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=m,{defId:m,ref:`${f("__shared")}#/${a}/${bv(m)}`}}let c="#",u=`${c}/${a}/`;if(i[1]===r&&!i[1].schema.id)return{ref:c};let l=i[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+bv(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
227
227
|
|
|
228
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function gS(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;gS(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var yS=new Set(["type","properties","required","additionalProperties"]),mS=["oneOf","anyOf"];function hS(e){let t=e.additionalProperties;if(t===void 0||t===!1||typeof t!=="object"||t===null)return null;return Object.keys(t).length?t:null}function Mp(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!yS.has(i))return null;t.push(s)}let r={},n=new Set;for(let s of t){for(let i in s.properties){if(Object.prototype.hasOwnProperty.call(r,i))continue;let a=[];for(let u of t){let l=u.properties?.[i]??hS(u);if(l===null||l===void 0)continue;if(!a.some((d)=>JSON.stringify(d)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:Mp(a)??{allOf:a};bt(r,i,c)}for(let i of s.required??[])n.add(i)}let o={type:"object",properties:r};if(n.size)o.required=[...n];if(t.every((s)=>s.additionalProperties===!1))o.additionalProperties=!1;else{let s=[];for(let i of t){let a=hS(i);if(a&&!s.some((c)=>JSON.stringify(c)===JSON.stringify(a)))s.push(a)}if(s.length===1)o.additionalProperties=s[0];else if(s.length>1)o.additionalProperties={allOf:s}}return o}function wL(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of yS)if(o in e)return;let r=t.filter((o)=>mS.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Mp(t);else{let o=r[0],s=mS.find((c)=>Array.isArray(o[c]));if(Object.keys(o).length!==1)return;let i=t.filter((c)=>c!==o),a=o[s].map((c)=>Mp([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Ls(e,n)}function qs(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(a)=>{let c=e.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},d=c.ref;if(c.ref=null,d){n(d);let m=e.seen.get(d),h=m.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(h);else Ls(u,h);if(Ls(u,l),a._zod.parent===d)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(!(y in l))delete u[y]}if(h.$ref&&m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.def[y]))delete u[y]}}let f=a._zod.parent;if(f&&f!==d){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let h in u){if(h==="$ref"||h==="allOf")continue;if(h in m.def&&JSON.stringify(u[h])===JSON.stringify(m.def[h]))delete u[h]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())gS(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let d=a.get(l);if(d)d.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])wL(u)}}let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Ls(o,r.defId?r.schema:r.def??r.schema);let s=e.metadataRegistry.get(t)?.id;if(s!==void 0&&o.id===s)delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let a of e.seen.entries()){let c=a[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;bt(i,c.defId,c.def)}}if(e.external)e.sharedEmitDoneFor=e.external;if(e.external);else if(Object.keys(i).length>0)if(e.target==="draft-2020-12")o.$defs=i;else o.definitions=i;try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:js(t,"input",e.processors),output:js(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function nt(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return nt(n.element,r);if(n.type==="set")return nt(n.valueType,r);if(n.type==="lazy")return nt(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault"||n.type==="catch")return nt(n.innerType,r);if(n.type==="intersection")return nt(n.left,r)||nt(n.right,r);if(n.type==="record"||n.type==="map")return nt(n.keyType,r)||nt(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return nt(n.in,r)||nt(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(nt(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(nt(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(nt(o,r))return!0;if(n.rest&&nt(n.rest,r))return!0;return!1}return!1}var wS=(e,t={})=>(r)=>{let n=Ds({...r,processors:t});return _e(e,n),Ms(n,e),qs(n,e)},js=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Ds({...o??{},target:s,io:t,processors:r});return _e(e,i),Ms(i,e),qs(i,e)};var fo=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},mo=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},bS=(e,t)=>{fo(e,"minimum",t),mo(e,"maximum",t)},xS=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},$S=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},TS=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},ES=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},_S=(e,t)=>fo(e,"minimum",t.minimum),vS=(e,t)=>mo(e,"maximum",t.maximum),SS=(e)=>(t,r)=>{ES(t,r.format);let[n,o]=e[r.format];fo(t,"minimum",n),mo(t,"maximum",o)},bL={greater_than:(e,t)=>fo(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>mo(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>xS(e,t.value),number_format:SS(Aa),bigint_format:SS(Qd),min_length:_S,max_length:vS,length_equals:(e,t)=>bS(e,t.length),min_size:_S,max_size:vS,size_equals:(e,t)=>bS(e,t.size),string_format:(e,t)=>{if(ES(e,t.format),t.pattern)$S(e,t.pattern);if(t.format==="base64"||t.format==="base64url")e.contentEncoding=t.format;if(t.local||t.precision===-1)e.laxFormat=!0},mime_type:(e,t)=>TS(e,t.mime)};function ct(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)bL[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)fo(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)fo(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)mo(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)mo(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)xS(t,o.multipleOf);if(o.format!==void 0){if(t.format??(t.format=o.format),o.format.includes("int"))t.isInt=!0}if(o.mime)TS(t,o.mime);for(let s of o.patterns??[])$S(t,s);return t}var _L={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},vL=new Map([[yp,jb],[Ga,Db]]),PS=(e)=>vL.get(e)??e,Up=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=ct(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=_L[a]??a,o.format==="")delete o.format;if(a==="time"||l)delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let d=[...c].map(PS);if(d.length===1)o.pattern=d[0].source;else if(d.length>1)o.allOf=[...d.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},Wp=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=ct(e);o.type=l?"integer":"number";let d=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(d)if(m)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(f)if(m)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let h=new Set;for(let b of a)if(Number.isFinite(b)&&b!==0)h.add(Math.abs(b));else Ve(e,t,o,n,`A multipleOf divisor of ${b} cannot be represented in JSON Schema`);let[g,...y]=h;if(g!==void 0)o.multipleOf=g;if(y.length)o.allOf=[...o.allOf??[],...y.map((b)=>({multipleOf:b}))]}},Vp=(e,t,r,n)=>{r.type="boolean"},OS=(e,t,r,n)=>{Ve(e,t,r,n,"BigInt cannot be represented in JSON Schema")},IS=(e,t,r,n)=>{Ve(e,t,r,n,"Symbols cannot be represented in JSON Schema")},Zp=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},AS=(e,t,r,n)=>{Ve(e,t,r,n,"Undefined cannot be represented in JSON Schema")},RS=(e,t,r,n)=>{Ve(e,t,r,n,"Void cannot be represented in JSON Schema")},Bp=(e,t,r,n)=>{r.not={}},Kp=(e,t,r,n)=>{},Hp=(e,t,r,n)=>{},CS=(e,t,r,n)=>{Ve(e,t,r,n,"Date cannot be represented in JSON Schema")},Gp=(e,t,r,n)=>{let o=e._zod.def,s=$s(o.entries);if(s.length===0){r.not={};return}if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";r.enum=s},Jp=(e,t,r,n)=>{let o=e._zod.def;if(o.values.length===0){r.not={};return}let s=[];for(let i of o.values)if(i===void 0){if(Ve(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(Ve(e,t,r,n,"BigInt literals cannot be represented in JSON Schema"))return;s.push(Number(i))}else s.push(i);if(s.length===0);else if(s.length===1){let i=s[0];if(r.type=i===null?"null":typeof i,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[i];else r.const=i}else{if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";if(s.every((i)=>typeof i==="boolean"))r.type="boolean";if(s.every((i)=>i===null))r.type="null";r.enum=s}},zS=(e,t,r,n)=>{Ve(e,t,r,n,"NaN cannot be represented in JSON Schema")},Yp=(e,t,r,n)=>{let o=r,s=e._zod.pattern;if(!s)throw Error("Pattern not found in template literal");o.type="string",o.pattern=s.source},NS=(e,t,r,n)=>{let o=r;o.type="string",o.format="binary",o.contentEncoding="binary";let{minimum:s,maximum:i,mime:a}=ct(e);if(s!==void 0)o.minLength=s;if(i!==void 0)o.maxLength=i;if(!a)return;if(a.length===0)o.not={};else if(a.length===1)o.contentMediaType=a[0];else o.anyOf=a.map((c)=>({contentMediaType:c}))},LS=(e,t,r,n)=>{r.type="boolean"},Xp=(e,t,r,n)=>{Ve(e,t,r,n,"Custom types cannot be represented in JSON Schema")},jS=(e,t,r,n)=>{Ve(e,t,r,n,"Function types cannot be represented in JSON Schema")},Qp=(e,t,r,n)=>{Ve(e,t,r,n,"Transforms cannot be represented in JSON Schema")},DS=(e,t,r,n)=>{Ve(e,t,r,n,"Map cannot be represented in JSON Schema")},MS=(e,t,r,n)=>{Ve(e,t,r,n,"Set cannot be represented in JSON Schema")},ef=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=ct(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=_e(s.element,t,{...n,path:[...n.path,"items"]})};function Fs(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return Fs(t.out);if(t.type==="catch")return Fs(t.innerType);return e._zod.optin}var tf=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Ve(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)bt(o.properties,u,_e(i[u],t,{...n,path:[...n.path,"properties",u]}));let c=[];for(let u of Object.keys(i)){let l=s.shape[u];if(t.io==="input"?Fs(l)===void 0:l._zod.optout===void 0)c.push(u)}if(c.length>0)o.required=c;if(s.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!s.catchall){if(t.io==="output")o.additionalProperties=!1}else if(s.catchall)o.additionalProperties=_e(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},rf=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>_e(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},nf=(e,t,r,n)=>{let o=e._zod.def,s=_e(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=_e(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c,t.intersections.push(c)},of=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="array";let i=t.target==="draft-2020-12"?"prefixItems":"items",a=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((g,y)=>_e(g,t,{...n,path:[...n.path,i,y]})),u=s.rest?_e(s.rest,t,{...n,path:[...n.path,a,...t.target==="openapi-3.0"?[s.items.length]:[]]}):null,l=s.items.length;while(l>0){let g=s.items[l-1];if(!(t.io==="input"?Fs(g)!==void 0:g._zod.optout==="optional"))break;l--}let d=s.items.length,f=!s.rest;if(t.target==="draft-2020-12"){if(o.prefixItems=c,f)o.items=!1;else if(u)o.items=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(l>0)o.minItems=l;if(f)o.maxItems=d}else{if(o.items=c,f)o.additionalItems=!1;else if(u)o.additionalItems=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}let{minimum:m,maximum:h}=ct(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function qp(e,t,r){if(t.$ref){if(r.has(t))return t;r.add(t);let h=e.get(t)?.def;if(!h)return t;let g=qp(e,h,r);return g===h?t:g}for(let h of["anyOf","oneOf"]){let g=t[h];if(!Array.isArray(g))continue;let y=g.map((b)=>qp(e,b,r));if(y.some((b,T)=>b!==g[T]))t={...t,[h]:y}}let n=Array.isArray(t.type)?t.type:[t.type],o=!n.includes("string")&&n.some((h)=>h==="number"||h==="integer"),s=t.enum??(t.const!==void 0?[t.const]:void 0);if(!o&&!s?.some((h)=>typeof h==="number"))return t;let{minimum:i,maximum:a,exclusiveMinimum:c,exclusiveMaximum:u,multipleOf:l,format:d,id:f,...m}=t;if(m.enum)m.enum=m.enum.map((h)=>typeof h==="number"?String(h):h);else if(typeof m.const==="number")m.const=String(m.const);if(!o)return m;if(m.type="string",!s)m.pattern=(n.includes("number")?uo:Wa).source;return m}var Fp=new WeakMap;function SL(e){let t=new Map;for(let n of e.seen.values())if(n.def&&!t.has(n.schema))t.set(n.schema,n);let r=new Map;for(let n of Fp.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=qp(t,s,new Set);if(i!==s)r.set(s,i)}if(!r.size)return;for(let n of e.seen.values())for(let o of[n.schema,n.def]){let s=o&&r.get(o.propertyNames);if(s)o.propertyNames=s}}var sf=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=ct(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=_e(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of a)bt(o.patternProperties,PS(d).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=_e(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=Fp.get(t);if(!l)l=[],Fp.set(t,l),t.deferred.push(()=>SL(t));l.push(e)}o.additionalProperties=_e(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&Fs(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((d)=>typeof d==="string"||typeof d==="number");if(l.length>0)o.required=l.map(String)}},af=(e,t,r,n)=>{let o=e._zod.def,s=_e(o.innerType,t,n),i=t.seen.get(e);if(t.target==="openapi-3.0")i.ref=o.innerType,r.nullable=!0;else r.anyOf=[s,{type:"null"}]},cf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},uf=Symbol();function qS(e,t,r,n,o){let s=!1,i=JSON.stringify(e,(a,c)=>{if(typeof c!=="bigint")return c;return s=!0,null});if(!s)return JSON.parse(i);return Ve(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),uf}var lf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=qS(o.defaultValue,e,t,r,n);if(i!==uf)r.default=i},df=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=qS(o.defaultValue,e,t,r,n);if(i!==uf)r._prefault=i},pf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{Ve(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},ff=(e,t,r,n)=>{let o=e._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=t.io==="input"?s?o.out:o.in:o.out;_e(i,t,n);let a=t.seen.get(e);a.ref=i},mf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0},FS=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},uc=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},hf=(e,t,r,n)=>{let o=e._zod.innerType;_e(o,t,n);let s=t.seen.get(e);s.ref=o},kS={string:Up,number:Wp,boolean:Vp,bigint:OS,symbol:IS,null:Zp,undefined:AS,void:RS,never:Bp,any:Kp,unknown:Hp,date:CS,enum:Gp,literal:Jp,nan:zS,template_literal:Yp,file:NS,success:LS,custom:Xp,function:jS,transform:Qp,map:DS,set:MS,array:ef,object:tf,union:rf,intersection:nf,tuple:of,record:sf,nullable:af,nonoptional:cf,default:lf,prefault:df,catch:pf,pipe:ff,readonly:mf,promise:FS,optional:uc,lazy:hf};function US(e,t){if("_idmap"in e){let n=e,o=Ds({...t,processors:kS}),s={};for(let c of n._idmap.entries()){let[u,l]=c;_e(l,o)}let i={},a={registry:n,uri:t?.uri,defs:s};o.external=a;for(let c of n._idmap.entries()){let[u,l]=c;Ms(o,l),bt(i,u,qs(o,l))}if(Object.keys(s).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";i.__shared={[c]:s}}return{schemas:i}}let r=Ds({...t,processors:kS});return _e(e,r),Ms(r,e),qs(r,e)}var WS=new WeakSet([Object.prototype,Error.prototype]);function lc(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let n=r(this);return Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0})}})}var AL=(e,t)=>{db.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(WS.has(r))return;WS.add(r),lc(r,"format",(n)=>(o)=>ip(n,o)),lc(r,"flatten",(n)=>(o)=>sp(n,o)),lc(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,Ts,2)}),lc(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,Ts,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var vt=O("ZodError",AL,void 0,{Parent:Error});var VS=Da(vt),ZS=Ma(vt),BS=Is(vt),KS=qa(vt),HS=mb(vt),GS=hb(vt),JS=gb(vt),YS=yb(vt),XS=wb(vt),QS=bb(vt),ek=_b(vt),tk=vb(vt);function CL(){if(!rt.localeError)at($p())}function Us(){if(!rt.memoizer)at({memoizer:xp()})}var ge=O("ZodType",(e,t)=>(CL(),fe.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(_t(t,{checks:[...t.checks??[],...e.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Zt(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check($j(e,t))},superRefine(e,t){return this.check(Tj(e,t))},overwrite(e){return this.check(Wr(e))},optional(){return Te(this)},exactOptional(){return lj(this)},nullable(){return nk(this)},nullish(){return Te(nk(this))},nonoptional(e){return gj(this,e)},array(){return k(this)},or(e){return te([this,e])},and(e){return fc(this,e)},transform(e){return ok(this,dk(e))},default(e){return fj(this,e)},prefault(e){return hj(this,e)},catch(e){return wj(this,e)},pipe(e){return ok(this,e)},readonly(){return vj(this)},describe(e){let t=this.clone();return Ur.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ur.get(this);let t=this.clone();return Ur.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get "~standard"(){return La(this,"~standard",{...gp(this),jsonSchema:{input:js(this,"input"),output:js(this,"output")}})},set "~standard"(e){$r(this,"~standard",e)},parse:function e(t,r){return VS(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await ZS(this,t,r,{callee:e})},safeParse(e,t){return BS(this,e,t)},async safeParseAsync(e,t){return KS(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){$r(this,"spa",e)},validate(e,t){return Fa(this,e,t)},validateAsync(e,t){return Ua(this,e,t)},encode:function e(t,r){return HS(this,t,r,{callee:e})},decode:function e(t,r){return GS(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await JS(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await YS(this,t,r,{callee:e})},safeEncode(e,t){return XS(this,e,t)},safeDecode(e,t){return QS(this,e,t)},async safeEncodeAsync(e,t){return ek(this,e,t)},async safeDecodeAsync(e,t){return tk(this,e,t)},toJSONSchema(e){return wS(this,{})(e)},get description(){return Ur.get(this)?.description},get _def(){return this._zod.def}}),sk=O("_ZodString",(e,t)=>{Ha.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Up(e,r,n,o)},sb({format:(e)=>ct(e).format??null,minLength:(e)=>ct(e).minimum??null,maxLength:(e)=>ct(e).maximum??null},{regex(...e){return this.check(Pp(...e))},includes(...e){return this.check(Ap(...e))},startsWith(...e){return this.check(Rp(...e))},endsWith(...e){return this.check(Cp(...e))},min(...e){return this.check(po(...e))},max(...e){return this.check(ac(...e))},length(...e){return this.check(cc(...e))},nonempty(...e){return this.check(po(1,...e))},lowercase(e){return this.check(Op(e))},uppercase(e){return this.check(Ip(e))},trim(){return this.check(Np())},normalize(...e){return this.check(zp(...e))},toLowerCase(){return this.check(Lp())},toUpperCase(){return this.check(jp())},slugify(){return this.check(Dp())}})),ik=O("ZodString",(e,t)=>{Ha.init(e,t),sk.init(e,t)},{email(e){return this.check(zv(zL,e))},url(e){return this.check(Ep(ak,e))},jwt(e){return this.check(eS(JL,e))},emoji(e){return this.check(qv(LL,e))},guid(e){return this.check(Nv(NL,e))},uuid(e){return this.check(Lv(dc,e))},uuidv4(e){return this.check(jv(dc,e))},uuidv6(e){return this.check(Dv(dc,e))},uuidv7(e){return this.check(Mv(dc,e))},nanoid(e){return this.check(Fv(jL,e))},cuid(e){return this.check(Uv(DL,e))},cuid2(e){return this.check(Wv(ML,e))},ulid(e){return this.check(Vv(qL,e))},base64(e){return this.check(Yv(KL,e))},base64url(e){return this.check(Xv(HL,e))},xid(e){return this.check(Zv(FL,e))},ksuid(e){return this.check(Bv(UL,e))},ipv4(e){return this.check(Kv(WL,e))},ipv6(e){return this.check(Hv(VL,e))},cidrv4(e){return this.check(Gv(ZL,e))},cidrv6(e){return this.check(Jv(BL,e))},e164(e){return this.check(Qv(GL,e))},datetime(e){return this.check(ec(Ws,e))},date(e){return this.check(tc(Vs,e))},time(e){return this.check(rc(Zs,e))},duration(e){return this.check(nc(Bs,e))}});function p(e){return Cv(ik,e)}var Oe=O("ZodStringFormat",(e,t)=>{xe.init(e,t),sk.init(e,t)}),Ws=O("ZodISODateTime",(e,t)=>{D_.init(e,t),Oe.init(e,t)}),Vs=O("ZodISODate",(e,t)=>{M_.init(e,t),Oe.init(e,t)}),Zs=O("ZodISOTime",(e,t)=>{q_.init(e,t),Oe.init(e,t)}),Bs=O("ZodISODuration",(e,t)=>{F_.init(e,t),Oe.init(e,t)}),zL=O("ZodEmail",(e,t)=>{E_.init(e,t),Oe.init(e,t)});var NL=O("ZodGUID",(e,t)=>{$_.init(e,t),Oe.init(e,t)});var dc=O("ZodUUID",(e,t)=>{T_.init(e,t),Oe.init(e,t)});var ak=O("ZodURL",(e,t)=>{I_.init(e,t),Oe.init(e,t)});function Ks(e){return Ep(ak,e)}var LL=O("ZodEmoji",(e,t)=>{A_.init(e,t),Oe.init(e,t)});var jL=O("ZodNanoID",(e,t)=>{R_.init(e,t),Oe.init(e,t)});var DL=O("ZodCUID",(e,t)=>{C_.init(e,t),Oe.init(e,t)});var ML=O("ZodCUID2",(e,t)=>{z_.init(e,t),Oe.init(e,t)});var qL=O("ZodULID",(e,t)=>{N_.init(e,t),Oe.init(e,t)});var FL=O("ZodXID",(e,t)=>{L_.init(e,t),Oe.init(e,t)});var UL=O("ZodKSUID",(e,t)=>{j_.init(e,t),Oe.init(e,t)});var WL=O("ZodIPv4",(e,t)=>{U_.init(e,t),Oe.init(e,t)});var VL=O("ZodIPv6",(e,t)=>{V_.init(e,t),Oe.init(e,t)});var ZL=O("ZodCIDRv4",(e,t)=>{Z_.init(e,t),Oe.init(e,t)});var BL=O("ZodCIDRv6",(e,t)=>{B_.init(e,t),Oe.init(e,t)});var KL=O("ZodBase64",(e,t)=>{H_.init(e,t),Oe.init(e,t)});var HL=O("ZodBase64URL",(e,t)=>{G_.init(e,t),Oe.init(e,t)});var GL=O("ZodE164",(e,t)=>{J_.init(e,t),Oe.init(e,t)});var JL=O("ZodJWT",(e,t)=>{Y_.init(e,t),Oe.init(e,t)});var pc=O("ZodNumber",(e,t)=>{wp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Wp(e,r,n,o),e.isFinite=!0},sb({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=ct(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=ct(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=ct(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>ct(e).format??null},{gt(e,t){return this.check(sc(e,t))},gte(e,t){return this.check(Ns(e,t))},min(e,t){return this.check(Ns(e,t))},lt(e,t){return this.check(oc(e,t))},lte(e,t){return this.check(zs(e,t))},max(e,t){return this.check(zs(e,t))},int(e){return this.check(rk(e))},safe(e){return this.check(rk(e))},positive(e){return this.check(sc(0,e))},nonnegative(e){return this.check(Ns(0,e))},negative(e){return this.check(oc(0,e))},nonpositive(e){return this.check(zs(0,e))},multipleOf(e,t){return this.check(ic(e,t))},step(e,t){return this.check(ic(e,t))},finite(){return this}}));function P(e){return tS(pc,e)}var YL=O("ZodNumberFormat",(e,t)=>{X_.init(e,t),pc.init(e,t)});function rk(e){return nS(YL,e)}var ck=O("ZodBoolean",(e,t)=>{Q_.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Vp(e,r,n,o)});function D(e){return oS(ck,e)}var XL=O("ZodNull",(e,t)=>{ev.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zp(e,r,n,o)});function Hs(e){return sS(XL,e)}var QL=O("ZodAny",(e,t)=>{tv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Kp(e,r,n,o)});function uk(){return iS(QL)}var ej=O("ZodUnknown",(e,t)=>{rv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Hp(e,r,n,o)});function ne(){return aS(ej)}var tj=O("ZodNever",(e,t)=>{nv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bp(e,r,n,o)});function rj(e){return cS(tj,e)}var nj=O("ZodArray",(e,t)=>{Us(),ov.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ef(e,r,n,o),e.element=t.element},{min(e,t){return this.check(po(e,t))},nonempty(e){return this.check(po(1,e))},max(e,t){return this.check(ac(e,t))},length(e,t){return this.check(cc(e,t))},unwrap(){return this.element}});function k(e,t){return uS(nj,e,t)}var wf=O("ZodObject",(e,t)=>{Us(),av.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tf(e,r,n,o),jN(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(_t(this._zod.def,{catchall:e}))},passthrough(){return this.clone(_t(this._zod.def,{catchall:ne()}))},loose(){return this.clone(_t(this._zod.def,{catchall:ne()}))},strict(){return this.clone(_t(this._zod.def,{catchall:rj()}))},strip(){return this.clone(_t(this._zod.def,{catchall:void 0}))},extend(e){return ON(this,e)},safeExtend(e){return IN(this,e)},merge(e){return AN(this,e)},pick(e){return EN(this,e)},omit(e){return PN(this,e)},partial(...e){return tb(_f,this,e[0])},exactPartial(...e){return tb(pk,this,e[0],"exactPartial")},required(...e){return RN(fk,this,e[0])}});function w(e,t){let r={type:"object",shape:e??{},...U(t)};return new wf(r)}function ve(e,t){return new wf({type:"object",shape:e,catchall:ne(),...U(t)})}var lk=O("ZodUnion",(e,t)=>{bp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rf(e,r,n,o),e.options=t.options});function te(e,t){return new lk({type:"union",options:e,...U(t)})}var oj=O("ZodDiscriminatedUnion",(e,t)=>{lk.init(e,t),cv.init(e,t)});function It(e,t,r){return new oj({type:"union",options:t,discriminator:e,...U(r)})}var sj=O("ZodIntersection",(e,t)=>{uv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>nf(e,r,n,o)});function fc(e,t){return new sj({type:"intersection",left:e,right:t})}var ij=O("ZodTuple",(e,t)=>{Us(),lv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>of(e,r,n,o)},{rest(e){return this.clone({...this._zod.def,rest:e})},partial(){let e=this._zod.def;if(e.checks?.length)throw Error(".partial() cannot be used on tuple schemas containing refinements");return this.clone({...e,items:e.items.map((t)=>new _f({type:"optional",innerType:t}))})}});function aj(e,t,r){let n=t instanceof fe,o=n?r:t;return new ij({type:"tuple",items:e,rest:n?t:null,...U(o)})}var gf=O("ZodRecord",(e,t)=>{Us(),dv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>sf(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function K(e,t,r){if(!t||!t._zod)return new gf({type:"record",keyType:p(),valueType:e,...U(t)});return new gf({type:"record",keyType:e,valueType:t,...U(r)})}function bf(e,t,r){return new gf({type:"record",keyType:e,valueType:t,...U(r),partial:!0})}var yf=O("ZodEnum",(e,t)=>{pv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Gp(e,n,o,s),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=t.entries[i];else throw Error(`Key ${i} not found in enum`);return new yf({...t,checks:[],...U(o),entries:s})},e.exclude=(n,o)=>{let s={...t.entries};for(let i of n)if(r.has(i))delete s[i];else throw Error(`Key ${i} not found in enum`);return new yf({...t,checks:[],...U(o),entries:s})}});function z(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new yf({type:"enum",entries:r,...U(t)})}var cj=O("ZodLiteral",(e,t)=>{fv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Jp(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function C(e,t){return new cj({type:"literal",values:Array.isArray(e)?e:[e],...U(t)})}var uj=O("ZodTransform",(e,t)=>{Us(),mv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Qp(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Os(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(Cn(s,r.value,t));else{let i=s;if(i.fatal)i.continue=!1;if(i.code??(i.code="custom"),!("input"in i))i.input=r.value;i.inst??(i.inst=e),r.issues.push(Cn(i))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((s)=>(r.value=s,r));return r.value=o,r}});function dk(e){return new uj({type:"transform",transform:e})}var _f=O("ZodOptional",(e,t)=>{_p.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Te(e){return new _f({type:"optional",innerType:e})}var pk=O("ZodExactOptional",(e,t)=>{hv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function lj(e){return new pk({type:"optional",innerType:e})}var dj=O("ZodNullable",(e,t)=>{gv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>af(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function nk(e){return new dj({type:"nullable",innerType:e})}var pj=O("ZodDefault",(e,t)=>{yv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function fj(e,t){return new pj({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():Yd(t)}})}var mj=O("ZodPrefault",(e,t)=>{wv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>df(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function hj(e,t){return new mj({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():Yd(t)}})}var fk=O("ZodNonOptional",(e,t)=>{bv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>cf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function gj(e,t){return new fk({type:"nonoptional",innerType:e,...U(t)})}var yj=O("ZodCatch",(e,t)=>{_v.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function wj(e,t){return new yj({type:"catch",innerType:e,catchValue:typeof t==="function"?t:ib(t)})}var mk=O("ZodPipe",(e,t)=>{vp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ff(e,r,n,o),e.in=t.in,e.out=t.out});function ok(e,t){return new mk({type:"pipe",in:e,out:t})}var bj=O("ZodPreprocess",(e,t)=>{mk.init(e,t),vv.init(e,t)}),_j=O("ZodReadonly",(e,t)=>{Sv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function vj(e){return new _j({type:"readonly",innerType:e})}var Sj=O("ZodTemplateLiteral",(e,t)=>{kv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Yp(e,r,n,o)});function kj(e,t){return new Sj({type:"template_literal",parts:e,...U(t)})}var xj=O("ZodLazy",(e,t)=>{xv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hf(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function vf(e){return new xj({type:"lazy",getter:e})}var hk=O("ZodCustom",(e,t)=>{$v.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Xp(e,r,n,o)});function mc(e,t){return lS(hk,e??(()=>!0),t)}function $j(e,t={}){return dS(hk,e,t)}function Tj(e,t){return pS(e,t)}function At(e){let t=vf(()=>te([p(e),P(),D(),Hs(),k(t),K(p(),t)]));return t}function hc(e,t){return new bj({type:"pipe",in:dk(e),out:t})}var yk={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};var gk;(function(e){})(gk||(gk={}));function wk(e){return ec(Ws,e)}function Pj(e){return tc(Vs,e)}function Oj(e){return rc(Zs,e)}function Ij(e){return nc(Bs,e)}function Aj(e){return rS(pc,e)}var _k={name:"@tripwire-sh/cli",version:"0.1.7",description:"Set up Tripwire in your coding agents and manage it from the terminal",type:"module",imports:{"#/*":"./src/*"},license:"MIT",repository:{type:"git",url:"git+https://github.com/Boring-Software-Inc/v2.git",directory:"apps/cli"},homepage:"https://tripwire.sh",bin:{tripwire:"dist/tripwire.js"},files:["dist"],engines:{node:">=20.12"},publishConfig:{access:"public"},scripts:{build:"bun build src/index.ts --target node --format esm --minify --outfile dist/tripwire.js",typecheck:"tsc --noEmit"},devDependencies:{"@clack/prompts":"^1.7.0","@modelcontextprotocol/sdk":"^1.32.1","@tripwire/contracts":"workspace:*",commander:"^14.0.3","jsonc-parser":"^3.3.1",picocolors:"^1.1.1",yaml:"^2.9.0",zod:"^4.0.0"}};var gc=_k.version,q="tripwire",Gs="tripwire-get-started",vk="tripwire-workflows",Js="tripwire-cli",Cj="https://mcp.tripwire.sh/mcp",zj="https://app.tripwire.sh/api/auth",Sk="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function go(e){return e.TRIPWIRE_MCP_URL||Cj}function kk(e){return(e.TRIPWIRE_AUTH_URL||zj).replace(/\/+$/,"")}var Nj="urn:ietf:params:oauth:grant-type:device_code",Lj=w({device_code:p(),user_code:p(),verification_uri:p(),verification_uri_complete:p().optional(),expires_in:P(),interval:P().optional()}),$k=w({access_token:p().min(1),refresh_token:p().min(1).optional(),expires_in:P().optional(),token_type:p().optional()}),kf=w({error:p(),error_description:p().optional()});class Sf extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class Ys extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var Tk={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function yc(e,t,r){let n=await e.fetch(t,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded",accept:"application/json"},body:new URLSearchParams(r).toString()}),o=await n.text(),s={error:"invalid_response",error_description:o.slice(0,200)};try{let i=At().safeParse(JSON.parse(o));return{status:n.status,body:i.success?i.data:s,headers:n.headers}}catch{return{status:n.status,body:s,headers:n.headers}}}function Ek(e,t){let r=kf.safeParse(e);if(!r.success)return Error(t);return Error(r.data.error_description?`${r.data.error}: ${r.data.error_description}`:r.data.error)}async function Pk(e,t,r){let{status:n,body:o}=await yc(e,`${t}/device/code`,{client_id:Js,scope:Sk,resource:r}),s=Lj.safeParse(o);if(n>=400||!s.success)throw Ek(o,`Device authorization failed (HTTP ${n})`);return s.data}function Ok(e,t,r,n,o){let s=t.refresh_token??o;return{accessToken:t.access_token,refreshToken:s,expiresAt:t.expires_in?e.now()+t.expires_in*1000:void 0,mcpUrl:n,authUrl:r}}var xk=5000;function jj(e,t){let r=(e.get("retry-after")??e.get("x-retry-after"))?.trim();if(!r)return null;if(/^\d+$/.test(r))return Number(r)*1000;let n=Date.parse(r);return Number.isNaN(n)?null:Math.max(0,n-t)}async function Ik(e,t,r,n){let o=(n.interval??5)*1000,s=null,i=e.now()+n.expires_in*1000;while(e.now()<i){await e.sleep(Math.min(Math.max(o,s??0),i-e.now())),s=null;let{status:a,body:c,headers:u}=await yc(e,`${t}/oauth2/token`,{grant_type:Nj,device_code:n.device_code,client_id:Js,resource:r}),l=$k.safeParse(c);if(a<400&&l.success)return Ok(e,l.data,t,r);if(a===429){if(s=jj(u,e.now()),s===null)o+=xk;continue}let d=kf.safeParse(c),f=d.success?d.data.error:"";if(f==="authorization_pending")continue;if(f==="slow_down"){o+=xk;continue}if(f==="access_denied")throw Error("Sign-in was denied in the browser");if(f==="expired_token")throw Error("The code expired. Run tripwire login again.");throw Ek(c,`Token request failed (HTTP ${a})`)}throw Error("The code expired. Run tripwire login again.")}async function Ak(e,t){if(!t.refreshToken)throw new Sf;let{status:r,body:n}=await yc(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:Js,resource:t.mcpUrl}).catch(()=>{throw new Ys}),o=$k.safeParse(n);if(r>=400||!o.success){let s=kf.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new Sf:new Ys}return Ok(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function Rk(e,t){let r=t.refreshToken??t.accessToken;await yc(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:Js}).catch(()=>{return})}import{stripVTControlCharacters as MF}from"node:util";var Dj=z(["pending","approved","rejected"]),Aie=Dj.options;var Xs=[{id:"github",label:"GitHub",status:"live",signIn:"social",reviews:!0},{id:"opengit",label:"OpenGit",status:"live",paused:!0},{id:"gitlab",label:"GitLab",status:"planned"},{id:"origin",label:"ORIGIN",status:"planned"}];function Ck(e){return e.status==="live"}var Qs=z(Xs.filter(Ck).map((e)=>e.id)),zie=Xs.filter((e)=>Ck(e)&&!("paused"in e)).map((e)=>e.label),Nie=Xs.filter((e)=>e.status==="planned").map((e)=>e.label),Lie=Xs.filter((e)=>("signIn"in e)).map((e)=>e.id);var Mj=Object.fromEntries(Xs.map((e)=>[e.id,e]));var wc=w({owner:p(),name:p(),fullName:p()}),qj=w({id:p(),login:p(),name:p(),type:z(["Organization","User"]),avatarUrl:p(),repoAccess:z(["all","selected"]),repoCount:P(),installedAt:pe.datetime()}),Fj=w({id:p(),owner:p(),name:p(),fullName:p(),private:D(),pushedAt:pe.datetime(),openFlags:P(),stars:P()}),Mie=w({accounts:k(qj),repos:k(Fj)});var ei=z(["change-request.opened","change-request.updated","change-request.closed","comment.created","push","schedule.matched","installation.created","installation.deleted","installation-repositories.added","installation-repositories.removed"]),zk=w({login:p(),externalId:p(),avatarUrl:p().optional()}),xf=w({number:P().int(),title:p(),headSha:p(),baseRef:p().optional(),headRef:p().optional(),draft:D().optional(),url:p()}),Uj=w({externalId:p(),body:p(),url:p(),subjectNumber:P().int(),byTripwire:D().optional()}),Wj=w({ref:p(),headSha:p(),commitCount:P().int(),url:p().optional()}),_c=z(["issue","change-request"]),Vj=w({kind:_c,number:P().int(),title:p(),url:p(),state:z(["open","closed"]),author:p(),labels:k(p()),locked:D(),updatedAt:pe.datetime()}),Zj=w({workflowId:p(),nodeId:p(),tickId:p()}),yo={id:p(),forge:Qs,deliveryId:p(),repo:wc,repoExternalId:p().optional(),installationExternalId:p().optional(),actor:zk,occurredAt:pe.datetime(),receivedAt:pe.datetime()},bc={id:p(),forge:Qs,deliveryId:p(),actor:zk,occurredAt:pe.datetime(),receivedAt:pe.datetime(),installation:w({externalId:p(),account:p(),accountType:z(["User","Organization"]).optional()}),repositories:k(w({externalId:p(),owner:p(),name:p(),fullName:p(),private:D()}))},Nk=It("kind",[w({...yo,kind:C("change-request.opened"),changeRequest:xf}),w({...yo,kind:C("change-request.updated"),changeRequest:xf}),w({...yo,kind:C("change-request.closed"),changeRequest:xf}),w({...yo,kind:C("comment.created"),comment:Uj}),w({...yo,kind:C("push"),push:Wj}),w({...yo,kind:C("schedule.matched"),schedule:Zj,thread:Vj}),w({...bc,kind:C("installation.created")}),w({...bc,kind:C("installation.deleted")}),w({...bc,kind:C("installation-repositories.added")}),w({...bc,kind:C("installation-repositories.removed")})]),Bj=ei.extract(["change-request.opened","change-request.updated","change-request.closed"]),Vie=Bj.options;var Kj=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],Hj=["sun","mon","tue","wed","thu","fri","sat"],Gj=[{name:"minute",range:"0 to 59",min:0,max:59},{name:"hour",range:"0 to 23",min:0,max:23},{name:"day of month",range:"1 to 31",min:1,max:31},{name:"month",range:"1 to 12 or jan to dec",min:1,max:12,names:Kj,nameBase:1},{name:"day of week",range:"0 to 7 or sun to sat",min:0,max:7,names:Hj,nameBase:0}];function $f(e,t){let r=e.toLowerCase(),n=t.names?.indexOf(r)??-1;if(n>=0)return n+(t.nameBase??0);if(!/^\d+$/.test(e))return null;let o=Number(e);return o>=t.min&&o<=t.max?o:null}function Jj(e,t){let r=new Set;for(let n of e.split(",")){let o=n.split("/"),[s="",i]=o;if(o.length>2||s.split("-").length>2)return{ok:!1,error:`${t.name} must be a number, a range like 1-5 or a step like */15`};let a=i===void 0?1:Number(i);if(!(Number.isInteger(a)&&a>=1))return{ok:!1,error:`${t.name} step must be a whole number of 1 or more, like */15`};let c,u;if(s==="*")c=t.min,u=t.max;else if(s.includes("-")){let[l="",d=""]=s.split("-");c=$f(l,t),u=$f(d,t)}else c=$f(s,t),u=i===void 0?c:t.max;if(c===null||u===null)return{ok:!1,error:`${t.name} must be ${t.range}`};if(c>u)return{ok:!1,error:`${t.name} range must go from low to high, like 1-5`};for(let l=c;l<=u;l+=a)r.add(l)}return{ok:!0,values:[...r].sort((n,o)=>n-o)}}function zn(e){let t=e.trim().split(/\s+/);if(t.length!==5)return{ok:!1,error:"use five fields: minute hour day month weekday"};let r=[];for(let[u,l]of Gj.entries()){let d=Jj(t[u]??"",l);if(!d.ok)return d;r.push(d.values)}let[n=[],o=[],s=[],i=[],a=[]]=r,c=[...new Set(a.map((u)=>u===7?0:u))].sort((u,l)=>u-l);return{ok:!0,spec:{minutes:n,hours:o,days:s,months:i,weekdays:c,daysRestricted:!(t[2]??"*").startsWith("*"),weekdaysRestricted:!(t[4]??"*").startsWith("*")}}}function ti(e){try{return new Intl.DateTimeFormat("en-US",{timeZone:e}),!0}catch{return!1}}var Lk=new Map;function Yj(e){let t=Lk.get(e);if(t)return t;let r=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return Lk.set(e,r),r}function Pf(e,t){let r=Yj(t).formatToParts(e),n=(o)=>Number(r.find((s)=>s.type===o)?.value??"0");return{year:n("year"),month:n("month"),day:n("day"),hour:n("hour"),minute:n("minute")}}function Tf(e,t){let r=Pf(new Date(e),t),n=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute),o=e-(e%60000+60000)%60000;return n-o}function jk(e,t){let r=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute),n=[r-Tf(r-129600000,t),r-Tf(r+129600000,t),r-Tf(r,t)].sort((o,s)=>o-s);for(let o of n){let s=Pf(new Date(o),t);if(s.year===e.year&&s.month===e.month&&s.day===e.day&&s.hour===e.hour&&s.minute===e.minute)return new Date(o)}return null}function vc(e,t,r){let n=e.days.includes(t),o=e.weekdays.includes(r);if(e.daysRestricted&&e.weekdaysRestricted)return n||o;return n&&o}function Xj(e,t){return vc(e,t.getUTCDate(),t.getUTCDay())}var Qj=Array.from({length:217},(e,t)=>({day:t%31+1,weekday:Math.floor(t/31)}));function Ef(e){let t=Qj.map(({day:r,weekday:n})=>vc(e,r,n)?"1":"0").join("");return[e.minutes,e.hours,e.months].map((r)=>r.join(",")).concat(t).join(" ")}function Dk(e,t){let r=zn(e),n=zn(t);return r.ok&&n.ok&&Ef(r.spec)===Ef(n.spec)}var eD=1830,tD=180;function rD(e,t){let r=jk(e,t);if(r)return r;let n=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute);for(let o=1;o<=tD;o++){let s=new Date(n+o*60000),i=jk({year:s.getUTCFullYear(),month:s.getUTCMonth()+1,day:s.getUTCDate(),hour:s.getUTCHours(),minute:s.getUTCMinutes()},t);if(i)return i}return null}function Mk(e){let{minutes:t,hours:r}=e,n=t.slice(1).map((s,i)=>s-(t[i]??0));if(r.some((s)=>r.includes((s+1)%24)))n.push(60-(t.at(-1)??0)+(t[0]??0));return n.length>0?Math.min(...n):1440}function Of(e,t,r){let n=Pf(r,t),o=new Date(Date.UTC(n.year,n.month-1,n.day));for(let s=0;s<=eD;s++){if(e.months.includes(o.getUTCMonth()+1)&&Xj(e,o))for(let i of e.hours)for(let a of e.minutes){let c=rD({year:o.getUTCFullYear(),month:o.getUTCMonth()+1,day:o.getUTCDate(),hour:i,minute:a},t);if(c&&c.getTime()>r.getTime())return c}o.setUTCDate(o.getUTCDate()+1)}return null}var Rt=5,qe=vf(()=>te([p(),P(),D(),Hs(),k(qe),K(p(),qe)])),xc=w({x:P(),y:P()}),nD=z(["all-of","any-of","not"]),oD=z(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),sD=["comment"];function Fk(e){return sD.includes(e)}var Jie=w({url:Ks().meta({secret:!0}).describe("webhook url"),signingSecret:p().min(1).optional().meta({secret:!0}).describe("signing secret")}),Yie=w({url:Ks().meta({secret:!0}).describe("discord webhook url")}),wo=15,$c=p().regex(/^[A-Za-z0-9](?:[A-Za-z0-9]|-(?=[A-Za-z0-9])){0,38}$/,{error:(e)=>`${String(e.input)} is not a GitHub username`}),If=p().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),Af=w({id:P().int().positive().optional(),login:$c}),Xie=w({id:P().int().positive(),login:$c,avatarUrl:p(),permission:p().min(1)}),Qie=w({name:p().min(1),color:p().regex(/^[0-9a-fA-F]{6}$/),description:p().nullable()}),iD=hc((e)=>p().safeParse(e).success?{login:e}:e,Af);function Uk(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var ri=w({reviewers:k(iD).max(wo,`ask at most ${wo} people`).default([]),teamReviewers:k(If).max(wo,`ask at most ${wo} teams`).default([])}),Wk=ri.superRefine((e,t)=>{let r=e.reviewers.length+e.teamReviewers.length;if(r===0)t.addIssue({code:"custom",message:"add at least one person or team to ask"});if(r>wo)t.addIssue({code:"custom",message:`ask at most ${wo} people and teams`})}),Zr=w({labels:k(p().trim().min(1)).min(1,"choose at least one label")}),qk=5000,Tc=w({message:p().trim().min(1,"write a message").max(qk,`keep it under ${qk} characters`)}),aD=z(["resolved","off-topic","too heated","spam"]),Vk=w({reason:aD.optional()}),ni={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function Rf(e){return e.n*ni[e.unit]}var Ec=52*ni.weeks,cD=3650*ni.days,uD=z(["hours","days","weeks"]),lD=z(["hours","days","weeks","months"]),dD=w({n:P().int().min(1),unit:uD}).refine((e)=>Rf(e)<=Ec,{message:"runs at least once a year"}),rr="UTC",Zk=p().min(1).refine(ti,{error:(e)=>`${String(e.input)} is not an IANA timezone, like Europe/Berlin`}),Sc=p().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use 24-hour HH:MM, like 07:30"),Cf=z(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),pD=It("preset",[w({preset:C("hourly"),minute:P().int().min(0).max(59)}),w({preset:C("daily"),at:Sc}),w({preset:C("weekdays"),at:Sc}),w({preset:C("weekly"),on:Cf,at:Sc}),w({preset:C("monthly"),day:P().int().min(1).max(28),at:Sc})]),Pc=w({cron:p().trim().superRefine((e,t)=>{let r=zn(e);if(!r.ok){t.addIssue({code:"custom",message:r.error});return}if(Of(r.spec,"UTC",new Date(Date.UTC(2026,0,1)))===null)t.addIssue({code:"custom",message:"this cron never runs. Pick a day the month has"});if(Mk(r.spec)<Rt)t.addIssue({code:"custom",message:`runs must be at least ${Rt} minutes apart`})})}),Bk=te([dD,pD,Pc]),Kk=w({n:P().int().min(1),unit:lD}).refine((e)=>Rf(e)<=cD,{message:"10 years at most"}),Hk=z(["open","closed","any"]),kc=k(p().min(1)),fD=w({subjects:k(_c).min(1),state:Hk,inactiveFor:Kk,labels:kc.optional(),excludeLabels:kc.optional(),skipLocked:D().default(!0)}),bo=w({every:Bk,timezone:Zk.optional(),match:fD}),mD=w({every:Bk.optional(),timezone:Zk.optional(),match:w({subjects:k(_c).optional(),state:Hk.optional(),inactiveFor:Kk.optional(),labels:kc.optional(),excludeLabels:kc.optional(),skipLocked:D().optional()}).default({})});var hD=["every","subjects","state","inactiveFor"];function Gk(e){return hD.filter((t)=>{if(!e)return!0;if(t==="every")return e.every===void 0;let r=e.match[t];return Array.isArray(r)?r.length===0:r===void 0})}var Vr=p(),gD=w({id:Vr,type:C("trigger"),kinds:k(ei).min(1),schedule:mD.optional(),position:xc.optional()});function Oc(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var yD=w({id:Vr,type:C("rule"),ref:p().regex(/^[a-z][a-z0-9-]*@\d+$/),config:qe,position:xc.optional()}),wD=w({id:Vr,type:C("gate"),mode:nD,position:xc.optional()}),bD=w({id:Vr,type:C("action"),action:oD,params:K(p(),qe).optional(),position:xc.optional()}),zf=It("type",[gD,yD,wD,bD]),Jk=z(["pass","fail","approve","deny"]),_D=w({id:p(),from:Vr,to:Vr,when:Jk.optional()}),ut=w({id:p(),name:p(),version:P().int().min(1),nodes:k(zf).min(1),edges:k(_D)}),Yk={id:"default@1",name:"default gate",version:1,nodes:[{id:"trigger",type:"trigger",kinds:["change-request.opened","change-request.updated"]},{id:"account-age",type:"rule",ref:"account-age@1",config:{minDays:7}},{id:"crypto",type:"rule",ref:"crypto-address@1",config:{}},{id:"honeypot",type:"rule",ref:"honeypot@1",config:{paths:[".github/workflows/**"]}},{id:"max-files",type:"rule",ref:"max-files-changed@1",config:{max:200}},{id:"english",type:"rule",ref:"english-only@1",config:{maxNonLatinRatio:0.5}},{id:"gate",type:"gate",mode:"all-of"},{id:"block",type:"action",action:"block"}],edges:[{id:"e1",from:"trigger",to:"account-age"},{id:"e2",from:"trigger",to:"crypto"},{id:"e3",from:"trigger",to:"honeypot"},{id:"e4",from:"trigger",to:"max-files"},{id:"e5",from:"trigger",to:"english"},{id:"e6",from:"account-age",to:"gate"},{id:"e7",from:"crypto",to:"gate"},{id:"e8",from:"honeypot",to:"gate"},{id:"e9",from:"max-files",to:"gate"},{id:"e10",from:"english",to:"gate"},{id:"e11",from:"gate",to:"block",when:"fail"}]};var Xk=[{kind:"change-request.opened",name:"Change request opened",description:"Runs when someone opens a change request.",toolbox:!0},{kind:"change-request.updated",name:"Change request updated",description:"Runs when a change request gets new commits or edits.",toolbox:!0},{kind:"change-request.closed",name:"Change request closed",description:"Runs when a change request is closed.",toolbox:!0},{kind:"comment.created",name:"Comment created",description:"Runs when someone comments on a change request or issue.",toolbox:!0},{kind:"push",name:"Push",description:"Runs when commits are pushed to the repo.",toolbox:!0},{kind:"schedule.matched",name:"On a schedule",description:"Runs on a timer for issues and change requests that match.",toolbox:!0},{kind:"installation.created",name:"Installation created",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation.deleted",name:"Installation deleted",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.added",name:"Repos added",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.removed",name:"Repos removed",description:"Internal event. Installations sync outside workflows.",toolbox:!1}],Qk=[{mode:"all-of",name:"All of",description:"Passes only when every connected check passes. A check that was never reached does not pass."},{mode:"any-of",name:"Any of",description:"Passes when at least one connected check passes. A check that was never reached does not pass."},{mode:"not",name:"Not",description:"Flips its input: pass becomes fail, and fail becomes pass."}],ex=[{action:"block",name:"Block",description:"Fails the Tripwire check and requests changes. The change request stays open."},{action:"label",name:"Label",description:"Adds labels you choose to the change request."},{action:"request-review",name:"Request GitHub review",description:"Asks the people you choose to review on GitHub."},{action:"send-to-moderation",name:"Human review",description:"Waits for a maintainer to approve or block it in Tripwire."},{action:"webhook",name:"Webhook",description:"Posts the verdict as JSON to a URL you set."},{action:"lock",name:"Lock",description:"Locks the conversation so only maintainers can comment."},{action:"close",name:"Close",description:"Closes the issue or change request."},{action:"remove-label",name:"Remove label",description:"Removes labels you choose, if they are there."},{action:"post-comment",name:"Comment",description:"Posts a comment you write. It is separate from the verdict comment."},{action:"discord",name:"Discord",description:"Posts the verdict to a Discord channel you set."}];var nae=K(p(),qe).catch({});function Ic(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function tx(e){let t=Zr.safeParse(e);return t.success?t.data.labels:[]}function rx(e){return`${e.length===1?"the label":"the labels"} ${Ic(e)}`}function vD(e){let t=ri.safeParse(e);if(!t.success)return[];return[...t.data.reviewers.map((r)=>r.login),...t.data.teamReviewers]}function nx(e,t){switch(e){case"block":return"blocks it";case"label":{let r=tx(t);return r.length>0?`adds ${rx(r)}`:"adds labels"}case"remove-label":{let r=tx(t);return r.length>0?`removes ${rx(r)}`:"removes labels"}case"request-review":{let r=vD(t);return r.length>0?`requests GitHub review from ${Ic(r)}`:"requests GitHub review"}case"send-to-moderation":return"sends it to human review";case"webhook":return"posts the verdict to a webhook";case"discord":return"posts the verdict to Discord";case"lock":return"locks the conversation";case"close":return"closes it";case"post-comment":return"posts your comment";default:return e}}var SD=w({runId:p(),verdict:p().nullable(),status:p(),reason:p().nullable()}),ox=w({event:Nk,run:SD.nullable(),pending:D().optional()}),kD=w({repoFullName:p(),subjectNumber:P().int(),title:p(),url:p().nullable(),actor:w({login:p(),avatarUrl:p().nullable()}),currentVerdict:p().nullable(),currentRunId:p().nullable(),latestActivityAt:pe.datetime(),eventCount:P().int(),timeline:k(ox)}),xD=It("type",[w({type:C("group"),group:kD}),w({type:C("event"),entry:ox})]),aae=w({items:k(xD)});var $D=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],lae=z($D);var TD="https://tripwire.sh/orgs";var dae=w({sub:p().min(1),azp:p().min(1).optional(),client_id:p().min(1).optional(),scope:p().optional(),[TD]:k(p()).optional()});var ED=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],sx=z(ED),ix=z(["active","waiting","completed","skipped","failed"]);var PD=p().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),OD=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function ax(e){let t=OD.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var ID=w({status:ix,detail:p().max(256).nullable(),updatedAt:pe.datetime()}),AD=bf(sx,ID),mae=w({runCode:p().trim().min(1).max(200),stage:sx,status:ix,detail:p().trim().max(256).optional()}),cx=w({code:PD,stages:AD,completedAt:pe.datetime().nullable(),lastReportAt:pe.datetime().nullable()});function ux(e){return e?`Please help me set up Tripwire.
|
|
228
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function vv(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;vv(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var kv=new Set(["type","properties","required","additionalProperties"]),_v=["oneOf","anyOf"];function Sv(e){let t=e.additionalProperties;if(t===void 0||t===!1||typeof t!=="object"||t===null)return null;return Object.keys(t).length?t:null}function Wp(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!kv.has(i))return null;t.push(s)}let r={},n=new Set;for(let s of t){for(let i in s.properties){if(Object.prototype.hasOwnProperty.call(r,i))continue;let a=[];for(let u of t){let l=u.properties?.[i]??Sv(u);if(l===null||l===void 0)continue;if(!a.some((d)=>JSON.stringify(d)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:Wp(a)??{allOf:a};_t(r,i,c)}for(let i of s.required??[])n.add(i)}let o={type:"object",properties:r};if(n.size)o.required=[...n];if(t.every((s)=>s.additionalProperties===!1))o.additionalProperties=!1;else{let s=[];for(let i of t){let a=Sv(i);if(a&&!s.some((c)=>JSON.stringify(c)===JSON.stringify(a)))s.push(a)}if(s.length===1)o.additionalProperties=s[0];else if(s.length>1)o.additionalProperties={allOf:s}}return o}function kL(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of kv)if(o in e)return;let r=t.filter((o)=>_v.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Wp(t);else{let o=r[0],s=_v.find((c)=>Array.isArray(o[c]));if(Object.keys(o).length!==1)return;let i=t.filter((c)=>c!==o),a=o[s].map((c)=>Wp([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Ms(e,n)}function Ws(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(a)=>{let c=e.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},d=c.ref;if(c.ref=null,d){n(d);let m=e.seen.get(d),h=m.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(h);else Ms(u,h);if(Ms(u,l),a._zod.parent===d)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(!(y in l))delete u[y]}if(h.$ref&&m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.def[y]))delete u[y]}}let f=a._zod.parent;if(f&&f!==d){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let h in u){if(h==="$ref"||h==="allOf")continue;if(h in m.def&&JSON.stringify(u[h])===JSON.stringify(m.def[h]))delete u[h]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())vv(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let d=a.get(l);if(d)d.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])kL(u)}}let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Ms(o,r.defId?r.schema:r.def??r.schema);let s=e.metadataRegistry.get(t)?.id;if(s!==void 0&&o.id===s)delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let a of e.seen.entries()){let c=a[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;_t(i,c.defId,c.def)}}if(e.external)e.sharedEmitDoneFor=e.external;if(e.external);else if(Object.keys(i).length>0)if(e.target==="draft-2020-12")o.$defs=i;else o.definitions=i;try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:qs(t,"input",e.processors),output:qs(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function ot(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return ot(n.element,r);if(n.type==="set")return ot(n.valueType,r);if(n.type==="lazy")return ot(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault"||n.type==="catch")return ot(n.innerType,r);if(n.type==="intersection")return ot(n.left,r)||ot(n.right,r);if(n.type==="record"||n.type==="map")return ot(n.keyType,r)||ot(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return ot(n.in,r)||ot(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(ot(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(ot(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(ot(o,r))return!0;if(n.rest&&ot(n.rest,r))return!0;return!1}return!1}var xv=(e,t={})=>(r)=>{let n=Fs({...r,processors:t});return Se(e,n),Us(n,e),Ws(n,e)},qs=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Fs({...o??{},target:s,io:t,processors:r});return Se(e,i),Us(i,e),Ws(i,e)};var ho=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},go=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},$v=(e,t)=>{ho(e,"minimum",t),go(e,"maximum",t)},Iv=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},Av=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},Rv=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},Cv=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},Tv=(e,t)=>ho(e,"minimum",t.minimum),Ev=(e,t)=>go(e,"maximum",t.maximum),Pv=(e)=>(t,r)=>{Cv(t,r.format);let[n,o]=e[r.format];ho(t,"minimum",n),go(t,"maximum",o)},xL={greater_than:(e,t)=>ho(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>go(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>Iv(e,t.value),number_format:Pv(Ca),bigint_format:Pv(np),min_length:Tv,max_length:Ev,length_equals:(e,t)=>$v(e,t.length),min_size:Tv,max_size:Ev,size_equals:(e,t)=>$v(e,t.size),string_format:(e,t)=>{if(Cv(e,t.format),t.pattern)Av(e,t.pattern);if(t.format==="base64"||t.format==="base64url")e.contentEncoding=t.format;if(t.local||t.precision===-1)e.laxFormat=!0},mime_type:(e,t)=>Rv(e,t.mime)};function ut(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)xL[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)ho(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)ho(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)go(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)go(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)Iv(t,o.multipleOf);if(o.format!==void 0){if(t.format??(t.format=o.format),o.format.includes("int"))t.isInt=!0}if(o.mime)Rv(t,o.mime);for(let s of o.patterns??[])Av(t,s);return t}var $L={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},TL=new Map([[Sp,Wb],[Ya,Vb]]),zv=(e)=>TL.get(e)??e,Bp=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=ut(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=$L[a]??a,o.format==="")delete o.format;if(a==="time"||l)delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let d=[...c].map(zv);if(d.length===1)o.pattern=d[0].source;else if(d.length>1)o.allOf=[...d.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},Kp=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=ut(e);o.type=l?"integer":"number";let d=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(d)if(m)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(f)if(m)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let h=new Set;for(let b of a)if(Number.isFinite(b)&&b!==0)h.add(Math.abs(b));else Ve(e,t,o,n,`A multipleOf divisor of ${b} cannot be represented in JSON Schema`);let[g,...y]=h;if(g!==void 0)o.multipleOf=g;if(y.length)o.allOf=[...o.allOf??[],...y.map((b)=>({multipleOf:b}))]}},Hp=(e,t,r,n)=>{r.type="boolean"},Nv=(e,t,r,n)=>{Ve(e,t,r,n,"BigInt cannot be represented in JSON Schema")},Lv=(e,t,r,n)=>{Ve(e,t,r,n,"Symbols cannot be represented in JSON Schema")},Gp=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},jv=(e,t,r,n)=>{Ve(e,t,r,n,"Undefined cannot be represented in JSON Schema")},Dv=(e,t,r,n)=>{Ve(e,t,r,n,"Void cannot be represented in JSON Schema")},Jp=(e,t,r,n)=>{r.not={}},Yp=(e,t,r,n)=>{},Xp=(e,t,r,n)=>{},Mv=(e,t,r,n)=>{Ve(e,t,r,n,"Date cannot be represented in JSON Schema")},Qp=(e,t,r,n)=>{let o=e._zod.def,s=Ps(o.entries);if(s.length===0){r.not={};return}if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";r.enum=s},ef=(e,t,r,n)=>{let o=e._zod.def;if(o.values.length===0){r.not={};return}let s=[];for(let i of o.values)if(i===void 0){if(Ve(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(Ve(e,t,r,n,"BigInt literals cannot be represented in JSON Schema"))return;s.push(Number(i))}else s.push(i);if(s.length===0);else if(s.length===1){let i=s[0];if(r.type=i===null?"null":typeof i,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[i];else r.const=i}else{if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";if(s.every((i)=>typeof i==="boolean"))r.type="boolean";if(s.every((i)=>i===null))r.type="null";r.enum=s}},qv=(e,t,r,n)=>{Ve(e,t,r,n,"NaN cannot be represented in JSON Schema")},tf=(e,t,r,n)=>{let o=r,s=e._zod.pattern;if(!s)throw Error("Pattern not found in template literal");o.type="string",o.pattern=s.source},Fv=(e,t,r,n)=>{let o=r;o.type="string",o.format="binary",o.contentEncoding="binary";let{minimum:s,maximum:i,mime:a}=ut(e);if(s!==void 0)o.minLength=s;if(i!==void 0)o.maxLength=i;if(!a)return;if(a.length===0)o.not={};else if(a.length===1)o.contentMediaType=a[0];else o.anyOf=a.map((c)=>({contentMediaType:c}))},Uv=(e,t,r,n)=>{r.type="boolean"},rf=(e,t,r,n)=>{Ve(e,t,r,n,"Custom types cannot be represented in JSON Schema")},Wv=(e,t,r,n)=>{Ve(e,t,r,n,"Function types cannot be represented in JSON Schema")},nf=(e,t,r,n)=>{Ve(e,t,r,n,"Transforms cannot be represented in JSON Schema")},Vv=(e,t,r,n)=>{Ve(e,t,r,n,"Map cannot be represented in JSON Schema")},Zv=(e,t,r,n)=>{Ve(e,t,r,n,"Set cannot be represented in JSON Schema")},of=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=ut(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=Se(s.element,t,{...n,path:[...n.path,"items"]})};function Vs(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return Vs(t.out);if(t.type==="catch")return Vs(t.innerType);return e._zod.optin}var sf=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Ve(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)_t(o.properties,u,Se(i[u],t,{...n,path:[...n.path,"properties",u]}));let c=[];for(let u of Object.keys(i)){let l=s.shape[u];if(t.io==="input"?Vs(l)===void 0:l._zod.optout===void 0)c.push(u)}if(c.length>0)o.required=c;if(s.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!s.catchall){if(t.io==="output")o.additionalProperties=!1}else if(s.catchall)o.additionalProperties=Se(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},af=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>Se(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},cf=(e,t,r,n)=>{let o=e._zod.def,s=Se(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=Se(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c,t.intersections.push(c)},uf=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="array";let i=t.target==="draft-2020-12"?"prefixItems":"items",a=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((g,y)=>Se(g,t,{...n,path:[...n.path,i,y]})),u=s.rest?Se(s.rest,t,{...n,path:[...n.path,a,...t.target==="openapi-3.0"?[s.items.length]:[]]}):null,l=s.items.length;while(l>0){let g=s.items[l-1];if(!(t.io==="input"?Vs(g)!==void 0:g._zod.optout==="optional"))break;l--}let d=s.items.length,f=!s.rest;if(t.target==="draft-2020-12"){if(o.prefixItems=c,f)o.items=!1;else if(u)o.items=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(l>0)o.minItems=l;if(f)o.maxItems=d}else{if(o.items=c,f)o.additionalItems=!1;else if(u)o.additionalItems=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}let{minimum:m,maximum:h}=ut(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function Vp(e,t,r){if(t.$ref){if(r.has(t))return t;r.add(t);let h=e.get(t)?.def;if(!h)return t;let g=Vp(e,h,r);return g===h?t:g}for(let h of["anyOf","oneOf"]){let g=t[h];if(!Array.isArray(g))continue;let y=g.map((b)=>Vp(e,b,r));if(y.some((b,T)=>b!==g[T]))t={...t,[h]:y}}let n=Array.isArray(t.type)?t.type:[t.type],o=!n.includes("string")&&n.some((h)=>h==="number"||h==="integer"),s=t.enum??(t.const!==void 0?[t.const]:void 0);if(!o&&!s?.some((h)=>typeof h==="number"))return t;let{minimum:i,maximum:a,exclusiveMinimum:c,exclusiveMaximum:u,multipleOf:l,format:d,id:f,...m}=t;if(m.enum)m.enum=m.enum.map((h)=>typeof h==="number"?String(h):h);else if(typeof m.const==="number")m.const=String(m.const);if(!o)return m;if(m.type="string",!s)m.pattern=(n.includes("number")?po:Za).source;return m}var Zp=new WeakMap;function EL(e){let t=new Map;for(let n of e.seen.values())if(n.def&&!t.has(n.schema))t.set(n.schema,n);let r=new Map;for(let n of Zp.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=Vp(t,s,new Set);if(i!==s)r.set(s,i)}if(!r.size)return;for(let n of e.seen.values())for(let o of[n.schema,n.def]){let s=o&&r.get(o.propertyNames);if(s)o.propertyNames=s}}var lf=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=ut(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=Se(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of a)_t(o.patternProperties,zv(d).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=Se(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=Zp.get(t);if(!l)l=[],Zp.set(t,l),t.deferred.push(()=>EL(t));l.push(e)}o.additionalProperties=Se(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&Vs(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((d)=>typeof d==="string"||typeof d==="number");if(l.length>0)o.required=l.map(String)}},df=(e,t,r,n)=>{let o=e._zod.def,s=Se(o.innerType,t,n),i=t.seen.get(e);if(t.target==="openapi-3.0")i.ref=o.innerType,r.nullable=!0;else r.anyOf=[s,{type:"null"}]},pf=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},ff=Symbol();function Bv(e,t,r,n,o){let s=!1,i=JSON.stringify(e,(a,c)=>{if(typeof c!=="bigint")return c;return s=!0,null});if(!s)return JSON.parse(i);return Ve(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),ff}var mf=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=Bv(o.defaultValue,e,t,r,n);if(i!==ff)r.default=i},hf=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=Bv(o.defaultValue,e,t,r,n);if(i!==ff)r._prefault=i},gf=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{Ve(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},yf=(e,t,r,n)=>{let o=e._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=t.io==="input"?s?o.out:o.in:o.out;Se(i,t,n);let a=t.seen.get(e);a.ref=i},wf=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0},Kv=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},dc=(e,t,r,n)=>{let o=e._zod.def;Se(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},bf=(e,t,r,n)=>{let o=e._zod.innerType;Se(o,t,n);let s=t.seen.get(e);s.ref=o},Ov={string:Bp,number:Kp,boolean:Hp,bigint:Nv,symbol:Lv,null:Gp,undefined:jv,void:Dv,never:Jp,any:Yp,unknown:Xp,date:Mv,enum:Qp,literal:ef,nan:qv,template_literal:tf,file:Fv,success:Uv,custom:rf,function:Wv,transform:nf,map:Vv,set:Zv,array:of,object:sf,union:af,intersection:cf,tuple:uf,record:lf,nullable:df,nonoptional:pf,default:mf,prefault:hf,catch:gf,pipe:yf,readonly:wf,promise:Kv,optional:dc,lazy:bf};function Hv(e,t){if("_idmap"in e){let n=e,o=Fs({...t,processors:Ov}),s={};for(let c of n._idmap.entries()){let[u,l]=c;Se(l,o)}let i={},a={registry:n,uri:t?.uri,defs:s};o.external=a;for(let c of n._idmap.entries()){let[u,l]=c;Us(o,l),_t(i,u,Ws(o,l))}if(Object.keys(s).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";i.__shared={[c]:s}}return{schemas:i}}let r=Fs({...t,processors:Ov});return Se(e,r),Us(r,e),Ws(r,e)}var Gv=new WeakSet([Object.prototype,Error.prototype]);function pc(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let n=r(this);return Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0})}})}var LL=(e,t)=>{yb.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(Gv.has(r))return;Gv.add(r),pc(r,"format",(n)=>(o)=>lp(n,o)),pc(r,"flatten",(n)=>(o)=>up(n,o)),pc(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,Os,2)}),pc(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,Os,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var vt=O("ZodError",LL,void 0,{Parent:Error});var Jv=qa(vt),Yv=Fa(vt),Xv=Cs(vt),Qv=Ua(vt),ek=_b(vt),tk=Sb(vt),rk=vb(vt),nk=kb(vt),ok=xb(vt),sk=$b(vt),ik=Tb(vt),ak=Eb(vt);function DL(){if(!nt.localeError)ct(Op())}function Zs(){if(!nt.memoizer)ct({memoizer:Pp()})}var ye=O("ZodType",(e,t)=>(DL(),me.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(St(t,{checks:[...t.checks??[],...e.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Bt(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Ij(e,t))},superRefine(e,t){return this.check(Aj(e,t))},overwrite(e){return this.check(Zr(e))},optional(){return Te(this)},exactOptional(){return hj(this)},nullable(){return uk(this)},nullish(){return Te(uk(this))},nonoptional(e){return Sj(this,e)},array(){return v(this)},or(e){return ee([this,e])},and(e){return hc(this,e)},transform(e){return lk(this,yk(e))},default(e){return wj(this,e)},prefault(e){return _j(this,e)},catch(e){return kj(this,e)},pipe(e){return lk(this,e)},readonly(){return Tj(this)},describe(e){let t=this.clone();return Vr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Vr.get(this);let t=this.clone();return Vr.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get "~standard"(){return Da(this,"~standard",{..._p(this),jsonSchema:{input:qs(this,"input"),output:qs(this,"output")}})},set "~standard"(e){Er(this,"~standard",e)},parse:function e(t,r){return Jv(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await Yv(this,t,r,{callee:e})},safeParse(e,t){return Xv(this,e,t)},async safeParseAsync(e,t){return Qv(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){Er(this,"spa",e)},validate(e,t){return Wa(this,e,t)},validateAsync(e,t){return Va(this,e,t)},encode:function e(t,r){return ek(this,t,r,{callee:e})},decode:function e(t,r){return tk(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await rk(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await nk(this,t,r,{callee:e})},safeEncode(e,t){return ok(this,e,t)},safeDecode(e,t){return sk(this,e,t)},async safeEncodeAsync(e,t){return ik(this,e,t)},async safeDecodeAsync(e,t){return ak(this,e,t)},toJSONSchema(e){return xv(this,{})(e)},get description(){return Vr.get(this)?.description},get _def(){return this._zod.def}}),dk=O("_ZodString",(e,t)=>{Ja.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bp(e,r,n,o)},db({format:(e)=>ut(e).format??null,minLength:(e)=>ut(e).minimum??null,maxLength:(e)=>ut(e).maximum??null},{regex(...e){return this.check(Rp(...e))},includes(...e){return this.check(Np(...e))},startsWith(...e){return this.check(Lp(...e))},endsWith(...e){return this.check(jp(...e))},min(...e){return this.check(mo(...e))},max(...e){return this.check(uc(...e))},length(...e){return this.check(lc(...e))},nonempty(...e){return this.check(mo(1,...e))},lowercase(e){return this.check(Cp(e))},uppercase(e){return this.check(zp(e))},trim(){return this.check(Mp())},normalize(...e){return this.check(Dp(...e))},toLowerCase(){return this.check(qp())},toUpperCase(){return this.check(Fp())},slugify(){return this.check(Up())}})),pk=O("ZodString",(e,t)=>{Ja.init(e,t),dk.init(e,t)},{email(e){return this.check(qS(ML,e))},url(e){return this.check(Ap(fk,e))},jwt(e){return this.check(iv(tj,e))},emoji(e){return this.check(BS(FL,e))},guid(e){return this.check(FS(qL,e))},uuid(e){return this.check(US(fc,e))},uuidv4(e){return this.check(WS(fc,e))},uuidv6(e){return this.check(VS(fc,e))},uuidv7(e){return this.check(ZS(fc,e))},nanoid(e){return this.check(KS(UL,e))},cuid(e){return this.check(HS(WL,e))},cuid2(e){return this.check(GS(VL,e))},ulid(e){return this.check(JS(ZL,e))},base64(e){return this.check(nv(XL,e))},base64url(e){return this.check(ov(QL,e))},xid(e){return this.check(YS(BL,e))},ksuid(e){return this.check(XS(KL,e))},ipv4(e){return this.check(QS(HL,e))},ipv6(e){return this.check(ev(GL,e))},cidrv4(e){return this.check(tv(JL,e))},cidrv6(e){return this.check(rv(YL,e))},e164(e){return this.check(sv(ej,e))},datetime(e){return this.check(rc(Bs,e))},date(e){return this.check(nc(Ks,e))},time(e){return this.check(oc(Hs,e))},duration(e){return this.check(sc(Gs,e))}});function p(e){return MS(pk,e)}var Oe=O("ZodStringFormat",(e,t)=>{xe.init(e,t),dk.init(e,t)}),Bs=O("ZodISODateTime",(e,t)=>{V_.init(e,t),Oe.init(e,t)}),Ks=O("ZodISODate",(e,t)=>{Z_.init(e,t),Oe.init(e,t)}),Hs=O("ZodISOTime",(e,t)=>{B_.init(e,t),Oe.init(e,t)}),Gs=O("ZodISODuration",(e,t)=>{K_.init(e,t),Oe.init(e,t)}),ML=O("ZodEmail",(e,t)=>{C_.init(e,t),Oe.init(e,t)});var qL=O("ZodGUID",(e,t)=>{A_.init(e,t),Oe.init(e,t)});var fc=O("ZodUUID",(e,t)=>{R_.init(e,t),Oe.init(e,t)});var fk=O("ZodURL",(e,t)=>{L_.init(e,t),Oe.init(e,t)});function Js(e){return Ap(fk,e)}var FL=O("ZodEmoji",(e,t)=>{j_.init(e,t),Oe.init(e,t)});var UL=O("ZodNanoID",(e,t)=>{D_.init(e,t),Oe.init(e,t)});var WL=O("ZodCUID",(e,t)=>{M_.init(e,t),Oe.init(e,t)});var VL=O("ZodCUID2",(e,t)=>{q_.init(e,t),Oe.init(e,t)});var ZL=O("ZodULID",(e,t)=>{F_.init(e,t),Oe.init(e,t)});var BL=O("ZodXID",(e,t)=>{U_.init(e,t),Oe.init(e,t)});var KL=O("ZodKSUID",(e,t)=>{W_.init(e,t),Oe.init(e,t)});var HL=O("ZodIPv4",(e,t)=>{H_.init(e,t),Oe.init(e,t)});var GL=O("ZodIPv6",(e,t)=>{J_.init(e,t),Oe.init(e,t)});var JL=O("ZodCIDRv4",(e,t)=>{Y_.init(e,t),Oe.init(e,t)});var YL=O("ZodCIDRv6",(e,t)=>{X_.init(e,t),Oe.init(e,t)});var XL=O("ZodBase64",(e,t)=>{eS.init(e,t),Oe.init(e,t)});var QL=O("ZodBase64URL",(e,t)=>{tS.init(e,t),Oe.init(e,t)});var ej=O("ZodE164",(e,t)=>{rS.init(e,t),Oe.init(e,t)});var tj=O("ZodJWT",(e,t)=>{nS.init(e,t),Oe.init(e,t)});var mc=O("ZodNumber",(e,t)=>{vp.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Kp(e,r,n,o),e.isFinite=!0},db({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=ut(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=ut(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=ut(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>ut(e).format??null},{gt(e,t){return this.check(ac(e,t))},gte(e,t){return this.check(Ds(e,t))},min(e,t){return this.check(Ds(e,t))},lt(e,t){return this.check(ic(e,t))},lte(e,t){return this.check(js(e,t))},max(e,t){return this.check(js(e,t))},int(e){return this.check(ck(e))},safe(e){return this.check(ck(e))},positive(e){return this.check(ac(0,e))},nonnegative(e){return this.check(Ds(0,e))},negative(e){return this.check(ic(0,e))},nonpositive(e){return this.check(js(0,e))},multipleOf(e,t){return this.check(cc(e,t))},step(e,t){return this.check(cc(e,t))},finite(){return this}}));function P(e){return av(mc,e)}var rj=O("ZodNumberFormat",(e,t)=>{oS.init(e,t),mc.init(e,t)});function ck(e){return uv(rj,e)}var mk=O("ZodBoolean",(e,t)=>{sS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Hp(e,r,n,o)});function L(e){return lv(mk,e)}var nj=O("ZodNull",(e,t)=>{iS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Gp(e,r,n,o)});function wo(e){return dv(nj,e)}var oj=O("ZodAny",(e,t)=>{aS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Yp(e,r,n,o)});function hk(){return pv(oj)}var sj=O("ZodUnknown",(e,t)=>{cS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Xp(e,r,n,o)});function ne(){return fv(sj)}var ij=O("ZodNever",(e,t)=>{uS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Jp(e,r,n,o)});function aj(e){return mv(ij,e)}var cj=O("ZodArray",(e,t)=>{Zs(),lS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>of(e,r,n,o),e.element=t.element},{min(e,t){return this.check(mo(e,t))},nonempty(e){return this.check(mo(1,e))},max(e,t){return this.check(uc(e,t))},length(e,t){return this.check(lc(e,t))},unwrap(){return this.element}});function v(e,t){return hv(cj,e,t)}var vf=O("ZodObject",(e,t)=>{Zs(),fS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>sf(e,r,n,o),UN(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(St(this._zod.def,{catchall:e}))},passthrough(){return this.clone(St(this._zod.def,{catchall:ne()}))},loose(){return this.clone(St(this._zod.def,{catchall:ne()}))},strict(){return this.clone(St(this._zod.def,{catchall:aj()}))},strip(){return this.clone(St(this._zod.def,{catchall:void 0}))},extend(e){return zN(this,e)},safeExtend(e){return NN(this,e)},merge(e){return LN(this,e)},pick(e){return RN(this,e)},omit(e){return CN(this,e)},partial(...e){return ab(xf,this,e[0])},exactPartial(...e){return ab(wk,this,e[0],"exactPartial")},required(...e){return jN(bk,this,e[0])}});function w(e,t){let r={type:"object",shape:e??{},...U(t)};return new vf(r)}function fe(e,t){return new vf({type:"object",shape:e,catchall:ne(),...U(t)})}var gk=O("ZodUnion",(e,t)=>{kp.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>af(e,r,n,o),e.options=t.options});function ee(e,t){return new gk({type:"union",options:e,...U(t)})}var uj=O("ZodDiscriminatedUnion",(e,t)=>{gk.init(e,t),mS.init(e,t)});function At(e,t,r){return new uj({type:"union",options:t,discriminator:e,...U(r)})}var lj=O("ZodIntersection",(e,t)=>{hS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>cf(e,r,n,o)});function hc(e,t){return new lj({type:"intersection",left:e,right:t})}var dj=O("ZodTuple",(e,t)=>{Zs(),gS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uf(e,r,n,o)},{rest(e){return this.clone({...this._zod.def,rest:e})},partial(){let e=this._zod.def;if(e.checks?.length)throw Error(".partial() cannot be used on tuple schemas containing refinements");return this.clone({...e,items:e.items.map((t)=>new xf({type:"optional",innerType:t}))})}});function pj(e,t,r){let n=t instanceof me,o=n?r:t;return new dj({type:"tuple",items:e,rest:n?t:null,...U(o)})}var _f=O("ZodRecord",(e,t)=>{Zs(),yS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lf(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function K(e,t,r){if(!t||!t._zod)return new _f({type:"record",keyType:p(),valueType:e,...U(t)});return new _f({type:"record",keyType:e,valueType:t,...U(r)})}function kf(e,t,r){return new _f({type:"record",keyType:e,valueType:t,...U(r),partial:!0})}var Sf=O("ZodEnum",(e,t)=>{wS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Qp(e,n,o,s),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=t.entries[i];else throw Error(`Key ${i} not found in enum`);return new Sf({...t,checks:[],...U(o),entries:s})},e.exclude=(n,o)=>{let s={...t.entries};for(let i of n)if(r.has(i))delete s[i];else throw Error(`Key ${i} not found in enum`);return new Sf({...t,checks:[],...U(o),entries:s})}});function z(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Sf({type:"enum",entries:r,...U(t)})}var fj=O("ZodLiteral",(e,t)=>{bS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ef(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function C(e,t){return new fj({type:"literal",values:Array.isArray(e)?e:[e],...U(t)})}var mj=O("ZodTransform",(e,t)=>{Zs(),_S.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>nf(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Rs(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(Nn(s,r.value,t));else{let i=s;if(i.fatal)i.continue=!1;if(i.code??(i.code="custom"),!("input"in i))i.input=r.value;i.inst??(i.inst=e),r.issues.push(Nn(i))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((s)=>(r.value=s,r));return r.value=o,r}});function yk(e){return new mj({type:"transform",transform:e})}var xf=O("ZodOptional",(e,t)=>{xp.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>dc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Te(e){return new xf({type:"optional",innerType:e})}var wk=O("ZodExactOptional",(e,t)=>{SS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>dc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function hj(e){return new wk({type:"optional",innerType:e})}var gj=O("ZodNullable",(e,t)=>{vS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>df(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function uk(e){return new gj({type:"nullable",innerType:e})}var yj=O("ZodDefault",(e,t)=>{kS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function wj(e,t){return new yj({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():tp(t)}})}var bj=O("ZodPrefault",(e,t)=>{xS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function _j(e,t){return new bj({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():tp(t)}})}var bk=O("ZodNonOptional",(e,t)=>{$S.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Sj(e,t){return new bk({type:"nonoptional",innerType:e,...U(t)})}var vj=O("ZodCatch",(e,t)=>{TS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function kj(e,t){return new vj({type:"catch",innerType:e,catchValue:typeof t==="function"?t:pb(t)})}var _k=O("ZodPipe",(e,t)=>{$p.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>yf(e,r,n,o),e.in=t.in,e.out=t.out});function lk(e,t){return new _k({type:"pipe",in:e,out:t})}var xj=O("ZodPreprocess",(e,t)=>{_k.init(e,t),ES.init(e,t)}),$j=O("ZodReadonly",(e,t)=>{PS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Tj(e){return new $j({type:"readonly",innerType:e})}var Ej=O("ZodTemplateLiteral",(e,t)=>{OS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tf(e,r,n,o)});function Pj(e,t){return new Ej({type:"template_literal",parts:e,...U(t)})}var Oj=O("ZodLazy",(e,t)=>{IS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bf(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function $f(e){return new Oj({type:"lazy",getter:e})}var Sk=O("ZodCustom",(e,t)=>{AS.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rf(e,r,n,o)});function gc(e,t){return gv(Sk,e??(()=>!0),t)}function Ij(e,t={}){return yv(Sk,e,t)}function Aj(e,t){return wv(e,t)}function Rt(e){let t=$f(()=>ee([p(e),P(),L(),wo(),v(t),K(p(),t)]));return t}function yc(e,t){return new xj({type:"pipe",in:yk(e),out:t})}var kk={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};var vk;(function(e){})(vk||(vk={}));function xk(e){return rc(Bs,e)}function Cj(e){return nc(Ks,e)}function zj(e){return oc(Hs,e)}function Nj(e){return sc(Gs,e)}function Lj(e){return cv(mc,e)}var Tk={name:"@tripwire-sh/cli",version:"0.1.9",description:"Set up Tripwire in your coding agents and manage it from the terminal",type:"module",imports:{"#/*":"./src/*"},license:"MIT",repository:{type:"git",url:"git+https://github.com/Boring-Software-Inc/v2.git",directory:"apps/cli"},homepage:"https://tripwire.sh",bin:{tripwire:"dist/tripwire.js"},files:["dist"],engines:{node:">=20.12"},publishConfig:{access:"public"},scripts:{build:"bun build src/index.ts --target node --format esm --minify --outfile dist/tripwire.js",typecheck:"tsc --noEmit"},devDependencies:{"@clack/prompts":"^1.7.0","@modelcontextprotocol/sdk":"^1.32.1","@tripwire/contracts":"workspace:*",commander:"^14.0.3","jsonc-parser":"^3.3.1",picocolors:"^1.1.1",yaml:"^2.9.0",zod:"^4.0.0"}};var wc=Tk.version,q="tripwire",Ys="tripwire-get-started",Ek="tripwire-workflows",Xs="tripwire-cli",Dj="https://mcp.tripwire.sh/mcp",Mj="https://app.tripwire.sh/api/auth",Pk="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function bo(e){return e.TRIPWIRE_MCP_URL||Dj}function Ok(e){return(e.TRIPWIRE_AUTH_URL||Mj).replace(/\/+$/,"")}var qj="urn:ietf:params:oauth:grant-type:device_code",Fj=w({device_code:p(),user_code:p(),verification_uri:p(),verification_uri_complete:p().optional(),expires_in:P(),interval:P().optional()}),Ak=w({access_token:p().min(1),refresh_token:p().min(1).optional(),expires_in:P().optional(),token_type:p().optional()}),Ef=w({error:p(),error_description:p().optional()});class Tf extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class Qs extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var Rk={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function bc(e,t,r){let n=await e.fetch(t,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded",accept:"application/json"},body:new URLSearchParams(r).toString()}),o=await n.text(),s={error:"invalid_response",error_description:o.slice(0,200)};try{let i=Rt().safeParse(JSON.parse(o));return{status:n.status,body:i.success?i.data:s,headers:n.headers}}catch{return{status:n.status,body:s,headers:n.headers}}}function Ck(e,t){let r=Ef.safeParse(e);if(!r.success)return Error(t);return Error(r.data.error_description?`${r.data.error}: ${r.data.error_description}`:r.data.error)}async function zk(e,t,r){let{status:n,body:o}=await bc(e,`${t}/device/code`,{client_id:Xs,scope:Pk,resource:r}),s=Fj.safeParse(o);if(n>=400||!s.success)throw Ck(o,`Device authorization failed (HTTP ${n})`);return s.data}function Nk(e,t,r,n,o){let s=t.refresh_token??o;return{accessToken:t.access_token,refreshToken:s,expiresAt:t.expires_in?e.now()+t.expires_in*1000:void 0,mcpUrl:n,authUrl:r}}var Ik=5000;function Uj(e,t){let r=(e.get("retry-after")??e.get("x-retry-after"))?.trim();if(!r)return null;if(/^\d+$/.test(r))return Number(r)*1000;let n=Date.parse(r);return Number.isNaN(n)?null:Math.max(0,n-t)}async function Lk(e,t,r,n){let o=(n.interval??5)*1000,s=null,i=e.now()+n.expires_in*1000;while(e.now()<i){await e.sleep(Math.min(Math.max(o,s??0),i-e.now())),s=null;let{status:a,body:c,headers:u}=await bc(e,`${t}/oauth2/token`,{grant_type:qj,device_code:n.device_code,client_id:Xs,resource:r}),l=Ak.safeParse(c);if(a<400&&l.success)return Nk(e,l.data,t,r);if(a===429){if(s=Uj(u,e.now()),s===null)o+=Ik;continue}let d=Ef.safeParse(c),f=d.success?d.data.error:"";if(f==="authorization_pending")continue;if(f==="slow_down"){o+=Ik;continue}if(f==="access_denied")throw Error("Sign-in was denied in the browser");if(f==="expired_token")throw Error("The code expired. Run tripwire login again.");throw Ck(c,`Token request failed (HTTP ${a})`)}throw Error("The code expired. Run tripwire login again.")}async function jk(e,t){if(!t.refreshToken)throw new Tf;let{status:r,body:n}=await bc(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:Xs,resource:t.mcpUrl}).catch(()=>{throw new Qs}),o=Ak.safeParse(n);if(r>=400||!o.success){let s=Ef.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new Tf:new Qs}return Nk(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function Dk(e,t){let r=t.refreshToken??t.accessToken;await bc(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:Xs}).catch(()=>{return})}import{stripVTControlCharacters as KF}from"node:util";var Wj=z(["pending","approved","rejected"]),Mie=Wj.options;var ei=[{id:"github",label:"GitHub",status:"live",signIn:"social",reviews:!0},{id:"opengit",label:"OpenGit",status:"live",paused:!0},{id:"gitlab",label:"GitLab",status:"planned"},{id:"origin",label:"ORIGIN",status:"planned"}];function Mk(e){return e.status==="live"}var ti=z(ei.filter(Mk).map((e)=>e.id)),Uie=ei.filter((e)=>Mk(e)&&!("paused"in e)).map((e)=>e.label),Wie=ei.filter((e)=>e.status==="planned").map((e)=>e.label),Vie=ei.filter((e)=>("signIn"in e)).map((e)=>e.id);var Vj=Object.fromEntries(ei.map((e)=>[e.id,e]));var _c=w({owner:p(),name:p(),fullName:p()}),Zj=w({id:p(),login:p(),name:p(),type:z(["Organization","User"]),avatarUrl:p(),repoAccess:z(["all","selected"]),repoCount:P(),installedAt:de.datetime()}),Bj=w({id:p(),owner:p(),name:p(),fullName:p(),private:L(),pushedAt:de.datetime(),openFlags:P(),stars:P()}),Kie=w({accounts:v(Zj),repos:v(Bj)});var ri=z(["change-request.opened","change-request.updated","change-request.closed","comment.created","push","schedule.matched","installation.created","installation.deleted","installation-repositories.added","installation-repositories.removed"]),qk=w({login:p(),externalId:p(),avatarUrl:p().optional()}),Pf=w({number:P().int(),title:p(),headSha:p(),baseRef:p().optional(),headRef:p().optional(),draft:L().optional(),url:p()}),Kj=w({externalId:p(),body:p(),url:p(),subjectNumber:P().int(),byTripwire:L().optional()}),Hj=w({ref:p(),headSha:p(),commitCount:P().int(),url:p().optional()}),vc=z(["issue","change-request"]),Gj=w({kind:vc,number:P().int(),title:p(),url:p(),state:z(["open","closed"]),author:p(),labels:v(p()),locked:L(),updatedAt:de.datetime()}),Jj=w({workflowId:p(),nodeId:p(),tickId:p()}),_o={id:p(),forge:ti,deliveryId:p(),repo:_c,repoExternalId:p().optional(),installationExternalId:p().optional(),actor:qk,occurredAt:de.datetime(),receivedAt:de.datetime()},Sc={id:p(),forge:ti,deliveryId:p(),actor:qk,occurredAt:de.datetime(),receivedAt:de.datetime(),installation:w({externalId:p(),account:p(),accountType:z(["User","Organization"]).optional()}),repositories:v(w({externalId:p(),owner:p(),name:p(),fullName:p(),private:L()}))},Fk=At("kind",[w({..._o,kind:C("change-request.opened"),changeRequest:Pf}),w({..._o,kind:C("change-request.updated"),changeRequest:Pf}),w({..._o,kind:C("change-request.closed"),changeRequest:Pf}),w({..._o,kind:C("comment.created"),comment:Kj}),w({..._o,kind:C("push"),push:Hj}),w({..._o,kind:C("schedule.matched"),schedule:Jj,thread:Gj}),w({...Sc,kind:C("installation.created")}),w({...Sc,kind:C("installation.deleted")}),w({...Sc,kind:C("installation-repositories.added")}),w({...Sc,kind:C("installation-repositories.removed")})]),Yj=ri.extract(["change-request.opened","change-request.updated","change-request.closed"]),Xie=Yj.options;var Xj=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],Qj=["sun","mon","tue","wed","thu","fri","sat"],eD=[{name:"minute",range:"0 to 59",min:0,max:59},{name:"hour",range:"0 to 23",min:0,max:23},{name:"day of month",range:"1 to 31",min:1,max:31},{name:"month",range:"1 to 12 or jan to dec",min:1,max:12,names:Xj,nameBase:1},{name:"day of week",range:"0 to 7 or sun to sat",min:0,max:7,names:Qj,nameBase:0}];function Of(e,t){let r=e.toLowerCase(),n=t.names?.indexOf(r)??-1;if(n>=0)return n+(t.nameBase??0);if(!/^\d+$/.test(e))return null;let o=Number(e);return o>=t.min&&o<=t.max?o:null}function tD(e,t){let r=new Set;for(let n of e.split(",")){let o=n.split("/"),[s="",i]=o;if(o.length>2||s.split("-").length>2)return{ok:!1,error:`${t.name} must be a number, a range like 1-5 or a step like */15`};let a=i===void 0?1:Number(i);if(!(Number.isInteger(a)&&a>=1))return{ok:!1,error:`${t.name} step must be a whole number of 1 or more, like */15`};let c,u;if(s==="*")c=t.min,u=t.max;else if(s.includes("-")){let[l="",d=""]=s.split("-");c=Of(l,t),u=Of(d,t)}else c=Of(s,t),u=i===void 0?c:t.max;if(c===null||u===null)return{ok:!1,error:`${t.name} must be ${t.range}`};if(c>u)return{ok:!1,error:`${t.name} range must go from low to high, like 1-5`};for(let l=c;l<=u;l+=a)r.add(l)}return{ok:!0,values:[...r].sort((n,o)=>n-o)}}function Ln(e){let t=e.trim().split(/\s+/);if(t.length!==5)return{ok:!1,error:"use five fields: minute hour day month weekday"};let r=[];for(let[u,l]of eD.entries()){let d=tD(t[u]??"",l);if(!d.ok)return d;r.push(d.values)}let[n=[],o=[],s=[],i=[],a=[]]=r,c=[...new Set(a.map((u)=>u===7?0:u))].sort((u,l)=>u-l);return{ok:!0,spec:{minutes:n,hours:o,days:s,months:i,weekdays:c,daysRestricted:!(t[2]??"*").startsWith("*"),weekdaysRestricted:!(t[4]??"*").startsWith("*")}}}function ni(e){try{return new Intl.DateTimeFormat("en-US",{timeZone:e}),!0}catch{return!1}}var Uk=new Map;function rD(e){let t=Uk.get(e);if(t)return t;let r=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return Uk.set(e,r),r}function Rf(e,t){let r=rD(t).formatToParts(e),n=(o)=>Number(r.find((s)=>s.type===o)?.value??"0");return{year:n("year"),month:n("month"),day:n("day"),hour:n("hour"),minute:n("minute")}}function If(e,t){let r=Rf(new Date(e),t),n=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute),o=e-(e%60000+60000)%60000;return n-o}function Wk(e,t){let r=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute),n=[r-If(r-129600000,t),r-If(r+129600000,t),r-If(r,t)].sort((o,s)=>o-s);for(let o of n){let s=Rf(new Date(o),t);if(s.year===e.year&&s.month===e.month&&s.day===e.day&&s.hour===e.hour&&s.minute===e.minute)return new Date(o)}return null}function kc(e,t,r){let n=e.days.includes(t),o=e.weekdays.includes(r);if(e.daysRestricted&&e.weekdaysRestricted)return n||o;return n&&o}function nD(e,t){return kc(e,t.getUTCDate(),t.getUTCDay())}var oD=Array.from({length:217},(e,t)=>({day:t%31+1,weekday:Math.floor(t/31)}));function Af(e){let t=oD.map(({day:r,weekday:n})=>kc(e,r,n)?"1":"0").join("");return[e.minutes,e.hours,e.months].map((r)=>r.join(",")).concat(t).join(" ")}function Vk(e,t){let r=Ln(e),n=Ln(t);return r.ok&&n.ok&&Af(r.spec)===Af(n.spec)}var sD=1830,iD=180;function aD(e,t){let r=Wk(e,t);if(r)return r;let n=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute);for(let o=1;o<=iD;o++){let s=new Date(n+o*60000),i=Wk({year:s.getUTCFullYear(),month:s.getUTCMonth()+1,day:s.getUTCDate(),hour:s.getUTCHours(),minute:s.getUTCMinutes()},t);if(i)return i}return null}function Zk(e){let{minutes:t,hours:r}=e,n=t.slice(1).map((s,i)=>s-(t[i]??0));if(r.some((s)=>r.includes((s+1)%24)))n.push(60-(t.at(-1)??0)+(t[0]??0));return n.length>0?Math.min(...n):1440}function Cf(e,t,r){let n=Rf(r,t),o=new Date(Date.UTC(n.year,n.month-1,n.day));for(let s=0;s<=sD;s++){if(e.months.includes(o.getUTCMonth()+1)&&nD(e,o))for(let i of e.hours)for(let a of e.minutes){let c=aD({year:o.getUTCFullYear(),month:o.getUTCMonth()+1,day:o.getUTCDate(),hour:i,minute:a},t);if(c&&c.getTime()>r.getTime())return c}o.setUTCDate(o.getUTCDate()+1)}return null}var Ct=5,Ie=$f(()=>ee([p(),P(),L(),wo(),v(Ie),K(p(),Ie)])),Tc=w({x:P(),y:P()}),cD=z(["all-of","any-of","not"]),uD=z(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),lD=["comment"];function Kk(e){return lD.includes(e)}var oae=w({url:Js().meta({secret:!0}).describe("webhook url"),signingSecret:p().min(1).optional().meta({secret:!0}).describe("signing secret")}),sae=w({url:Js().meta({secret:!0}).describe("discord webhook url")}),So=15,Ec=p().regex(/^[A-Za-z0-9](?:[A-Za-z0-9]|-(?=[A-Za-z0-9])){0,38}$/,{error:(e)=>`${String(e.input)} is not a GitHub username`}),zf=p().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),Nf=w({id:P().int().positive().optional(),login:Ec}),iae=w({id:P().int().positive(),login:Ec,avatarUrl:p(),permission:p().min(1)}),aae=w({name:p().min(1),color:p().regex(/^[0-9a-fA-F]{6}$/),description:p().nullable()}),dD=yc((e)=>p().safeParse(e).success?{login:e}:e,Nf);function Hk(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var oi=w({reviewers:v(dD).max(So,`ask at most ${So} people`).default([]),teamReviewers:v(zf).max(So,`ask at most ${So} teams`).default([])}),Gk=oi.superRefine((e,t)=>{let r=e.reviewers.length+e.teamReviewers.length;if(r===0)t.addIssue({code:"custom",message:"add at least one person or team to ask"});if(r>So)t.addIssue({code:"custom",message:`ask at most ${So} people and teams`})}),Kr=w({labels:v(p().trim().min(1)).min(1,"choose at least one label")}),Bk=5000,Pc=w({message:p().trim().min(1,"write a message").max(Bk,`keep it under ${Bk} characters`)}),pD=z(["resolved","off-topic","too heated","spam"]),Jk=w({reason:pD.optional()}),si={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function Lf(e){return e.n*si[e.unit]}var Oc=52*si.weeks,fD=3650*si.days,mD=z(["hours","days","weeks"]),hD=z(["hours","days","weeks","months"]),gD=w({n:P().int().min(1),unit:mD}).refine((e)=>Lf(e)<=Oc,{message:"runs at least once a year"}),or="UTC",Ic=p().min(1).refine(ni,{error:(e)=>`${String(e.input)} is not an IANA timezone, like Europe/Berlin`}),xc=p().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use 24-hour HH:MM, like 07:30"),jf=z(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),yD=At("preset",[w({preset:C("hourly"),minute:P().int().min(0).max(59)}),w({preset:C("daily"),at:xc}),w({preset:C("weekdays"),at:xc}),w({preset:C("weekly"),on:jf,at:xc}),w({preset:C("monthly"),day:P().int().min(1).max(28),at:xc})]),Ac=w({cron:p().trim().superRefine((e,t)=>{let r=Ln(e);if(!r.ok){t.addIssue({code:"custom",message:r.error});return}if(Cf(r.spec,"UTC",new Date(Date.UTC(2026,0,1)))===null)t.addIssue({code:"custom",message:"this cron never runs. Pick a day the month has"});if(Zk(r.spec)<Ct)t.addIssue({code:"custom",message:`runs must be at least ${Ct} minutes apart`})})}),Yk=ee([gD,yD,Ac]),Xk=w({n:P().int().min(1),unit:hD}).refine((e)=>Lf(e)<=fD,{message:"10 years at most"}),Qk=z(["open","closed","any"]),$c=v(p().min(1)),wD=w({subjects:v(vc).min(1),state:Qk,inactiveFor:Xk,labels:$c.optional(),excludeLabels:$c.optional(),skipLocked:L().default(!0)}),vo=w({every:Yk,timezone:Ic.optional(),match:wD}),bD=w({every:Yk.optional(),timezone:Ic.optional(),match:w({subjects:v(vc).optional(),state:Qk.optional(),inactiveFor:Xk.optional(),labels:$c.optional(),excludeLabels:$c.optional(),skipLocked:L().optional()}).default({})});var _D=["every","subjects","state","inactiveFor"];function ex(e){return _D.filter((t)=>{if(!e)return!0;if(t==="every")return e.every===void 0;let r=e.match[t];return Array.isArray(r)?r.length===0:r===void 0})}var Br=p(),SD=w({id:Br,type:C("trigger"),kinds:v(ri).min(1),schedule:bD.optional(),position:Tc.optional()});function Rc(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var vD=w({id:Br,type:C("rule"),ref:p().regex(/^[a-z][a-z0-9-]*@\d+$/),config:Ie,position:Tc.optional()}),kD=w({id:Br,type:C("gate"),mode:cD,position:Tc.optional()}),xD=w({id:Br,type:C("action"),action:uD,params:K(p(),Ie).optional(),position:Tc.optional()}),Df=At("type",[SD,vD,kD,xD]),tx=z(["pass","fail","approve","deny"]),$D=w({id:p(),from:Br,to:Br,when:tx.optional()}),lt=w({id:p(),name:p(),version:P().int().min(1),nodes:v(Df).min(1),edges:v($D)}),rx={id:"default@1",name:"default gate",version:1,nodes:[{id:"trigger",type:"trigger",kinds:["change-request.opened","change-request.updated"]},{id:"account-age",type:"rule",ref:"account-age@1",config:{minDays:7}},{id:"crypto",type:"rule",ref:"crypto-address@1",config:{}},{id:"honeypot",type:"rule",ref:"honeypot@1",config:{paths:[".github/workflows/**"]}},{id:"max-files",type:"rule",ref:"max-files-changed@1",config:{max:200}},{id:"english",type:"rule",ref:"english-only@1",config:{maxNonLatinRatio:0.5}},{id:"gate",type:"gate",mode:"all-of"},{id:"block",type:"action",action:"block"}],edges:[{id:"e1",from:"trigger",to:"account-age"},{id:"e2",from:"trigger",to:"crypto"},{id:"e3",from:"trigger",to:"honeypot"},{id:"e4",from:"trigger",to:"max-files"},{id:"e5",from:"trigger",to:"english"},{id:"e6",from:"account-age",to:"gate"},{id:"e7",from:"crypto",to:"gate"},{id:"e8",from:"honeypot",to:"gate"},{id:"e9",from:"max-files",to:"gate"},{id:"e10",from:"english",to:"gate"},{id:"e11",from:"gate",to:"block",when:"fail"}]};var nx=[{kind:"change-request.opened",name:"Change request opened",description:"Runs when someone opens a change request.",toolbox:!0},{kind:"change-request.updated",name:"Change request updated",description:"Runs when a change request gets new commits or edits.",toolbox:!0},{kind:"change-request.closed",name:"Change request closed",description:"Runs when a change request is closed.",toolbox:!0},{kind:"comment.created",name:"Comment created",description:"Runs when someone comments on a change request or issue.",toolbox:!0},{kind:"push",name:"Push",description:"Runs when commits are pushed to the repo.",toolbox:!0},{kind:"schedule.matched",name:"On a schedule",description:"Runs on a timer for issues and change requests that match.",toolbox:!0},{kind:"installation.created",name:"Installation created",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation.deleted",name:"Installation deleted",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.added",name:"Repos added",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.removed",name:"Repos removed",description:"Internal event. Installations sync outside workflows.",toolbox:!1}],ox=[{mode:"all-of",name:"All of",description:"Passes only when every connected check passes. A check that was never reached does not pass."},{mode:"any-of",name:"Any of",description:"Passes when at least one connected check passes. A check that was never reached does not pass."},{mode:"not",name:"Not",description:"Flips its input: pass becomes fail, and fail becomes pass."}],sx=[{action:"block",name:"Block",description:"Fails the Tripwire check and requests changes. The change request stays open."},{action:"label",name:"Label",description:"Adds labels you choose to the change request."},{action:"request-review",name:"Request GitHub review",description:"Asks the people you choose to review on GitHub."},{action:"send-to-moderation",name:"Human review",description:"Waits for a maintainer to approve or block it in Tripwire."},{action:"webhook",name:"Webhook",description:"Posts the verdict as JSON to a URL you set."},{action:"lock",name:"Lock",description:"Locks the conversation so only maintainers can comment."},{action:"close",name:"Close",description:"Closes the issue or change request."},{action:"remove-label",name:"Remove label",description:"Removes labels you choose, if they are there."},{action:"post-comment",name:"Comment",description:"Posts a comment you write. It is separate from the verdict comment."},{action:"discord",name:"Discord",description:"Posts the verdict to a Discord channel you set."}];var dae=K(p(),Ie).catch({});function Cc(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function ix(e){let t=Kr.safeParse(e);return t.success?t.data.labels:[]}function ax(e){return`${e.length===1?"the label":"the labels"} ${Cc(e)}`}function TD(e){let t=oi.safeParse(e);if(!t.success)return[];return[...t.data.reviewers.map((r)=>r.login),...t.data.teamReviewers]}function cx(e,t){switch(e){case"block":return"blocks it";case"label":{let r=ix(t);return r.length>0?`adds ${ax(r)}`:"adds labels"}case"remove-label":{let r=ix(t);return r.length>0?`removes ${ax(r)}`:"removes labels"}case"request-review":{let r=TD(t);return r.length>0?`requests GitHub review from ${Cc(r)}`:"requests GitHub review"}case"send-to-moderation":return"sends it to human review";case"webhook":return"posts the verdict to a webhook";case"discord":return"posts the verdict to Discord";case"lock":return"locks the conversation";case"close":return"closes it";case"post-comment":return"posts your comment";default:return e}}var ED=w({runId:p(),verdict:p().nullable(),status:p(),reason:p().nullable()}),ux=w({event:Fk,run:ED.nullable(),pending:L().optional()}),PD=w({repoFullName:p(),subjectNumber:P().int(),title:p(),url:p().nullable(),actor:w({login:p(),avatarUrl:p().nullable()}),currentVerdict:p().nullable(),currentRunId:p().nullable(),latestActivityAt:de.datetime(),eventCount:P().int(),timeline:v(ux)}),OD=At("type",[w({type:C("group"),group:PD}),w({type:C("event"),entry:ux})]),hae=w({items:v(OD)});var ID=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],wae=z(ID);var AD="https://tripwire.sh/orgs";var bae=w({sub:p().min(1),azp:p().min(1).optional(),client_id:p().min(1).optional(),scope:p().optional(),[AD]:v(p()).optional()});var RD=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],lx=z(RD),dx=z(["active","waiting","completed","skipped","failed"]);var CD=p().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),zD=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function px(e){let t=zD.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var ND=w({status:dx,detail:p().max(256).nullable(),updatedAt:de.datetime()}),LD=kf(lx,ND),vae=w({runCode:p().trim().min(1).max(200),stage:lx,status:dx,detail:p().trim().max(256).optional()}),fx=w({code:CD,stages:LD,completedAt:de.datetime().nullable(),lastReportAt:de.datetime().nullable()});function mx(e){return e?`Please help me set up Tripwire.
|
|
229
229
|
|
|
230
230
|
org slug: ${e.org}
|
|
231
|
-
run code: ${e.code}`:"Please help me set up Tripwire."}var RD=200,CD=z(["read","write","edit","delete"]),zD=w({id:Vr,action:CD,at:pe.datetime()}),ND=k(zD).max(RD),oi=k(p()),LD=w({renamed:D(),nodes:w({added:oi,changed:oi,removed:oi}),edges:w({added:oi,removed:oi})}),jD=w({userId:p(),clientId:p(),name:p(),lastSignalAt:pe.datetime(),finishedAt:pe.datetime().nullable(),nodes:ND}),DD=z(["open","promoted","discarded"]),MD=w({id:p(),name:p(),status:DD,definition:ut.nullable(),revision:P().int().min(0),lastChange:LD.nullable(),createdAt:pe.datetime(),updatedAt:pe.datetime(),expiresAt:pe.datetime()}),qD=w({repoId:p(),definitionId:p(),workflowId:p().nullable(),draft:MD.nullable(),agents:k(jD)}),bae=It("type",[w({type:C("work"),repoFullName:p(),work:qD}),w({type:C("setup"),orgId:p(),run:cx})]),_ae=It("type",[w({type:C("work"),repoId:p(),definitionId:p()}),w({type:C("setup"),runId:p()})]);var kae=z(["ready","out"]),lx=z(["ai-out-of-credits"]);var xae=ve({statusCode:P().optional().catch(void 0),status:P().optional().catch(void 0),message:p().optional().catch(void 0),responseBody:p().optional().catch(void 0),lastError:ne().optional(),cause:ne().optional(),data:ne().optional(),error:ne().optional(),errors:k(ne()).optional().catch(void 0)});var $ae=w({data:w({total_credits:P(),total_usage:P()})}),Tae=w({data:w({limit:P().nullable().optional(),limit_remaining:P().nullable().optional(),usage:P().optional()})});var FD=z(["success","failure","neutral","pending"]),Oae=w({sha:p(),conclusion:FD,summary:p(),detailsUrl:p()});var UD=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],WD=UD.length;var VD=P().int().min(0).max(WD),dx=z(["run-page","check","comment","review","webhook"]),Rae=dx.options,ZD=["run-page","check","comment","review"],Ac=w({level:VD.default(0),surfaces:k(dx).default(()=>[...ZD]),showHelp:D().default(!0)}),px=Ac.extend({inherit:D().default(!0)}),BD=Ac.parse({});var KD=z(["green","blue","purple","pink","orange","red","grey"]),Er=z(["issue","pull"]),si=z(["open","closed","merged"]),fx=w({key:p(),label:p(),value:P(),delta:P().optional(),invertDelta:D().optional(),sub:p().optional(),series:k(P()),color:KD,suffix:p().optional()}),HD=w({rule:p(),count:P()}),GD=w({kind:Er,number:P(),title:p(),comments:P(),blocked:P(),status:si}),JD=w({login:p(),count:P(),flagged:D().optional()}),YD=w({login:p(),reason:p(),caughtBy:p(),status:z(["Hidden","Removed"]),commentId:p().optional()}),XD=w({kind:z(["review","check"]),title:p(),detail:p(),status:z(["Approved","Changes","Passed","Failed"]),actor:p().optional()}),QD=w({kind:Er,number:P(),title:p(),status:si,meta:p(),metrics:k(fx),series:k(P()),byParticipant:k(JD),flagged:k(YD).optional(),checks:k(XD).optional()}),Nae=w({metrics:k(fx),blockedByRule:k(HD),activeThreads:k(GD),threads:K(p(),QD)});var vo=z(["issue","pull","comment"]),Nf=z(["spam","harassment","off-topic","automod","nsfw"]),Lf=z(["low","medium","high","critical"]),eM=z(["pending","resolved"]),_o=w({login:p(),avatarUrl:p()}),Mae=w({id:p(),type:vo,repository:wc,number:P(),title:p(),bodyPreview:p(),author:_o,reason:Nf,severity:Lf,reporter:_o.nullable(),automodRule:p().optional(),reportedAt:pe.datetime(),status:eM,comments:P(),reactions:P()}).superRefine((e,t)=>{if(e.reporter===null&&e.automodRule===void 0)t.addIssue({code:"custom",path:["automodRule"],message:"automod-sourced items (reporter: null) must name the automodRule that fired"});if(e.reporter!==null&&e.automodRule!==void 0)t.addIssue({code:"custom",path:["automodRule"],message:"human-reported items (reporter set) must not carry an automodRule"})}),Br=w({value:P(),delta:P(),series:k(P())}),qae=w({sentToReview:Br,blocked:Br,passed:Br}),Fae=z(["approve","remove","ban"]);var tM=z(["info","warn","critical"]),rM=w({severity:tM,file:p(),line:P().int().min(1).optional(),note:p().max(240)}),Vae=w({verdict:z(["pass","block","needs_review"]),confidence:P().min(0).max(1),summary:p().max(200),findings:k(rM).max(5)}),mx=w({model:p().optional(),maxSteps:P().int().min(1).max(15).default(12)});var nM=w({type:z(["reasoning","tool_call"]),toolName:p().optional(),excerpt:p(),truncated:D()}),Zae=w({model:p(),stepsUsed:P().int().min(0),maxSteps:P().int().min(0),trimmed:D(),costUsd:P().nullable().optional(),usage:w({input:P().int().min(0),output:P().int().min(0),cached:P().int().min(0).nullable()}),steps:k(nM)});var oM=z(["blocklist","heuristic","classifier","regex"]),sM=z(["flag","hide","close","require-review"]),iM=z(["pending","confirmed","false-positive"]),aM=w({id:p(),type:vo,repoFullName:p(),number:P(),author:w({login:p(),avatarUrl:p()}),snippet:p(),matchedAt:pe.datetime(),verdict:iM,threadKind:Er,commentId:p()}),ece=w({id:p(),name:p(),description:p(),category:oM,pattern:p(),scope:k(vo),action:sM,enabled:D(),matches24h:P(),matches30d:P(),falsePositiveRate:P().min(0).max(100),lastFiredAt:pe.datetime(),trend:k(P()),recentMatches:k(aM)}),tce=w({activeRules:Br,matches24h:Br,falsePositiveRate:Br,autoActioned24h:Br}),cM=w({ruleId:p(),version:P().int().min(1),status:z(["evaluated","skipped"]),passed:D(),evidence:ne(),reason:p().optional(),cause:lx.optional(),evaluatedAt:pe.datetime()}),rce=cM.pick({ruleId:!0});var uM=w({minDays:P().int().min(0)}),nce=w({min:P().int().min(0)}),lM=w({min:P().int().min(0).default(1).describe("minimum merged change requests in other people's repos"),trustedAfter:P().int().min(1).default(1).describe("merges in this repo that exempt a proven local contributor")}),dM=w({maxPerWindow:P().int().min(1),windowHours:P().min(0.1).default(24)}),pM=w({max:P().int().min(1)}),fM=w({maxNonLatinRatio:P().min(0).max(1).default(0.5)}),mM=w({}),hM=w({paths:k(p()).min(1)}),gM=w({minLength:P().int().min(1).default(32)}),Ge=[{ruleId:"account-age",forges:["github"],version:1,name:"Account age",blurb:"the contributor's forge account must be at least N days old.",configSchema:uM,defaultConfig:{minDays:7},optIn:!1,description:"Flags change requests from accounts younger than a threshold you set.",contributorLabel:"your account is too new for this repository."},{ruleId:"min-merged-prs",forges:["github"],version:2,name:"Merged change requests",blurb:"requires N merged change requests in OTHER people's repos, as proof that someone else accepted their work.",configSchema:lM,defaultConfig:{min:1,trustedAfter:1},optIn:!1,changeNote:"counts merges globally, not per-repo",description:"Requires N merged change requests in other people's repos, as proof that someone else accepted their work.",contributorLabel:"you need merged change requests in other people's repositories first."},{ruleId:"pr-rate-limit",forges:["github"],version:1,name:"Rate limit",blurb:"caps change requests per window; spray patterns surface in evidence.",configSchema:dM,defaultConfig:{maxPerWindow:5,windowHours:24},optIn:!1,description:"Caps how many change requests one person can open in a time window.",contributorLabel:"you opened too many change requests in a short time."},{ruleId:"max-files-changed",forges:["github"],version:1,name:"Max files changed",blurb:"caps the number of files a change request may touch.",configSchema:pM,defaultConfig:{max:200},optIn:!1,description:"Flags change requests that touch more files than you allow.",contributorLabel:"this change request changes too many files. Split it into smaller ones."},{ruleId:"english-only",version:1,name:"English only",blurb:"title/comment must be predominantly latin-script.",configSchema:fM,defaultConfig:{maxNonLatinRatio:0.5},optIn:!1,description:"Flags titles and comments that aren't mostly latin script.",contributorLabel:"write the title and comments in English.",evidenceRedaction:{"matched-values":["sample"]}},{ruleId:"crypto-address",forges:["github"],version:1,name:"Crypto address",blurb:"blocks cryptocurrency addresses in titles, comments, and diffs.",configSchema:mM,defaultConfig:{},optIn:!1,description:"Catches cryptocurrency addresses in titles, comments, and diffs.",contributorLabel:"this change request adds crypto wallet addresses. Remove them.",summaryReveals:["file-paths"],evidenceRedaction:{"matched-values":["matches.*.value"],"file-paths":["matches.*.location"]}},{ruleId:"honeypot",forges:["github"],version:1,name:"Honeypot paths",blurb:"no legitimate change request touches these paths.",configSchema:hM,defaultConfig:{paths:[".github/workflows/**"]},optIn:!1,description:"Catches change requests that touch paths no legitimate change would.",contributorLabel:"this change request changes protected files. Undo those changes.",evidenceRedaction:{"file-paths":["touched"]}},{ruleId:"profile-readme",forges:["github"],version:1,name:"Profile README",blurb:"requires a minimum of profile text, which shows identity investment.",configSchema:gM,defaultConfig:{minLength:32},optIn:!1,description:"Requires a minimum of profile text. Throwaway accounts rarely add one.",contributorLabel:"add a short bio to your profile."},{ruleId:"ai-review",forges:["github"],version:2,name:"AI review",blurb:"reads the change like a reviewer and flags slop.",configSchema:mx,defaultConfig:{maxSteps:12},optIn:!0,changeNote:"findings must quote code",description:"Reads the change like a reviewer and flags slop.",contributorLabel:"this change request has problems a reviewer would flag.",summaryReveals:["ai-summary"],evidenceRedaction:{"matched-values":["output.findings.*.note"],"file-paths":["output.findings.*.file","output.findings.*.line"]}}];var dce=K(p(),qe);var bM=z(["silent","ci-check","comment"]),hx=z(["comment","silent"]),_M=z(["full","one-liner-link","custom"]),jf=w({customText:p().max(4000).default(""),showDetailsButton:D().default(!0)}),vM=jf.extend({mode:_M.default("full"),template:p().max(4000).default("")}),SM=w({onSuccess:bM.default("ci-check"),passComment:jf.prefault({}),onBlock:hx.default("comment"),blockComment:vM.prefault({}),moderationQueued:hx.default("comment"),reviewComment:jf.prefault({}),failClosedFallback:D().default(!0),redaction:px.prefault({})}),kM=w({redaction:Ac.prefault({})}),hce=kM.parse({});var xM=SM.parse({});var gx="If you think this is wrong, say so in a comment. A maintainer will decide.",yx="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Pce=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
231
|
+
run code: ${e.code}`:"Please help me set up Tripwire."}var jD=200,DD=z(["read","write","edit","delete"]),MD=w({id:Br,action:DD,at:de.datetime()}),qD=v(MD).max(jD),ii=v(p()),FD=w({renamed:L(),nodes:w({added:ii,changed:ii,removed:ii}),edges:w({added:ii,removed:ii})}),UD=w({userId:p(),clientId:p(),name:p(),lastSignalAt:de.datetime(),finishedAt:de.datetime().nullable(),nodes:qD}),WD=z(["open","promoted","discarded"]),VD=w({id:p(),name:p(),status:WD,definition:lt.nullable(),revision:P().int().min(0),lastChange:FD.nullable(),createdAt:de.datetime(),updatedAt:de.datetime(),expiresAt:de.datetime()}),ZD=w({repoId:p(),definitionId:p(),workflowId:p().nullable(),draft:VD.nullable(),agents:v(UD)}),Eae=At("type",[w({type:C("work"),repoFullName:p(),work:ZD}),w({type:C("setup"),orgId:p(),run:fx})]),Pae=At("type",[w({type:C("work"),repoId:p(),definitionId:p()}),w({type:C("setup"),runId:p()})]);var Aae=z(["ready","out"]),hx=z(["ai-out-of-credits"]);var Rae=fe({statusCode:P().optional().catch(void 0),status:P().optional().catch(void 0),message:p().optional().catch(void 0),responseBody:p().optional().catch(void 0),lastError:ne().optional(),cause:ne().optional(),data:ne().optional(),error:ne().optional(),errors:v(ne()).optional().catch(void 0)});var Cae=w({data:w({total_credits:P(),total_usage:P()})}),zae=w({data:w({limit:P().nullable().optional(),limit_remaining:P().nullable().optional(),usage:P().optional()})});var BD=z(["success","failure","neutral","pending"]),jae=w({sha:p(),conclusion:BD,summary:p(),detailsUrl:p()});var KD=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],HD=KD.length;var GD=P().int().min(0).max(HD),gx=z(["run-page","check","comment","review","webhook"]),qae=gx.options,JD=["run-page","check","comment","review"],zc=w({level:GD.default(0),surfaces:v(gx).default(()=>[...JD]),showHelp:L().default(!0)}),yx=zc.extend({inherit:L().default(!0)}),YD=zc.parse({});var XD=z(["green","blue","purple","pink","orange","red","grey"]),Or=z(["issue","pull"]),ai=z(["open","closed","merged"]),wx=w({key:p(),label:p(),value:P(),delta:P().optional(),invertDelta:L().optional(),sub:p().optional(),series:v(P()),color:XD,suffix:p().optional()}),QD=w({rule:p(),count:P()}),eM=w({kind:Or,number:P(),title:p(),comments:P(),blocked:P(),status:ai}),tM=w({login:p(),count:P(),flagged:L().optional()}),rM=w({login:p(),reason:p(),caughtBy:p(),status:z(["Hidden","Removed"]),commentId:p().optional()}),nM=w({kind:z(["review","check"]),title:p(),detail:p(),status:z(["Approved","Changes","Passed","Failed"]),actor:p().optional()}),oM=w({kind:Or,number:P(),title:p(),status:ai,meta:p(),metrics:v(wx),series:v(P()),byParticipant:v(tM),flagged:v(rM).optional(),checks:v(nM).optional()}),Wae=w({metrics:v(wx),blockedByRule:v(QD),activeThreads:v(eM),threads:K(p(),oM)});var xo=z(["issue","pull","comment"]),Mf=z(["spam","harassment","off-topic","automod","nsfw"]),qf=z(["low","medium","high","critical"]),sM=z(["pending","resolved"]),ko=w({login:p(),avatarUrl:p()}),Kae=w({id:p(),type:xo,repository:_c,number:P(),title:p(),bodyPreview:p(),author:ko,reason:Mf,severity:qf,reporter:ko.nullable(),automodRule:p().optional(),reportedAt:de.datetime(),status:sM,comments:P(),reactions:P()}).superRefine((e,t)=>{if(e.reporter===null&&e.automodRule===void 0)t.addIssue({code:"custom",path:["automodRule"],message:"automod-sourced items (reporter: null) must name the automodRule that fired"});if(e.reporter!==null&&e.automodRule!==void 0)t.addIssue({code:"custom",path:["automodRule"],message:"human-reported items (reporter set) must not carry an automodRule"})}),Hr=w({value:P(),delta:P(),series:v(P())}),Hae=w({sentToReview:Hr,blocked:Hr,passed:Hr}),Gae=z(["approve","remove","ban"]);var iM=z(["info","warn","critical"]),aM=w({severity:iM,file:p(),line:P().int().min(1).optional(),note:p().max(240)}),Xae=w({verdict:z(["pass","block","needs_review"]),confidence:P().min(0).max(1),summary:p().max(200),findings:v(aM).max(5)}),bx=w({model:p().optional(),maxSteps:P().int().min(1).max(15).default(12)});var cM=w({type:z(["reasoning","tool_call"]),toolName:p().optional(),excerpt:p(),truncated:L()}),Qae=w({model:p(),stepsUsed:P().int().min(0),maxSteps:P().int().min(0),trimmed:L(),costUsd:P().nullable().optional(),usage:w({input:P().int().min(0),output:P().int().min(0),cached:P().int().min(0).nullable()}),steps:v(cM)});var uM=z(["blocklist","heuristic","classifier","regex"]),lM=z(["flag","hide","close","require-review"]),dM=z(["pending","confirmed","false-positive"]),pM=w({id:p(),type:xo,repoFullName:p(),number:P(),author:w({login:p(),avatarUrl:p()}),snippet:p(),matchedAt:de.datetime(),verdict:dM,threadKind:Or,commentId:p()}),cce=w({id:p(),name:p(),description:p(),category:uM,pattern:p(),scope:v(xo),action:lM,enabled:L(),matches24h:P(),matches30d:P(),falsePositiveRate:P().min(0).max(100),lastFiredAt:de.datetime(),trend:v(P()),recentMatches:v(pM)}),uce=w({activeRules:Hr,matches24h:Hr,falsePositiveRate:Hr,autoActioned24h:Hr}),fM=w({ruleId:p(),version:P().int().min(1),status:z(["evaluated","skipped"]),passed:L(),evidence:ne(),reason:p().optional(),cause:hx.optional(),evaluatedAt:de.datetime()}),lce=fM.pick({ruleId:!0});var mM=w({minDays:P().int().min(0)}),dce=w({min:P().int().min(0)}),hM=w({min:P().int().min(0).default(1).describe("minimum merged change requests in other people's repos"),trustedAfter:P().int().min(1).default(1).describe("merges in this repo that exempt a proven local contributor")}),gM=w({maxPerWindow:P().int().min(1),windowHours:P().min(0.1).default(24)}),yM=w({max:P().int().min(1)}),wM=w({maxNonLatinRatio:P().min(0).max(1).default(0.5)}),bM=w({}),_M=w({paths:v(p()).min(1)}),SM=w({minLength:P().int().min(1).default(32)}),Ge=[{ruleId:"account-age",forges:["github"],version:1,name:"Account age",blurb:"the contributor's forge account must be at least N days old.",configSchema:mM,defaultConfig:{minDays:7},optIn:!1,description:"Flags change requests from accounts younger than a threshold you set.",contributorLabel:"your account is too new for this repository."},{ruleId:"min-merged-prs",forges:["github"],version:2,name:"Merged change requests",blurb:"requires N merged change requests in OTHER people's repos, as proof that someone else accepted their work.",configSchema:hM,defaultConfig:{min:1,trustedAfter:1},optIn:!1,changeNote:"counts merges globally, not per-repo",description:"Requires N merged change requests in other people's repos, as proof that someone else accepted their work.",contributorLabel:"you need merged change requests in other people's repositories first."},{ruleId:"pr-rate-limit",forges:["github"],version:1,name:"Rate limit",blurb:"caps change requests per window; spray patterns surface in evidence.",configSchema:gM,defaultConfig:{maxPerWindow:5,windowHours:24},optIn:!1,description:"Caps how many change requests one person can open in a time window.",contributorLabel:"you opened too many change requests in a short time."},{ruleId:"max-files-changed",forges:["github"],version:1,name:"Max files changed",blurb:"caps the number of files a change request may touch.",configSchema:yM,defaultConfig:{max:200},optIn:!1,description:"Flags change requests that touch more files than you allow.",contributorLabel:"this change request changes too many files. Split it into smaller ones."},{ruleId:"english-only",version:1,name:"English only",blurb:"title/comment must be predominantly latin-script.",configSchema:wM,defaultConfig:{maxNonLatinRatio:0.5},optIn:!1,description:"Flags titles and comments that aren't mostly latin script.",contributorLabel:"write the title and comments in English.",evidenceRedaction:{"matched-values":["sample"]}},{ruleId:"crypto-address",forges:["github"],version:1,name:"Crypto address",blurb:"blocks cryptocurrency addresses in titles, comments, and diffs.",configSchema:bM,defaultConfig:{},optIn:!1,description:"Catches cryptocurrency addresses in titles, comments, and diffs.",contributorLabel:"this change request adds crypto wallet addresses. Remove them.",summaryReveals:["file-paths"],evidenceRedaction:{"matched-values":["matches.*.value"],"file-paths":["matches.*.location"]}},{ruleId:"honeypot",forges:["github"],version:1,name:"Honeypot paths",blurb:"no legitimate change request touches these paths.",configSchema:_M,defaultConfig:{paths:[".github/workflows/**"]},optIn:!1,description:"Catches change requests that touch paths no legitimate change would.",contributorLabel:"this change request changes protected files. Undo those changes.",evidenceRedaction:{"file-paths":["touched"]}},{ruleId:"profile-readme",forges:["github"],version:1,name:"Profile README",blurb:"requires a minimum of profile text, which shows identity investment.",configSchema:SM,defaultConfig:{minLength:32},optIn:!1,description:"Requires a minimum of profile text. Throwaway accounts rarely add one.",contributorLabel:"add a short bio to your profile."},{ruleId:"ai-review",forges:["github"],version:2,name:"AI review",blurb:"reads the change like a reviewer and flags slop.",configSchema:bx,defaultConfig:{maxSteps:12},optIn:!0,changeNote:"findings must quote code",description:"Reads the change like a reviewer and flags slop.",contributorLabel:"this change request has problems a reviewer would flag.",summaryReveals:["ai-summary"],evidenceRedaction:{"matched-values":["output.findings.*.note"],"file-paths":["output.findings.*.file","output.findings.*.line"]}}];var bce=K(p(),Ie);var xM=z(["silent","ci-check","comment"]),_x=z(["comment","silent"]),$M=z(["full","one-liner-link","custom"]),Ff=w({customText:p().max(4000).default(""),showDetailsButton:L().default(!0)}),TM=Ff.extend({mode:$M.default("full"),template:p().max(4000).default("")}),EM=w({onSuccess:xM.default("ci-check"),passComment:Ff.prefault({}),onBlock:_x.default("comment"),blockComment:TM.prefault({}),moderationQueued:_x.default("comment"),reviewComment:Ff.prefault({}),failClosedFallback:L().default(!0),redaction:yx.prefault({})}),PM=w({redaction:zc.prefault({})}),kce=PM.parse({});var OM=EM.parse({});var Sx="If you think this is wrong, say so in a comment. A maintainer will decide.",vx="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Lce=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
232
232
|
|
|
233
|
-
${
|
|
233
|
+
${Sx}`,jce=`A new commit will not fix this.
|
|
234
234
|
|
|
235
|
-
${
|
|
235
|
+
${vx}`,Dce=`Fix what you can and push. Some problems will not clear with a new commit.
|
|
236
236
|
|
|
237
|
-
${
|
|
237
|
+
${vx}`,Mce=`Push a new commit to run the checks again.
|
|
238
238
|
|
|
239
|
-
${gx}`;var $M=w({total:P(),weeks:k(k(P().min(0).max(4)))}),TM=w({accountAgeDays:P(),location:p().nullable(),emailVerified:D(),twoFactor:D()}),EM=w({mergedPrs:P(),openPrs:P(),comments:P(),hiddenByAutomod:P()}),PM=z(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),OM=w({id:p(),kind:PM,title:p(),detail:p(),at:pe.datetime()}),zce=w({handle:p(),initial:p(),joinedDaysAgo:P(),publicRepos:P(),followers:P(),watchlisted:D(),contributions:$M,details:TM,repoStats:EM,activity:k(OM)});var IM=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],wx=p().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),AM=It("kind",[w({kind:C("last"),window:wx}),w({kind:C("lastCount"),window:wx}),w({kind:C("trimmedLength")}),w({kind:C("nonLatinRatio")}),w({kind:C("letterCount")})]),RM=te([P(),p(),D()]),CM=te([RM,k(te([P(),p()]))]),bx=w({kind:z(IM),args:k(CM)}),zM=te([bx.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),w({kind:C("not"),args:aj([bx])})]),NM=w({when:w({id:p().min(1),transform:AM.optional()}),comparison:zM,severity:z(["low","medium","high"])});var Mce=w({id:p().regex(/^custom-[a-z0-9][a-z0-9-]*$/,"id must be custom-<kebab-slug>"),name:p().min(1).max(80),enabled:D(),definition:NM}),qce=w({});var Vce=z(["prod","eval","dev"]),Zce=z(["railway","openrouter","planetscale"]);var Gce=z(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var nr={installationId:p(),forge:Qs},Jce=It("status",[w({...nr,status:C("claimable"),account:p().nullable(),repoCount:P(),stateOrg:w({id:p(),slug:p(),name:p()}).nullable()}),w({...nr,status:C("claimed-by-your-org"),orgSlug:p()}),w({...nr,status:C("processing")}),w({...nr,status:C("recovering")}),w({...nr,status:C("unreadable")}),w({...nr,status:C("missing"),recoverable:D()}),w({...nr,status:C("not-for-tripwire")}),w({...nr,status:C("not-yours"),recoverable:D()}),w({...nr,status:C("token-expired")}),w({...nr,status:C("not-admin"),account:p().nullable()})]);var LM=/^(Too (small|big)|Invalid (input|option|string|number|key|element|value)|Unrecognized key)/,jM=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","a group of settings"]]);function Rc(e,t){return`${e} ${t}${e===1?"":"s"}`}function DM(e){return e.map(String).join(".")}function MM(e,t){switch(e.code){case"too_small":{if(e.origin==="array"||e.origin==="set")return`${t} needs at least ${Rc(e.minimum,"item")}`;if(e.origin==="string")return e.minimum===1?`${t} cannot be empty`:`${t} needs at least ${Rc(e.minimum,"character")}`;return e.inclusive===!1?`${t} must be more than ${e.minimum}`:`${t} must be ${e.minimum} or more`}case"too_big":{if(e.origin==="array"||e.origin==="set")return`${t} can have at most ${Rc(e.maximum,"item")}`;if(e.origin==="string")return`${t} can be at most ${Rc(e.maximum,"character")}`;return e.inclusive===!1?`${t} must be less than ${e.maximum}`:`${t} must be ${e.maximum} or less`}case"invalid_type":return/received undefined/.test(e.message)?`${t} is missing`:`${t} must be ${jM.get(e.expected)??e.expected}`;case"invalid_value":return e.values.length===1?`${t} must be ${String(e.values[0])}`:`${t} must be one of ${e.values.map(String).join(", ")}`;case"invalid_format":return`${t} is not a valid ${e.format}`;case"invalid_union":return`${t} is not in a form Tripwire can read`;case"unrecognized_keys":return`${e.keys.join(", ")} ${e.keys.length===1?"is not a setting":"are not settings"}`;default:return null}}function So(e,t){let r=t?.(e.path)??null,n=r??DM(e.path);if(LM.test(e.message)){let o=MM(e,n||"This setting");if(o)return o}if(r)return`${r} is not valid: ${e.message}`;return n?`${n}: ${e.message}`:e.message}var Df=z(["admin","member"]),qM=new Set(["activity","analytics","api","dev","dither-kit","invite","login","moderation","oauth","onboarding","queue","rules","runs","workflows","admin","app","auth","blog","brand","changelog","dashboard","docs","help","home","legal","new","pricing","privacy","settings","signup","status","support","terms","www","tripwire","boring","boringsoftware"]),FM=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,eue=p().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(FM,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!qM.has(e),{message:"this name is reserved"});var tue=z(["User","Organization"]),rue=w({role:Df,maxUses:P().int().min(1).max(1000).default(1),expiresInDays:P().int().min(1).max(90).default(7)});var Mf=["moderation","activity","rules","workflows","responses","analytics","connections","members","settings"],qf=z(Mf),_x=["read","manage"],or=z(_x),iue=kj([qf,":",or]),aue=Mf.flatMap((e)=>_x.map((t)=>`${e}:${t}`));var vx=w({moderation:or.optional(),activity:or.optional(),rules:or.optional(),workflows:or.optional(),responses:or.optional(),analytics:or.optional(),connections:or.optional(),members:C("read").optional(),settings:C("read").optional()}).strict().refine((e)=>Object.values(e).some(Boolean),{message:"pick at least one area"}),UM=bf(qf,k(or).min(1));var cue=bf(qf,or);function WM(e){let t={};for(let r of Mf){let n=e[r];if(n?.includes("manage"))t[r]="manage";else if(n?.includes("read"))t[r]="read"}return t}var VM=new Set(["admin","member","owner"]),Ff=p().trim().toLowerCase().min(2,"use at least 2 characters").max(32,"use at most 32 characters").regex(/^[a-z][a-z0-9-]*[a-z0-9]$/,"use lowercase letters, numbers and hyphens, starting with a letter").refine((e)=>!VM.has(e),{message:"this name is taken by a built-in role"}),uue=w({name:Ff,scopes:vx}),Sx=UM.refine((e)=>vx.safeParse(WM(e)).success,{message:"this role grants access a custom role cannot hold"}),lue=w({organizationId:p().min(1),role:Ff,permission:Sx}).strict(),due=w({organizationId:p().min(1),roleName:p().min(1).optional(),roleId:p().min(1).optional(),data:w({permission:Sx}).strict()}).strict(),pue=te([Df,Ff]);var ZM=z(["public","private"]),$x=w({name:p(),className:p()}),BM=w({name:p(),description:p(),visibility:ZM,openIssues:P(),openPulls:P(),flagged:P(),updatedAt:pe.datetime()}),kx=w({kind:Er,number:P(),title:p(),status:si,author:p(),openedAt:pe.datetime(),comments:P(),flagged:P(),labels:k($x)}),KM=w({state:z(["Hidden","Removed"]),rule:p()}),HM=w({id:p(),author:p(),body:p(),createdAt:pe.datetime(),flag:KM.optional()}),xx=w({kind:Er,number:P(),title:p(),status:si,author:p(),openedAt:pe.datetime(),labels:k($x),body:p(),comments:k(HM),branch:p().optional(),baseBranch:p().optional()}),gue=w({repos:k(BM),issues:k(kx),pulls:k(kx),issueDetails:K(p(),xx),pullDetails:K(p(),xx)});var bue=new Set(Yk.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var GM=z(["removed","hidden","banned","dismissed","required-review"]),JM=z(["actioned","dismissed","appealed","reversed"]),YM=z(["automod","report","manual"]),XM=w({kind:YM,detail:p(),reporter:_o.optional()}),QM=w({at:pe.datetime(),label:p(),by:p()}),eq=w({id:p(),type:vo,repoFullName:p(),number:P(),content:p(),threadKind:Er,commentId:p()}),xue=w({id:p(),label:p(),reason:Nf,severity:Lf,action:GM,status:JM,author:_o,moderator:_o.nullable(),caughtBy:XM,at:pe.datetime(),snapshot:D(),items:k(eq),history:k(QM)}),$ue=z(["what","reason","caught"]),ko=z(["pass","block","needs_review"]);var Tx=z(["queued","running","paused","completed","failed","closed"]),Oue=Tx.options,Iue=z(["checking","did-not-finish","pass","block","needs_review","closed-before-review","ran"]),Cc={checking:"Checking","did-not-finish":"Did not finish",pass:"Passed",block:"Blocked",needs_review:"Waiting for human review","closed-before-review":"Closed before review",ran:"Ran"},Aue=Tx.nullable().catch(null),Rue=ko.nullable().catch(null);var Ex=z(["event","pass","fail","approve","deny"]),Nue=z(["event","result","decision"]),Lue=z(["identity","not"]),lt={event:{type:"event",fn:"identity",label:"Event"},pass:{type:"result",fn:"identity",label:"Passes"},fail:{type:"result",fn:"not",label:"Doesn't pass"},approve:{type:"decision",fn:"identity",label:"Approved"},deny:{type:"decision",fn:"not",label:"Blocked"}},tq={identity:{event:"event",result:"result",decision:"decision"},not:{result:"result",decision:"decision"}};function rq(e,t){return tq[e][t]??null}function nq(e){let t=lt[e];return rq(t.fn,t.type)}var ai={event:lt.event.label,pass:lt.pass.label,fail:lt.fail.label,approve:lt.approve.label,deny:lt.deny.label},Uf={event:lt.event.type,pass:lt.pass.type,fail:lt.fail.type,approve:lt.approve.type,deny:lt.deny.type};function xo(e){let t=lt[e];if(t.type==="event")return"neutral";return t.fn==="not"?"fail":"ok"}var jue={event:xo("event"),pass:xo("pass"),fail:xo("fail"),approve:xo("approve"),deny:xo("deny")},oq={trigger:[],rule:["event","result","decision"],gate:["result"],action:["event","result","decision"]},sq={"send-to-moderation":["approve","deny"]},iq=Ex.options;function Px(e){return oq[e]}function zc(e,t){let r=nq(t);return r!==null&&Px(e).includes(r)}function ii(e){return iq.filter((t)=>zc(e,t))}var Due={trigger:{accepts:ii("trigger")},rule:{accepts:ii("rule")},gate:{accepts:ii("gate")},action:{accepts:ii("action")}};function ci(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?sq[e.action]:[];default:return[]}}function Nn(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var Cx={schema:{severity:"error",stage:"structure"},"no-trigger-events":{severity:"error",stage:"structure"},"duplicate-id":{severity:"error",stage:"structure"},"missing-step":{severity:"error",stage:"structure"},"no-trigger":{severity:"error",stage:"structure"},"trigger-input":{severity:"error",stage:"structure"},"gate-input":{severity:"error",stage:"structure"},"no-outputs":{severity:"error",stage:"structure"},"wrong-output":{severity:"error",stage:"structure"},"not-input":{severity:"error",stage:"structure"},"orphan-step":{severity:"error",stage:"structure"},cycle:{severity:"error",stage:"structure"},"no-action":{severity:"error",stage:"enable"},"schedule-config":{severity:"error",stage:"enable"},"action-params":{severity:"error",stage:"enable"},"schedule-mixed":{severity:"error",stage:"enable"},"schedule-needs-change-request":{severity:"error",stage:"enable"},"unknown-rule":{severity:"error",stage:"enable"},"rule-unavailable":{severity:"warning",stage:"enable"},"rule-config":{severity:"error",stage:"enable"},"removed-step":{severity:"error",stage:"enable"},"review-targets":{severity:"error",stage:"enable"},"stale-reviewer":{severity:"warning",stage:"enable"},"dead-end":{severity:"warning",stage:"enable"}},Ln=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),ui=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function Vf(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function aq(e){let t=e.trim();return Vf(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function zx(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Nc(e,t=Ge){switch(e.type){case"trigger":return"Trigger";case"rule":{let[r]=e.ref.split("@");return Ge.find((n)=>n.ruleId===r)?.name??t.find((n)=>n.ruleId===r)?.name??e.ref}case"gate":return Qk.find((r)=>r.mode===e.mode)?.name??e.mode;case"action":return ex.find((r)=>r.action===e.action)?.name??`${e.action.charAt(0).toUpperCase()}${e.action.slice(1)}`;default:return"Step"}}function Nx(e,t,r,n){if(zc(e.type,t))return null;if(e.type==="trigger")return{rule:"trigger-input",message:n?`${r} takes no inputs, but ${n} connects to it`:`${r} takes no inputs`};let o=n?` from ${n}`:"",s=Uf[t];return{rule:"gate-input",message:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function Lx(e,t,r){let n=ci(e);if(n.length===0)return{rule:"no-outputs",message:`${r} has no outputs`};if(!n.includes(t))return{rule:"wrong-output",message:`${r} has no ${ai[t]} output`};return null}function cq(e){return Uf[e]==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function Zf(e,t=Ge){let r=new Map,n=new Map;for(let o of e.nodes){let s=Nc(o,t),i=(r.get(s)??0)+1;r.set(s,i),n.set(o.id,i===1?s:`${s} ${i}`)}return n}function uq(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},Ln(e.id)];return[Ln(e.id)]}function lq(e){let t=[],r=new Set;for(let o of e.def.nodes){if(r.has(o.id))t.push({nodeId:o.id,message:"Another step uses the same id. Rename one.",fixes:[]});r.add(o.id)}let n=new Set;for(let o of e.def.edges){if(n.has(o.id))t.push({edgeId:o.id,message:"Another connection uses the same id. Rename one.",fixes:[]});n.add(o.id)}return t}function dq(e){return e.def.edges.flatMap((t)=>[t.from,t.to].filter((r)=>!e.byId.has(r)).map(()=>({edgeId:t.id,message:"A connection points to a step that is gone.",fixes:[Ln(t.id)]})))}function pq(e){return e.def.nodes.some((t)=>t.type==="trigger")?[]:[{message:"Add a trigger to start it.",fixes:[{label:"Add trigger",edit:{type:"add-trigger"}}]}]}function jx(e,t){let r=e.byId.get(t.from),n=e.byId.get(t.to);return r&&n?{source:r,target:n}:null}function Ox(e){return(t)=>t.def.edges.flatMap((r)=>{let n=jx(t,r);if(!n||Lx(n.source,Nn(n.source,r.when),""))return[];let o=Nn(n.source,r.when);if(Nx(n.target,o,t.name(n.target),t.name(n.source))?.rule!==e)return[];return[{edgeId:r.id,nodeId:n.target.id,message:e==="gate-input"?cq(o):"It takes no inputs.",fixes:e==="gate-input"?uq(r,o):[Ln(r.id)]}]})}function Ix(e){return(t)=>t.def.edges.flatMap((r)=>{let n=jx(t,r);if(!n)return[];if(Lx(n.source,Nn(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=ci(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${ai[Nn(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},Ln(r.id)]:[Ln(r.id)]}]})}function fq(e){return e.def.nodes.flatMap((t)=>{let r=e.incoming.get(t.id)??[],[n]=r;if(t.type!=="gate"||t.mode!=="not"||r.length<2||!n)return[];return[{nodeId:t.id,message:"It takes one input. Keep one.",fixes:[{label:"Keep first input",edit:{type:"keep-one-input",nodeId:t.id,edgeId:n.id}}]}]})}function mq(e){let t=e.def.nodes.filter((n)=>n.type==="trigger"),[r]=t;return e.def.nodes.flatMap((n)=>{if(n.type==="trigger"||(e.incoming.get(n.id)??[]).length>0)return[];let o=t.length===1&&r&&zc(n.type,"event")?[{label:"Connect",edit:{type:"connect",from:r.id,to:n.id}}]:[];return[{nodeId:n.id,message:"Nothing runs it. Connect it or delete it.",fixes:[...o,ui(n.id)]}]})}function hq(e){let t=new Map,r=[],n=[],o=(s)=>{t.set(s,"visiting"),r.push(s);for(let i of e.outgoing.get(s)??[]){let a=t.get(i.to);if(a==="visiting"){let u=r.slice(r.indexOf(i.to)).flatMap((l)=>{let d=e.byId.get(l);return d?[e.name(d)]:[]});n.push({edgeId:i.id,nodeId:i.to,message:u.length===1?"It connects to itself.":`It loops back through ${zx(u.slice(1))}.`,fixes:[Ln(i.id)]})}else if(a===void 0&&e.byId.has(i.to))o(i.to)}r.pop(),t.set(s,"done")};for(let s of e.def.nodes)if(!t.has(s.id))o(s.id);return n}function gq(e){return Dx(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function yq(e){let t=gq(e),r=e.def.nodes.find((n)=>n.type==="trigger");return e.def.nodes.some((n)=>n.type==="action"&&t.has(n.id))?[]:[{message:"Add an action after the trigger.",fixes:r?[{label:"Add action",intent:{type:"add-next-step",nodeId:r.id,port:"event"}}]:[]}]}var wq={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function bq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!Oc(t))return[];let r=Gk(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${zx(r.map((o)=>wq[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var _q={"remove-label":{schema:Zr,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:Tc,field:"message",message:"Write the message.",label:"Write message"}},vq=new Set(["discord.com","discordapp.com","ptb.discord.com","canary.discord.com"]),Sq=w({url:p().optional(),urlSet:D().optional()});function kq(e,t){let r=Sq.safeParse(t??{});if(!r.success)return!1;let{url:n,urlSet:o}=r.data;if(n===void 0||n==="")return o===!0;let s=Ks({protocol:/^https$/}).safeParse(n);if(!s.success)return!1;if(e==="webhook")return!0;let i=new URL(s.data);return vq.has(i.hostname)&&i.pathname.startsWith("/api/webhooks/")}var xq={webhook:{message:"Set the webhook URL. It must use HTTPS.",label:"Set URL"},discord:{message:"Set the Discord webhook URL.",label:"Set URL"}};function Wf(e,t,r,n){return{nodeId:e,message:t,fixes:[{label:r,intent:{type:"focus-field",nodeId:e,field:n}}]}}function $q(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];if(t.action==="webhook"||t.action==="discord"){let o=xq[t.action];return kq(t.action,t.params)?[]:[Wf(t.id,o.message,o.label,"url")]}if(t.action==="label")return Zr.safeParse(t.params??{}).success?[]:[Wf(t.id,"Pick the labels to add.","Pick labels","labels")];let r=t.action==="remove-label"||t.action==="post-comment"?_q[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[Wf(t.id,r.message,r.label,r.field)]})}function Tq(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&Oc(t)&&t.kinds.length>1?[{nodeId:t.id,message:"It cannot run on a schedule and on events. Pick one.",fixes:[{label:"Pick one",intent:{type:"focus-field",nodeId:t.id,field:"kinds"}}]}]:[])}var Eq=new Set(["block","send-to-moderation"]);function Dx(e,t){let r=new Set,n=[...t];for(let o=n.pop();o!==void 0;o=n.pop()){if(r.has(o))continue;r.add(o),n.push(...(e.outgoing.get(o)??[]).map((s)=>s.to))}return r}function Pq(e){let t=Dx(e,e.def.nodes.filter(Oc).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&Eq.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[ui(r.id)]}]:[])}function Bf(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function Oq(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!Bf(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[ui(t.id)]}]:[])}function Iq(e){return e.def.nodes.flatMap((t)=>{let r=t.type==="rule"?Bf(e,t.ref)?.unavailable:null;return r?[{nodeId:t.id,message:r,fixes:[]}]:[]})}function Aq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=Bf(e,t.ref),n=r?.configSchema.safeParse(t.config);if(!(r&&n)||n.success)return[];let o=n.error.issues[0],s=o?.path[0];return[{nodeId:t.id,message:o?`Fix this setting: ${Vf(So(o))}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var Rq={comment:"Customize sets the verdict comment now"};function Cq(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&Fk(t.action)?[{nodeId:t.id,message:`This step was removed. ${aq(Rq[t.action])}`,fixes:[ui(t.id)]}]:[])}function zq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=Wk.safeParse(t.params??{});if(r.success)return[];let n=r.error.issues[0],o=n?.code==="custom"&&n.path.length===0&&n.message.startsWith("add"),s=n?.path[0]==="teamReviewers"?"teamReviewers":"reviewers";return[{nodeId:t.id,message:o?"Pick people or teams to ask.":n?.message?`Fix the reviewers: ${Vf(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function Nq(e){let t=e.reviewers;if(!t)return[];return e.def.nodes.flatMap((r)=>{if(r.type!=="action"||r.action!=="request-review")return[];let n=ri.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>Uk(s,o))).map((o)=>({nodeId:r.id,message:`Remove ${o.login}. They can no longer review this repo.`,fixes:[{label:"Remove",edit:{type:"remove-reviewer",nodeId:r.id,reviewer:o}}]}))})}function Lq(e){return e.def.nodes.flatMap((t)=>{let[r]=ci(t);if(t.type==="action"||!r||(e.outgoing.get(t.id)??[]).length>0||t.type!=="trigger"&&(e.incoming.get(t.id)??[]).length===0)return[];return[{nodeId:t.id,message:"Nothing runs after it.",fixes:[{label:"Add step",intent:{type:"add-next-step",nodeId:t.id,port:r}},ui(t.id)]}]})}var jq=[{rule:"duplicate-id",check:lq},{rule:"missing-step",check:dq},{rule:"no-trigger",check:pq},{rule:"trigger-input",check:Ox("trigger-input")},{rule:"gate-input",check:Ox("gate-input")},{rule:"no-outputs",check:Ix("no-outputs")},{rule:"wrong-output",check:Ix("wrong-output")},{rule:"not-input",check:fq},{rule:"orphan-step",check:mq},{rule:"cycle",check:hq},{rule:"no-action",check:yq},{rule:"schedule-config",check:bq},{rule:"action-params",check:$q},{rule:"schedule-mixed",check:Tq},{rule:"schedule-needs-change-request",check:Pq},{rule:"unknown-rule",check:Oq},{rule:"rule-unavailable",check:Iq},{rule:"rule-config",check:Aq},{rule:"removed-step",check:Cq},{rule:"review-targets",check:zq},{rule:"stale-reviewer",check:Nq},{rule:"dead-end",check:Lq}];function Ax(e,t){let r=new Map;for(let n of e)r.set(n[t],[...r.get(n[t])??[],n]);return r}function Kf(e,t,r=new Map){return{rule:e,severity:Cx[e].severity,step:t.nodeId?r.get(t.nodeId)??"Step":"Workflow",...t}}function Rx(e,t,r,n){let o=Zf(e,t),s={def:e,byId:new Map(e.nodes.map((c)=>[c.id,c])),incoming:Ax(e.edges,"to"),outgoing:Ax(e.edges,"from"),name:(c)=>o.get(c.id)??Nc(c,t),catalog:t,reviewers:n},i=jq.flatMap(({rule:c,check:u})=>r==="structure"&&Cx[c].stage!=="structure"?[]:u(s).map((l)=>Kf(c,l,o)));return i.some((c)=>c.rule==="no-action")?i.filter((c)=>c.rule!=="dead-end"||s.byId.get(c.nodeId??"")?.type!=="trigger"):i}var Dq=w({nodes:k(ve({id:p().catch(""),type:p().catch(""),kinds:k(p()).optional().catch(void 0)}))});function Mq(e,t){let r=new Map,n=new Map;for(let o of e){let s=zf.safeParse(o),i=s.success?Nc(s.data,t):o.type?`${o.type.charAt(0).toUpperCase()}${o.type.slice(1)}`:"Step",a=(r.get(i)??0)+1;r.set(i,a),n.set(o.id,a===1?i:`${i} ${a}`)}return n}function qq(e,t,r){return e.issues.map((n)=>{let[o,s]=n.path,i=o==="nodes"&&Number.isInteger(s)?t[Number(s)]:void 0;return Kf("schema",{nodeId:i||void 0,message:"A setting is not valid.",fixes:[]},r)})}function Hf(e,t={}){let r=t.catalog??Ge,n=t.stage??"enable",o=(f)=>[...f].sort((m,h)=>Number(m.severity==="warning")-Number(h.severity==="warning")),s=ut.safeParse(e);if(s.success)return{definition:s.data,results:o(Rx(s.data,r,n,t.reviewers))};let i=Dq.safeParse(e),a=i.success?i.data.nodes:[],c=a.filter((f)=>f.type==="trigger"&&f.kinds?.length===0),u=ut.safeParse({...e,nodes:a.map((f)=>c.includes(f)?{...f,kinds:["push"]}:f)});if(c.length===0||!u.success)return{definition:null,results:qq(s.error,a.map((f)=>f.id),Mq(a,r))};let l=Zf(u.data,r),d=c.map((f)=>Kf("no-trigger-events",{nodeId:f.id,message:"Pick when it runs.",fixes:[{label:"Pick events",intent:{type:"focus-field",nodeId:f.id,field:"kinds"}}]},l));return{definition:null,results:o([...d,...Rx(u.data,r,n,t.reviewers)])}}function Mx(e,t={}){return Hf(e,t).results}var Fq={pass:Cc.pass,block:Cc.block,needs_review:Cc.needs_review},Uq=ko.nullable().catch(null);function qx(e){let t=Uq.parse(e??null);return t?Fq[t]:null}var ele=k(ut).catch([]),tle=w({workflows:k(w({id:p(),name:p()})),issues:k(w({workflowId:p(),messages:k(p())})).optional()}).catch({workflows:[]}),rle=w({decision:z(["approve","deny"])}).nullable().catch(null);var nle=w({pausedNodeId:p()}).nullable().catch(null);var Wq=w({ruleId:p(),summary:p()}),ale=w({version:C(1),verdict:ko,org:p(),repo:p(),changeRequest:w({number:P().int(),title:p(),author:p()}),firedRules:k(Wq),runUrl:p(),timestamp:p()});var cle=w({content:p(),embeds:k(w({title:p(),url:p(),description:p(),color:P().int()}))});function $o(e,t){return{kind:"output",step:e,port:t}}function Jf(e,t,r,n){let o={kind:"check",rule:e,config:t??{},version:r?.version,inputs:n,get passes(){return $o(o,"pass")},get fails(){return $o(o,"fail")},after:(...s)=>Jf(e,t,r,s)};return o}function Gf(e,t){let r={kind:"gate",mode:e,inputs:t,get passes(){return $o(r,"pass")},get fails(){return $o(r,"fail")}};return r}function sr(e,t,r=[]){return{kind:"action",action:e,params:t,inputs:r,after:(...n)=>sr(e,t,n)}}function Fx(e,t){let r={kind:"action",action:"send-to-moderation",params:void 0,approve:e.approve??[],deny:e.deny??[],inputs:t,get approved(){return $o(r,"approve")},get denied(){return $o(r,"deny")},after:(...n)=>Fx(e,n)};return r}function Ux(){return{check(e,...t){let[r,n]=t;return Jf(e,r,n,[])},customCheck(e,t){return Jf(e,t,void 0,[])},allOf(...e){return Gf("all-of",e)},anyOf(...e){return Gf("any-of",e)},not(e){return Gf("not",[e])},trigger(...e){return{kind:"trigger",on:e,inputs:[]}},schedule(e){return{kind:"trigger",on:["schedule.matched"],schedule:e,inputs:[]}},block(){return sr("block",void 0)},label(e){return sr("label",e)},removeLabel(e){return sr("remove-label",e)},requestReview(e){return sr("request-review",e)},postComment(e){return sr("post-comment",e)},lock(e){return sr("lock",e)},close(){return sr("close",void 0)},webhook(){return sr("webhook",void 0)},discord(){return sr("discord",void 0)},humanReview(e={}){return Fx(e,[])},workflow(e){return{kind:"workflow",spec:e}},workflows(e){return e}}}var To=["change-request.opened","change-request.updated","change-request.closed","comment.created","push"],li=w({}),Kr={block:li,label:Zr,"remove-label":Zr,"request-review":w({reviewers:k(te([$c,Af])).optional(),teamReviewers:k(If).optional()}),"post-comment":Tc,lock:Vk,close:li,webhook:li,discord:li,"send-to-moderation":li};var Wx=Ux();var xle=Rt*60000;function di(e){return"n"in e}function Vq(e){return"preset"in e}var Zq={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6};function Bq(e){let[t="0",r="0"]=e.split(":");return{hour:Number(t),minute:Number(r)}}function Vx(e){if(di(e))return null;if(!Vq(e))return e.cron.trim();if(e.preset==="hourly")return`${e.minute} * * * *`;let{hour:t,minute:r}=Bq(e.at);switch(e.preset){case"daily":return`${r} ${t} * * *`;case"weekdays":return`${r} ${t} * * 1-5`;case"weekly":return`${r} ${t} * * ${Zq[e.on]}`;case"monthly":return`${r} ${t} ${e.day} * *`;default:return null}}function Zx(e){return e?{zone:e,defaulted:!1}:{zone:rr,defaulted:!0}}var Kq={hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Bx(e){let[t,r]=Kq[e.unit];return`${e.n} ${e.n===1?t:r}`}var jn="09:00",Wc=Cf.options,Lc=new Map([...Wc.flatMap((e,t)=>[e,`${e}s`,e.slice(0,3)].map((r)=>[r,t])),["tues",2],["thur",4],["thurs",4]]),Hq=new Map(Object.entries({one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12})),Gq=new Map(Object.entries({m:"minutes",h:"hours",d:"days",w:"weeks"})),Kx=new Map(Object.entries({min:"minutes",mins:"minutes",minute:"minutes",minutes:"minutes",hr:"hours",hrs:"hours",hour:"hours",hours:"hours",day:"days",days:"days",wk:"weeks",wks:"weeks",week:"weeks",weeks:"weeks",month:"months",months:"months"})),Hx=new Map(Object.entries({minute:"minute",hour:"hourly",day:"daily",week:"week",month:"monthly"})),Yf=new Map(Object.entries({hourly:"hourly",daily:"daily",weekly:"weekly",monthly:"monthly",weekday:"weekdays",weekdays:"weekdays","mon-fri":"weekdays","monday-friday":"weekdays",weekend:"weekends",weekends:"weekends"})),Jq=new Map(Object.entries({utc:rr,gmt:rr,z:rr})),Yq=["Asia/Kolkata","Europe/Kyiv","Asia/Ho_Chi_Minh","America/Argentina/Buenos_Aires"],Xq=["Berlin","London","New York","Los Angeles","Chicago","Denver","Toronto","Paris","Amsterdam","Madrid","Stockholm","Tokyo","Singapore","Sydney","Kolkata","Sao Paulo"],jc=null;function Qf(e){return(e.split("/").at(-1)??e).replaceAll("_"," ")}function t0(){if(jc)return jc;let e=Intl.supportedValuesOf("timeZone"),t=new Map,r=new Map,n=Yq.filter(ti);for(let i of[...n,...e])if(r.set(i.toLowerCase(),i),i.includes("/")&&!i.startsWith("Etc/")){let a=Qf(i).toLowerCase();if(!t.has(a))t.set(a,i)}let o=Xq.filter((i)=>t.has(i.toLowerCase())),s=[...t.values()].map(Qf).filter((i)=>!o.includes(i)).sort((i,a)=>i.localeCompare(a));return jc={byCity:t,byId:r,cities:[...o,...s]},jc}function Qq(e){return e.split("/").map((t)=>t.split("_").map((r)=>`${r.charAt(0).toUpperCase()}${r.slice(1)}`).join("_")).join("/")}function e2(e){let t=e.toLowerCase(),r=Jq.get(t);if(r)return r;if(!t.includes("/"))return null;let n=t0().byId.get(t);if(n)return n;let o=Qq(t);return ti(o)?o:null}function em(e){return t0().byCity.get(e.join(" ").toLowerCase())??null}function r0(e){if(e===rr)return e;let t=Qf(e);return em([t])===e?t:e}function t2(e,t){return`UTC${(new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"shortOffset"}).formatToParts(t).find((o)=>o.type==="timeZoneName")?.value??"GMT").replace(/^GMT/,"")||"+0"}`}function n0(e,t=new Date){return e===rr?e:`${e}, ${t2(e,t)}`}function Gx(e,t){return[...e.matchAll(t)].map((r)=>({text:r[0],lower:r[0].toLowerCase(),from:r.index,to:r.index+r[0].length}))}function Po(e){return String(e).padStart(2,"0")}function tm(e,t){return`${Po(e)}:${Po(t)}`}function rm(e){let r=e%100>=11&&e%100<=13?"th":["th","st","nd","rd"][e%10]??"th";return`${e}${r}`}function fi(e){return`${e.charAt(0).toUpperCase()}${e.slice(1)}`}function Oo(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Dc(e){if(e===void 0)return null;if(/^\d{1,4}$/.test(e))return Number(e);return Hq.get(e)??null}function r2(e,t){let r=e[t]?.lower;if(r===void 0)return null;if(r==="noon")return{hour:12,minute:0,valid:!0,used:1};if(r==="midnight")return{hour:0,minute:0,valid:!0,used:1};let n=/^(\d{1,2})(?:[:.](\d{2}))?(am|pm|a\.m\.|p\.m\.)?$/.exec(r);if(!n)return null;let o=1,s=n[3]?.charAt(0),i=e[t+1]?.lower;if(!s&&i&&/^(am|pm|a\.m\.|p\.m\.)$/.test(i))s=i.charAt(0),o=2;let a=Number(n[1]),c=Number(n[2]??"0"),u=c<=59;if(s)u=u&&a>=1&&a<=12,a=a%12+(s==="p"?12:0);else u=u&&a<=23;return{hour:a,minute:c,valid:u,used:o}}function Jx(e){let t=e?/^(\d{1,2})(st|nd|rd|th)?$/.exec(e):null;return t?Number(t[1]):null}var n2=new Set(["shorter","short","those","the","months","month"]);function Eo(e,t){return{from:e.from,to:t.to}}class nm{words;read={};at=0;everyAt=-1;constructor(e){this.words=e}word(e=0){return this.words[this.at+e]}lower(e=0){return this.word(e)?.lower}take(e){let t=this.word(),r=this.word(e-1);return this.at+=e,t&&r?Eo(t,r):{from:0,to:0}}run(){while(this.at<this.words.length&&!this.read.unknown)if(!this.step()){let e=this.lower()==="in"&&this.word(1)?this.word(1):this.word();if(e)this.read.unknown={from:e.from,to:e.to}}return this.read}step(){let e=this.lower()??"",t=this.at===this.everyAt+1&&this.everyAt>=0;if((e==="every"||e==="each")&&!this.read.every){if(this.everyAt=this.at,this.read.every=this.take(1),this.at>=this.words.length)this.read.everyDangling=this.read.every;return this.everyFollowerOk()}if(e==="and"||e==="&")return this.at+=1,!0;if(e==="skip"||e==="skipping")return this.skip();if(e==="at")return this.atPhrase();if(this.count(t))return!0;if(this.unit())return!0;if(this.keyword(t))return!0;if(this.weekdays())return!0;if(this.monthDay())return!0;if(this.monthOf())return!0;if(this.minute())return!0;if(this.time())return!0;return this.zone()}everyFollowerOk(){let e=this.lower();if(e===void 0)return!0;let t=/^\d+[a-z]+$/.test(e);if(!(Dc(e)!==null||t||Hx.has(e)||Lc.has(e)||e==="weekday"||e==="weekend"||e==="weekdays"||e==="weekends")){let n=this.word();if(n)this.read.unknown={from:n.from,to:n.to}}return!0}skip(){let e=1;while(n2.has(this.lower(e)??""))e+=1;if(this.read.skip)return!1;return this.read.skip=this.take(e),!0}atPhrase(){let e=this.lower(1);if(e===void 0)return this.read.atDangling=this.take(1),!0;if(e==="minute"||/^:\d{1,2}$/.test(e))return this.minute(1);return this.time(1)}count(e){let t=this.lower();if(t===void 0||this.read.interval)return!1;let r=/^(\d{1,4})([a-z]+)$/.exec(t);if(r){let a=r[2]??"",c=Gq.get(a)??Kx.get(a);if(!c)return!1;let u=this.word();return this.setInterval(Number(r[1]),c,this.take(1),{from:u?.from??0,to:(u?.from??0)+(r[1]?.length??0)},r[2]??""),!0}let n=Dc(t);if(n===null)return!1;let o=this.lower(1)??"",s=Kx.get(o),i=this.word();if(s&&i)return this.setInterval(n,s,this.take(2),Eo(i,i),o),!0;if(e&&i)return this.read.interval={...this.take(1),n,unit:null,count:Eo(i,i),unitWord:""},!0;return!1}setInterval(e,t,r,n,o){this.read.interval={...r,n:e,unit:t,count:n,unitWord:o}}unit(){let e=this.lower()??"",t=Hx.get(e);if(!t)return!1;if(t==="minute"){if(this.read.interval)return!1;return this.setInterval(1,"minutes",this.take(1),null,e),!0}return this.setBase(t,[],this.take(1))}setBase(e,t,r){if(this.read.base)return!1;return this.read.base={...r,kind:e,days:t},!0}keyword(e){let t=0,r,s=(this.lower()??"")==="on"&&Yf.get(this.lower(1)??"")?1:0,i=this.lower(s)??"";if((i==="monday"||i==="mon")&&(this.lower(s+1)==="to"||this.lower(s+1)==="through")&&(this.lower(s+2)==="friday"||this.lower(s+2)==="fri"))r="weekdays",t=s+3;else if(Yf.has(i))r=Yf.get(i),t=s+1;if(!r)return!1;if(e&&!(r==="weekdays"||r==="weekends"))return!1;return this.setBase(r,[],this.take(t))}weekdays(){let e=this.lower()==="on"?1:0;if(Lc.get(this.lower(e)??"")===void 0)return!1;let t=[],r=e;while(!0){let s=Lc.get(this.lower(r)??"");if(s!==void 0){t.push(s),r+=1;continue}let i=this.lower(r);if((i==="and"||i==="&")&&Lc.get(this.lower(r+1)??"")!==void 0){r+=1;continue}break}let n=[...new Set(t)].sort((s,i)=>s-i),o=this.read.base;if(o&&(o.kind==="weekly"||o.kind==="week")&&o.days.length===0)return o.kind="weekly",o.days=n,this.read.weekdaySpan=this.take(r),!0;return this.setBase("weekly",n,this.take(r))}monthDay(){let e=0;if(this.lower(e)==="on")e+=1;let t=null;if(this.lower(e)==="the")t=Jx(this.lower(e+1)),e+=2;else if(this.lower(e)==="day")t=Dc(this.lower(e+1)),e+=2;else if(/(st|nd|rd|th)$/.test(this.lower(e)??""))t=Jx(this.lower(e)),e+=1;if(t===null)return!1;let r=this.take(e),n=this.read.day;if(n)return n.to=r.to,n.values.push(t),n.value=Math.max(n.value,t),!0;return this.read.day={...r,value:t,values:[t]},!0}monthOf(){let e=this.lower()==="of",t=this.lower(1),r=this.lower(2);if(!e||!(t==="the"||t==="every"||t==="each")||r!=="month")return!1;if(this.read.base)return!1;return this.read.monthOf=this.take(3),this.read.base={...this.read.monthOf,kind:"monthly",days:[]},!0}minute(e=0){let t=this.lower(e)??"",r=null,n=e,o=/^:(\d{1,2})$/.exec(t);if(o)r=Number(o[1]),n+=1;else if(t==="minute")r=Dc(this.lower(e+1)),n+=2;if(r===null||r>59||this.read.minute)return!1;return this.read.minute={...this.take(n),value:r},!0}time(e=0){let t=r2(this.words,this.at+e);if(!t)return!1;let r=this.take(e+t.used),n={hour:t.hour,minute:t.minute,valid:t.valid},o=this.read.time;if(o)return o.to=r.to,o.times.push(n),o.valid=o.valid&&n.valid,!0;return this.read.time={...r,...n,times:[n]},!0}zone(){if(this.read.zone)return!1;let e=this.lower()==="in"?1:0;for(let t=3;t>=1;t--){let r=this.words.slice(this.at+e,this.at+e+t).map((o)=>o.lower);if(r.length<t)continue;let n=t===1?e2(r[0]??"")??em(r):em(r);if(n){let o=e+t+(this.lower(e+t)==="time"?1:0);return this.read.zone={...this.take(o),id:n},!0}}return!1}}function pi(e){return e.replace(/\s+,/g,",").replace(/,(\s*,)+/g,",").replace(/\s{2,}/g," ").replace(/^[\s,]+|[\s,]+$/g,"")}function Bt(e,t,r){return pi(`${e.slice(0,t.from)}${r}${e.slice(t.to)}`)}function Mc(e,t){return t.time?e:`${e} at ${jn}`}var o2={minutes:["minute","minutes"],hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Uc(e,t){let[r,n]=o2[t];return`${e} ${e===1?r:n}`}function o0(e){return fi(Wc[e]??"")}function Yx(e){switch(e.kind){case"hourly":return"Every hour";case"daily":return"Every day";case"weekdays":return"Monday to Friday";case"weekends":return"Saturday and Sunday";case"week":return"Every week";case"monthly":return"Every month";default:return e.days.length>0?`Every ${Oo(e.days.map(o0))}`:"Every week"}}function s2(e,t,r,n){let o=[],s=(l,d,f,m)=>{if(!d)return;o.push({from:d.from,to:d.to,text:e.slice(d.from,d.to),kind:f,label:m,tone:r[l]??"ok"})},{every:i,base:a,interval:c}=t,u=i&&a&&!c&&a.from>i.to&&e.slice(i.to,a.from).trim()==="";if(i&&!u)s("every",i,"cadence","Repeats");if(c)s("interval",c,"interval",c.unit?`Every ${Uc(c.n,c.unit)}`:"Repeats");if(a)s("base",u&&i?{from:i.from,to:a.to}:a,"cadence",Yx(a));if(s("weekdays",t.weekdaySpan,"cadence",Yx(a??{from:0,to:0,kind:"weekly",days:[]})),t.day)s("day",t.day,"day",`The ${Oo(s0(t.day).map(rm))} of the month`);if(t.time)s("time",t.time,"time",t.time.valid?Oo(i0(t.time).map((l)=>tm(l.hour,l.minute))):"Not a time");if(s("at",t.atDangling,"time","At"),t.minute)s("minute",t.minute,"minute",`At :${Po(t.minute.value)}`);if(t.zone)s("zone",t.zone,"zone",n0(t.zone.id,n));if(t.skip)s("skip",t.skip,"skip","Skips months without that day");if(t.unknown)s("unknown",t.unknown,"unknown","Not understood");return o.sort((l,d)=>l.from-d.from)}function $e(e,t,r=[],n={}){return{ok:!1,reason:e,message:t,fixes:r,tones:n}}var i2=[5,6,10,12,15,20,30];function a2(e){return i2.reduce((t,r)=>Math.abs(r-e)<Math.abs(t-e)?r:t)}function c2(e,t){let n=t.unitWord==="minute"||t.unitWord==="min"?`${t.unitWord}s`:t.unitWord,o=`${Rt} ${n}`;return{label:`Use ${Rt} minutes`,text:Bt(e,t,o)}}function u2(e,t){let r=t.interval;if(!r)return null;let n={interval:"fail"};if(t.base||t.day)return $e("invalid","Use an interval or a day, not both.",[],n);if(r.unit===null)return $e("incomplete","Add a unit, like every 5 days.",[{label:"Use days",text:Bt(e,r,`${r.n} days`)}]);if(r.unit==="months"){if(r.n===1)return null;let c=Math.round(r.n*30/7);return $e("unstorable","An interval counts hours, days or weeks.",[{label:`Use ${c} weeks`,text:Bt(e,r,`${c} weeks`)}],n)}let{n:o,unit:s}=r;if(s==="minutes"){if(o<Rt)return $e("floor",`Runs must be at least ${Rt} minutes apart.`,[c2(e,r)],n);if(o<60||o%60!==0){if(t.time||t.minute)return Xx(e,t,[]);if(o>60||60%o!==0){let c=a2(o);return $e("unstorable","Minutes must divide the hour evenly, like 10, 15 or 30.",[{label:`Use ${c} minutes`,text:Bt(e,r,`${c} minutes`)}],n)}return{ok:!0,every:{cron:`*/${o} * * * *`},timezone:t.zone?.id}}o/=60,s="hours"}let i={n:o,unit:s};if(s==="hours"&&t.minute&&!t.time&&!t.skip&&o>1&&o<24&&24%o===0)return{ok:!0,every:{cron:`${t.minute.value} */${o} * * *`},timezone:t.zone?.id};if(t.time||t.minute)return Xx(e,t,[]);if(t.zone)return $e("unstorable","An interval counts from the last run, so it has no timezone.",[{label:"Drop the timezone",text:Bt(e,t.zone,"")}],{zone:"fail"});if(t.skip)return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});let a=ni[s];if(o<1||o*a>Ec){let c=Math.floor(Ec/a);return $e("invalid","Runs must be at most 52 weeks apart.",[{label:`Use ${Uc(c,s)}`,text:Bt(e,r,Uc(c,s))}],n)}return{ok:!0,every:i,timezone:void 0}}function Xx(e,t,r){let n=t.time??t.minute;return $e("unstorable","An interval counts from the last run, so it has no time of day.",[...r,...n?[{label:"Drop the time",text:Bt(e,n,"")}]:[]],{time:"fail",minute:"fail"})}var l2=new Map([[29,"February has no 29th most years."],[30,"February has no 30th."],[31,"Five months have no 31st."]]);function d2(e,t){let r=t.zone?.id,n=t.base;if(!n&&(t.day||t.interval?.unit==="months"))n={from:0,to:0,kind:"monthly",days:[]};if(!n)return $e("incomplete","Add how often, like every day.",t.time?[{label:"Every day",text:`every day ${e.trim()}`}]:[]);if(t.time&&!t.time.valid)return $e("invalid","Use a time from 00:00 to 23:59.",[],{time:"fail"});if(n.kind==="hourly"){if(t.time)return $e("unstorable","An hourly schedule takes a minute, like at :15.",[{label:"Use :00",text:Bt(e,t.time,"at :00")}],{time:"fail"});if(t.day)return $e("invalid","An hourly schedule runs every day.",[],{day:"fail"});return{ok:!0,every:{preset:"hourly",minute:t.minute?.value??0},timezone:r}}if(t.minute)return $e("invalid","A minute only fits an hourly schedule.",[],{minute:"fail"});if(n.kind==="week"||n.kind==="weekly"&&n.days.length===0){let f=t.every?{from:Math.min(t.every.from,n.from),to:n.to}:n;return $e("incomplete","Add a day, like every monday.",[{label:"Every Monday",text:Mc(Bt(e,f,"every monday"),t)}])}if(n.kind==="monthly"){if(!t.day)return $e("incomplete","Add a day, like on the 1st.",[{label:"On the 1st",text:Mc(`${pi(e)} on the 1st`,t)}])}else if(t.day)return $e("invalid","Pick a weekday or a day of the month, not both.",[],{day:"fail"});let o=t.day,s=o?s0(o):[];if(s.some((f)=>f<1||f>31))return $e("invalid","A month has at most 31 days.",[],{day:"fail"});if(o&&o.value>28&&!t.skip)return $e("ambiguous",l2.get(o.value)??"",[{label:"Skip those months",text:`${Mc(pi(e),t)}, skipping shorter months`},{label:"Run on the 28th instead",text:Mc(Bt(e,o,"on the 28th"),t)}],{day:"warn"});if(t.skip&&!(o&&o.value>28))return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});if(!t.time)return $e("incomplete",t.atDangling?"Add a time, like 09:00.":"Add a time, like at 09:00.",[{label:`At ${jn}`,text:t.atDangling?`${pi(e)} ${jn}`:`${pi(e)} at ${jn}`}]);let i=i0(t.time),[a]=i;if(i.length===1&&s.length<=1&&a){let f=p2(n,s[0],a);if(f)return{ok:!0,every:f,timezone:r}}let c=[...new Set(i.map((f)=>f.minute))],u=[...new Set(i.map((f)=>f.hour))];if(c.length*u.length!==i.length)return $e("unstorable","Times in one schedule share their minutes, like 09:00 and 17:00.",[],{time:"fail"});let l=`${c.join(",")} ${u.join(",")} ${f2(n,s)}`,d=Pc.safeParse({cron:l});if(!d.success)return $e("invalid",a0(d.error.issues[0]?.message??"this cron does not parse"),[],{time:"fail"});return{ok:!0,every:{cron:d.data.cron},timezone:r}}function s0(e){return[...new Set(e.values)].sort((t,r)=>t-r)}function i0(e){let t=new Map;for(let r of e.times)t.set(r.hour*60+r.minute,r);return[...t.entries()].sort(([r],[n])=>r-n).map(([,r])=>r)}function p2(e,t,r){let n=tm(r.hour,r.minute);switch(e.kind){case"daily":return{preset:"daily",at:n};case"weekdays":return{preset:"weekdays",at:n};case"monthly":{let o=t??1;return o>28?null:{preset:"monthly",day:o,at:n}}case"weekly":{let[o]=e.days,s=o===void 0?void 0:Wc[o];return e.days.length===1&&s?{preset:"weekly",on:s,at:n}:null}default:return null}}function f2(e,t){switch(e.kind){case"weekdays":return"* * 1-5";case"weekends":return"* * 0,6";case"monthly":return`${t.length>0?t.join(","):"1"} * *`;case"weekly":return`* * ${e.days.join(",")}`;default:return"* * *"}}var Xf=/^[\d*][\d*,\-/]*$/,m2=/^[\da-z*][\da-z*,\-/]*$/i;function h2(e){let[t,r]=e;if(!(t&&r&&Xf.test(t.text)&&Xf.test(r.text)))return 0;let n=0;while(n<5){let o=e[n],s=n<3?Xf:m2;if(!(o&&s.test(o.text))||n>=3&&!/[\d*]/.test(o.text)&&!/^[a-z]{3}(-[a-z]{3})?(,[a-z]{3})*$/i.test(o.text))break;n+=1}return n}function a0(e){return`${fi(e)}.`}function g2(e,t,r,n){let o=t.slice(0,r),s=o[0],i=o.at(-1),a=o.map((y)=>y.text).join(" "),c=s&&i?Eo(s,i):{from:0,to:0},u=t.slice(r),l,d;if(u.length>0){let b=new nm(u).run(),T=b.every||b.base||b.interval||b.time||b.day||b.minute||b.skip;if(b.unknown||T||!b.zone){let S=u[0];d=b.unknown??(S?Eo(S,S):void 0)}else l=b.zone}let f=c0(a),m=f?fi(f):"Cron",h=(y)=>{let b=[{...c,text:e.slice(c.from,c.to),kind:"cron",label:m,tone:y}];if(l)b.push({from:l.from,to:l.to,text:e.slice(l.from,l.to),kind:"zone",label:n0(l.id,n),tone:"ok"});if(d)b.push({...d,text:e.slice(d.from,d.to),kind:"unknown",label:"Not understood",tone:"fail"});return b};if(d)return{ok:!1,reason:"unknown",message:`Could not read "${e.slice(d.from,d.to)}".`,fixes:[],tokens:h("ok")};let g=Pc.safeParse({cron:a});if(!g.success){let y=g.error.issues[0]?.message??"this cron does not parse",b=y.includes(`at least ${Rt} minutes`),T=o[0]?.text??"",S=/^\*(\/(\d+))?$/.exec(T),I=b&&S&&s?[{label:`Use ${Rt} minutes`,text:Bt(e,Eo(s,s),`*/${Rt}`)}]:[];return{ok:!1,reason:b?"floor":"invalid",message:a0(y),fixes:I,tokens:h("fail")}}return{ok:!0,every:{cron:g.data.cron},timezone:l?.id,tokens:h("ok")}}function y2(e,t){if(e.trim()==="")return{ok:!1,reason:"empty",message:"",fixes:[],tokens:[]};let r=Gx(e,/\S+/g),n=h2(r);if(n>0)return g2(e,r,n,t);let o=new nm(Gx(e,/[^\s,]+/g)).run(),s=w2(e,o),i=s2(e,o,s.ok?{}:s.tones??{},t);if(s.ok)return{ok:!0,every:s.every,timezone:s.timezone,tokens:i};return{ok:!1,reason:s.reason,message:s.message,fixes:s.fixes,tokens:i}}function w2(e,t){if(t.unknown)return $e("unknown",`Could not read "${e.slice(t.unknown.from,t.unknown.to)}".`,[],{unknown:"fail"});if(t.everyDangling&&!t.base&&!t.interval)return $e("incomplete","Add how often, like every day.");return u2(e,_2(t))??d2(e,t)}var b2={hours:"hourly",days:"daily",weeks:"week",months:"monthly"};function _2(e){let t=e.interval;if(!t||t.n!==1||t.unit===null)return e;let r=e.base?.kind;if(t.unit==="weeks"&&r==="weekly"||t.unit==="months"&&r==="monthly"){if(e.base&&r==="weekly"&&!e.weekdaySpan)e.weekdaySpan={from:e.base.from,to:e.base.to},e.base.from=t.from,e.base.to=t.to;return e.interval=void 0,e}if(e.base)return e;if(t.unit==="minutes")return e;return e.base={from:t.from,to:t.to,kind:b2[t.unit],days:[]},e.interval=void 0,e}var v2={hours:"every 60 minutes",days:"every 24 hours",weeks:"every 7 days"},qc=Array.from({length:31},(e,t)=>t+1),Fc=[0,1,2,3,4,5,6];function S2(e){let t=(i,a)=>vc(e,i,a),r=Fc.filter((i)=>qc.every((a)=>t(a,i)));if(Fc.every((i)=>qc.every((a)=>t(a,i)===r.includes(i))))return r.length===7?{kind:"daily"}:{kind:"weekly",days:r};let o=qc.filter((i)=>Fc.every((a)=>t(i,a)));return qc.every((i)=>Fc.every((a)=>t(i,a)===o.includes(i)))?{kind:"monthly",days:o}:null}function Qx(e,t){let[r,n]=e;if(r!==0||n===void 0)return null;let o=n-r;return e.every((i,a)=>i===a*o)&&t%o===0&&e.length===t/o?o:null}var k2=4;function e0(e){return(e+6)%7}function x2(e){if(e.kind==="daily")return"every day";if(e.kind==="monthly")return e.days.length===0?null:`monthly on the ${Oo(e.days.map(rm))}`;let t=e.days.join(",");if(t==="1,2,3,4,5")return"weekdays";if(t==="0,6")return"weekends";let r=[...e.days].sort((n,o)=>e0(n)-e0(o)).map(o0);return r.length===0?null:`every ${Oo(r)}`}function $2(e){let t=zn(e);if(!t.ok||t.spec.months.length!==12)return null;let{minutes:r,hours:n}=t.spec,o=S2(t.spec);if(!o)return null;let s=o.kind==="daily",[i]=r;if(n.length===24){if(!s)return null;if(r.length===1&&i!==void 0)return i===0?"every hour":`every hour at :${Po(i)}`;let d=Qx(r,60);return d?`every ${d} minutes`:null}let a=Qx(n,24);if(r.length===1&&i!==void 0&&a&&n.length>2)return s?`every ${a} hours at :${Po(i)}`:null;if(r.length*n.length>k2)return null;let c=x2(o);if(!c)return null;let u=n.flatMap((d)=>r.map((f)=>tm(d,f))),l=`${c} at ${Oo(u)}`;if(o.kind!=="monthly"||o.days.every((d)=>d<=28))return l;return o.days.length===1?`${l}, skipping shorter months`:null}function c0(e){let t=$2(e);if(!t)return null;let r=y2(t,new Date(0)),n=r.ok?Vx(r.every):null;return n!==null&&Dk(n,e)?t:null}function T2(e){if(di(e)){if(e.n===1)return v2[e.unit];return`every ${Uc(e.n,e.unit)}`}if("preset"in e)switch(e.preset){case"hourly":return e.minute===0?"every hour":`every hour at :${Po(e.minute)}`;case"daily":return`every day at ${e.at}`;case"weekdays":return`weekdays at ${e.at}`;case"weekly":return`every ${fi(e.on)} at ${e.at}`;default:return`monthly on the ${rm(e.day)} at ${e.at}`}let t=e.cron.trim();return c0(t)??t}function E2(e){let t=T2(e.every);if(di(e.every)||!e.timezone)return t;return`${t} in ${r0(e.timezone)}`}function P2(e){return E2({every:e.every,timezone:di(e.every)?void 0:e.timezone??rr})}function mi(e){return fi(P2(e))}var Ile=["every",...Wc,"weekdays","weekends","minutes","hours","days","weeks","month","monthly","daily","hourly","weekly","noon","midnight"],Ale=["",` at ${jn}`,` ${jn}`,":00"," days"," minutes",` on the 1st at ${jn}`," 5 days"];var O2={issue:"issues","change-request":"change requests"},I2={open:"open",closed:"closed",any:"open and closed"};function om(e,t){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} ${t} ${e.at(-1)}`}function A2(e){let t=e?.match??{},r=["issue","change-request"].filter((o)=>t.subjects?.includes(o)),n=e?.every?[{key:"every",text:mi({every:e.every,timezone:e.timezone})}]:[{key:"every-lead",text:"Every "},{key:"every",text:"so often",placeholder:!0}];if(n.push({key:"finds",text:", finds "},t.state?{key:"state",text:I2[t.state]}:{key:"state",text:"open or closed",placeholder:!0},{key:"gap",text:" "},r.length>0?{key:"subjects",text:om(r.map((o)=>O2[o]),"and")}:{key:"subjects",text:"issues or change requests",placeholder:!0},{key:"inactive-lead",text:" with no activity for "},t.inactiveFor?{key:"inactiveFor",text:Bx(t.inactiveFor)}:{key:"inactiveFor",text:"some time",placeholder:!0}),t.labels?.length)n.push({key:"labels",text:`, labeled ${om(t.labels,"and")}`});if(t.excludeLabels?.length)n.push({key:"excludeLabels",text:`, not labeled ${om(t.excludeLabels,"or")}`});if(t.skipLocked!==!1)n.push({key:"skipLocked",text:", skipping locked ones"});return n.push({key:"end",text:"."}),n}function u0(e){return A2(e).map((t)=>t.placeholder?`[${t.text}]`:t.text).join("")}var R2=new Map([["every","The schedule"],["every.n","The interval"],["every.unit","The interval unit"],["every.minute","The minute"],["every.at","The time"],["every.at.hour","The hour"],["every.at.minute","The minute"],["every.on","The weekday"],["every.day","The day of the month"],["every.cron","The cron"],["every.preset","The preset"],["timezone","The timezone"],["match","What it looks for"],["match.subjects","What it looks at"],["match.state","The state"],["match.inactiveFor","The inactive time"],["match.inactiveFor.n","The inactive time"],["match.inactiveFor.unit","The inactive time unit"],["match.labels","The labels"],["match.excludeLabels","The labels to skip"],["match.skipLocked","Skip locked"]]);function l0(e){let t=e.map(String).filter((r)=>!/^\d+$/.test(r)).join(".");return R2.get(t)??null}function C2(e){return/[.?]$/.test(e)?e:`${e}.`}function f0(e){let{workflow:t,step:r,message:n}=e,o=r!==void 0&&(n.startsWith(`${r} `)||n.startsWith(`${r}:`)),s=[t,o?void 0:r].filter(Boolean).join(" > ");if(!s)return n;return o?`${s} > ${n}`:`${s}: ${n}`}function z2(e,t){let r=Array.from({length:t.length+1},(n,o)=>o);for(let n=1;n<=e.length;n++){let o=r[0]??0;r[0]=n;for(let s=1;s<=t.length;s++){let i=r[s]??0;r[s]=Math.min(i+1,(r[s-1]??0)+1,o+(e[n-1]===t[s-1]?0:1)),o=i}}return r[t.length]??0}function d0(e,t){let r=0;for(let n of t)if(n===e[r])r++;return r===e.length}function p0(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function N2(e,t){let r=p0(e),n=null;for(let s of t){let i=p0(s),c=d0(r,i)||d0(i,r)?Math.abs(i.length-r.length)/4:z2(r,i);if(n===null||c<n.score)n={id:s,score:c}}if(!n)return null;let o=Math.max(2,Math.ceil(r.length/3));return n.score<=o?n.id:null}function Vc(e,t,r){let n=N2(t,r);return n?`${t} is not ${e}. Did you mean ${n}?`:`${t} is not ${e}. Use one of: ${r.join(", ")}`}var m0=K(p(),ne());function hi(e,t,r){let n=m0.safeParse(e??{});if(!n.success)return[`${r} takes an object of settings`];let o=t instanceof wf?Object.keys(t.shape):null,s=o?Object.keys(n.data).filter((a)=>!o.includes(a)):[];if(s.length>0&&o)return s.map((a)=>Vc(`a setting of ${r}`,a,o));let i=t.safeParse(n.data);return i.success?[]:i.error.issues.map((a)=>`${r}: ${So(a)}`)}var L2=w({kind:z(["trigger","check","gate","action","output"])}),h0=w({kind:z(["trigger","check","gate","action"])}),j2=w({kind:C("output"),port:z(["pass","fail","approve","deny"])}),D2=w({}).loose(),M2=mc((e)=>h0.safeParse(e).success),q2=K(p(),w({kind:C("workflow"),spec:mc((e)=>D2.safeParse(e).success,{error:"each entry must be workflow({ ... })"})}),{error:"the default export must be workflows({ ... })"});function F2(e){return Object.hasOwn(Kr,e)}function sm(e){return e.kind==="output"}function U2(e){return e.kind==="action"&&e.action==="send-to-moderation"}function W2(e,t){if(e==="pass")return;return t.kind==="trigger"?void 0:e}function V2(e){switch(e){case"pass":return"fail";case"fail":return"pass";case"approve":return"deny";default:return"approve"}}function Z2(e){switch(e.kind){case"trigger":return e.on.includes("schedule.matched")?"schedule":"trigger";case"check":return e.rule.split("@")[0]??"check";case"gate":return e.mode;default:return e.action}}var B2=/^[^\p{Cc}]+$/u;class g0{key;spec;issues=[];ids=new Map;taken=new Set;nodes=[];edges=[];edgeKeys=new Set;built=new Set;triggers=[];constructor(e,t){this.key=e;this.spec=t}issue(e,t){let r=t?this.ids.get(t):void 0;this.issues.push({workflow:this.key,step:r,message:e})}idFor(e){let t=this.ids.get(e);if(t)return t;let r=Z2(e),n=r;for(let o=2;this.taken.has(n);o++)n=`${r}-${o}`;return this.ids.set(e,n),this.taken.add(n),n}connect(e,t,r){if(e.kind==="trigger"&&t!=="pass"){this.issue("a trigger has only its event output; put a check or gate between it and this step",r);return}let n=this.visit(e),o=this.idFor(r),s=W2(t,e),i=`${n}>${o}>${s??"pass"}`;if(this.edgeKeys.has(i))return;this.edgeKeys.add(i);let a=`${n}-${o}`;for(let c=2;this.edges.some((u)=>u.id===a);c++)a=`${n}-${o}-${c}`;this.edges.push(s?{id:a,from:n,to:o,when:s}:{id:a,from:n,to:o})}wireInputs(e,t){for(let r of t){if(!L2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}if(sm(r)){if(!j2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}this.connect(r.step,r.port,e)}else this.connect(r,"pass",e)}}wireFromTriggers(e){for(let t of this.triggers)this.connect(t,"pass",e)}visit(e){if(!h0.safeParse(e).success)return this.issue("a step was not built with the workflow helpers"),"invalid";let t=this.idFor(e);if(this.built.has(e))return t;switch(this.built.add(e),e.kind){case"trigger":this.buildTrigger(e,t);break;case"check":this.buildCheck(e,t);break;case"gate":this.buildGate(e,t);break;default:this.buildAction(e,t)}return t}buildTrigger(e,t){let r=[];for(let n of e.on){let o=ei.safeParse(n);if(o.success&&(o.data==="schedule.matched"||To.some((s)=>s===o.data)))r.push(o.data);else this.issue(Vc("an event a workflow can start on",n,To),e)}if(r.length===0){if(e.on.length===0)this.issue("a trigger needs at least one event",e);return}if(e.schedule!==void 0){let n=bo.safeParse(e.schedule);if(!n.success){for(let o of n.error.issues)this.issue(C2(So(o,l0)),e);return}this.nodes.push({id:t,type:"trigger",kinds:r,schedule:bo.parse(e.schedule)});return}this.nodes.push({id:t,type:"trigger",kinds:r})}buildCheck(e,t){let r=e.rule.startsWith("custom-"),n=e.rule;if(r)n=e.rule.includes("@")?e.rule:`${e.rule}@1`;else{let s=Ge.find((a)=>a.ruleId===e.rule);if(!s){this.issue(Vc("a rule",e.rule,Ge.map((a)=>a.ruleId)),e);return}let i=e.version??s.version;if(n=`${s.ruleId}@${i}`,i===s.version)for(let a of hi(e.config,s.configSchema,s.ruleId))this.issue(a,e)}let o=qe.safeParse(e.config??{});if(!o.success){this.issue(`${e.rule} settings must be plain JSON`,e);return}if(this.nodes.push({id:t,type:"rule",ref:n,config:o.data}),e.inputs.length===0)this.wireFromTriggers(e);else this.wireInputs(e,e.inputs)}buildGate(e,t){if(e.inputs.length===0)this.issue(`${e.mode} needs at least one input`,e);if(e.mode==="not"&&e.inputs.length>1)this.issue("not takes exactly one input",e);this.nodes.push({id:t,type:"gate",mode:e.mode}),this.wireInputs(e,e.inputs)}buildAction(e,t){let r=e.action;if(!F2(r)){this.issue(Vc("an action",r,Object.keys(Kr)),e);return}let n=Kr[r];for(let a of hi(e.params,n,r))this.issue(a,e);let o=m0.safeParse(e.params??{}),s=K(p(),qe).safeParse(o.success?o.data:{}),i={id:t,type:"action",action:r};if(s.success&&Object.keys(s.data).length>0)i.params=s.data;if(this.nodes.push(i),e.inputs.length>0)this.wireInputs(e,e.inputs);if(U2(e)){for(let a of e.approve)this.visit(a),this.connect(e,"approve",a);for(let a of e.deny)this.visit(a),this.connect(e,"deny",a)}}hasIncoming(e){let t=this.ids.get(e);return this.edges.some((r)=>r.to===t)}compile(){let e=this.spec;for(let[i,a]of Object.entries(e.steps??{})){if(!B2.test(i)){this.issue(`${i} is not a usable step id`);continue}if(this.taken.has(i)){this.issue(`two steps share the id ${i}`);continue}this.ids.set(a,i),this.taken.add(i)}let t=e.on===void 0?[]:Array.isArray(e.on)?e.on:[e.on],r=[],n=[];for(let i of t){let a=p().safeParse(i),c=M2.safeParse(i);if(a.success)r.push(a.data);else if(c.success)n.push(c.data)}if(r.length>0)this.triggers.push({kind:"trigger",on:r,inputs:[]});this.triggers.push(...n);for(let i of Object.values(e.steps??{}))if(i.kind==="trigger"&&!this.triggers.includes(i))this.triggers.push(i);if(this.triggers.length===0)this.issue("add `on`, the events or schedule that start it");for(let i of this.triggers)this.visit(i);if(e.check!==void 0){let i=sm(e.check)?{step:e.check.step,port:e.check.port}:{step:e.check,port:"pass"};if(!sm(e.check)&&(i.step.kind==="trigger"||i.step.kind==="action"))this.issue("`check` takes a check, a gate or one of their outputs; a trigger or action has no Passes and Doesn't pass");this.visit(i.step);for(let a of e.pass??[])this.visit(a),this.connect(i.step,i.port,a);for(let a of e.fail??[])this.visit(a),this.connect(i.step,V2(i.port),a)}else if((e.pass??[]).length>0||(e.fail??[]).length>0)this.issue("`pass` and `fail` need a `check`; use `run` for actions with no check");for(let i of e.run??[]){this.visit(i);for(let a of this.triggers)this.connect(a,"pass",i)}let o=Object.values(e.steps??{});for(let i of o)this.visit(i);for(let i of o)if(i.kind==="action"&&!this.hasIncoming(i))this.wireFromTriggers(i);if(this.issues.length>0)return null;let s=ut.safeParse({id:this.key,name:e.name??this.key,version:1,nodes:this.nodes,edges:this.edges});if(!s.success){for(let i of s.error.issues)this.issue(So(i));return null}return s.data}}function im(e){let t=[],r=[];for(let[n,o]of Object.entries(e)){let s=new g0(n,o.spec),i=s.compile();if(t.push(...s.issues),i&&s.issues.length===0)r.push(i)}return t.length>0?{ok:!1,issues:t,definitions:r}:{ok:!0,definitions:r}}function y0(e){let t=q2.safeParse(e.default);if(!t.success)return{ok:!1,issues:t.error.issues.map((r)=>({workflow:String(r.path[0]??""),message:r.message})),definitions:[]};return im(t.data)}function K2(e,t){let r=new Map(e.nodes.map((i)=>[i.id,i])),n=new Set([t]),o=[t],s=[];for(let i=o.shift();i!==void 0;i=o.shift())for(let a of e.edges){if(a.from!==i||n.has(a.to))continue;n.add(a.to),o.push(a.to);let c=r.get(a.to);if(c?.type==="action")s.push(nx(c.action,c.params??{}))}return s}function H2(e){return e.nodes.flatMap((t)=>{if(t.type!=="trigger"||!t.schedule?.every)return[];let r=Zx(t.schedule.timezone),n=K2(e,t.id),o=u0(t.schedule);return[{nodeId:t.id,summary:mi({every:t.schedule.every,timezone:t.schedule.timezone}),timezone:r.zone,defaulted:r.defaulted,description:n.length>0?`${o} Then Tripwire ${Ic(n)}.`:`${o} No action runs after it.`}]})}function w0(e,t){return e.map((r)=>{let n=Mx(r,t?{catalog:t}:{});return{id:r.id,name:r.name,valid:!n.some((o)=>o.severity==="error"),issues:n,schedules:H2(r)}})}var am=new Set(["url","signingSecret","urlSet","signingSecretSet"]);function G2(e){return e.type==="action"&&(e.action==="webhook"||e.action==="discord")}function b0(e){return{...e,nodes:e.nodes.map((t)=>{if(!G2(t))return t;let r={...t.params??{}};for(let n of["url","signingSecret"]){let o=r[n];if(o!==void 0&&o!==""&&o!==null)r[n]="",r[`${n}Set`]=!0}return{...t,params:r}})}}var Xle=k(qe),Qle=K(p(),qe);var ede=p(),tde=K(p(),qe);var rde=w({}).strict();function J2(e){let t=e.normalize("NFKD").replace(/[̀-ͯ]/g,"").toLowerCase().split(/[^a-z0-9]+/).filter(Boolean),r="";for(let n of t){let o=r?`${r}-${n}`:n;if(o.length>48)break;r=o}return r||t[0]?.slice(0,48)||"workflow"}function Dn(e,t=new Map){let r=new Set,n=new Map;for(let o of e){let s=t.get(o.id);if(s&&!r.has(s))r.add(s),n.set(o.id,s)}for(let o of e){if(n.has(o.id))continue;let s=J2(o.name||o.id),i=s;for(let a=2;r.has(i);a++)i=`${s}-${a}`;r.add(i),n.set(o.id,i)}return n}function Zc(e,t,r={}){let n=new Set(t.map((c)=>c.id)),o=new Set,s=new Map;for(let c of e){let u=r[c.id];if(u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"mapping"})}for(let c of e)if(!s.has(c.id)&&n.has(c.id)&&!o.has(c.id))o.add(c.id),s.set(c.id,{key:c.id,id:c.id,by:"id"});let i=new Map([...Dn(t)].map(([c,u])=>[u,c]));for(let c of e){let u=i.get(c.id);if(!s.has(c.id)&&u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"name"})}let a=e.map((c)=>s.get(c.id)??{key:c.id,id:c.id,by:"new"});return{definitions:e.map((c,u)=>({...c,id:a[u]?.id??c.id})),matches:a}}var _0=new Set(["cycle","gate-input","not-input","trigger-input","wrong-output","no-outputs","missing-step","duplicate-id"]);function v0(e){return Y2(e).issues.filter((t)=>_0.has(t.rule))}function Y2(e,t=Ge){let r=Hf(e,{catalog:t,stage:"enable"}),n=r.results.filter((o)=>o.severity==="error");if(!r.definition)return{runnable:!1,canTurnOn:!1,issues:n};return{runnable:!n.some((o)=>_0.has(o.rule)),canTurnOn:n.length===0,issues:n}}var Bc={on:"Live",off:"Off","cant-run":"Can't run","needs-fixes":"Needs fixes","cant-turn-on":"Can't turn on"};function S0(e){if(e.enabled){if(!e.runnable)return"cant-run";return e.canTurnOn?"on":"needs-fixes"}return e.canTurnOn?"off":"cant-turn-on"}var gi=vf(()=>w({type:p().optional(),const:ne().optional(),enum:k(ne()).optional(),items:gi.optional(),properties:K(p(),gi).optional(),required:k(p()).optional(),anyOf:k(gi).optional(),oneOf:k(gi).optional()})),Hc=K(p(),qe),X2=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function Mn(e){return X2.test(e)?e:JSON.stringify(e)}function Kc(e,t){let r=e.anyOf??e.oneOf;if(r)return r.map((n)=>Kc(n,t)).join(" | ");if(e.const!==void 0)return JSON.stringify(e.const);if(e.enum)return e.enum.map((n)=>JSON.stringify(n)).join(" | ");switch(e.type){case"string":return"string";case"integer":case"number":return"number";case"boolean":return"boolean";case"array":return`readonly (${e.items?Kc(e.items,t):"unknown"})[]`;case"object":{let n=Object.entries(e.properties??{});if(n.length===0)return"Record<never, never>";let o=`${t} `;return`{
|
|
240
|
-
${n.map(([i,a])=>`${o}readonly ${
|
|
239
|
+
${Sx}`;var IM=w({total:P(),weeks:v(v(P().min(0).max(4)))}),AM=w({accountAgeDays:P(),location:p().nullable(),emailVerified:L(),twoFactor:L()}),RM=w({mergedPrs:P(),openPrs:P(),comments:P(),hiddenByAutomod:P()}),CM=z(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),zM=w({id:p(),kind:CM,title:p(),detail:p(),at:de.datetime()}),Uce=w({handle:p(),initial:p(),joinedDaysAgo:P(),publicRepos:P(),followers:P(),watchlisted:L(),contributions:IM,details:AM,repoStats:RM,activity:v(zM)});var NM=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],kx=p().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),LM=At("kind",[w({kind:C("last"),window:kx}),w({kind:C("lastCount"),window:kx}),w({kind:C("trimmedLength")}),w({kind:C("nonLatinRatio")}),w({kind:C("letterCount")})]),jM=ee([P(),p(),L()]),DM=ee([jM,v(ee([P(),p()]))]),xx=w({kind:z(NM),args:v(DM)}),MM=ee([xx.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),w({kind:C("not"),args:pj([xx])})]),qM=w({when:w({id:p().min(1),transform:LM.optional()}),comparison:MM,severity:z(["low","medium","high"])});var Kce=w({id:p().regex(/^custom-[a-z0-9][a-z0-9-]*$/,"id must be custom-<kebab-slug>"),name:p().min(1).max(80),enabled:L(),definition:qM}),Hce=w({});var Xce=z(["prod","eval","dev"]),Qce=z(["railway","openrouter","planetscale"]);var nue=z(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var sr={installationId:p(),forge:ti},oue=At("status",[w({...sr,status:C("claimable"),account:p().nullable(),repoCount:P(),stateOrg:w({id:p(),slug:p(),name:p()}).nullable()}),w({...sr,status:C("claimed-by-your-org"),orgSlug:p()}),w({...sr,status:C("processing")}),w({...sr,status:C("recovering")}),w({...sr,status:C("unreadable")}),w({...sr,status:C("missing"),recoverable:L()}),w({...sr,status:C("not-for-tripwire")}),w({...sr,status:C("not-yours"),recoverable:L()}),w({...sr,status:C("token-expired")}),w({...sr,status:C("not-admin"),account:p().nullable()})]);var FM=/^(Too (small|big)|Invalid (input|option|string|number|key|element|value)|Unrecognized key)/,UM=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","a group of settings"]]);function Nc(e,t){return`${e} ${t}${e===1?"":"s"}`}function WM(e){return e.map(String).join(".")}function VM(e,t){switch(e.code){case"too_small":{if(e.origin==="array"||e.origin==="set")return`${t} needs at least ${Nc(e.minimum,"item")}`;if(e.origin==="string")return e.minimum===1?`${t} cannot be empty`:`${t} needs at least ${Nc(e.minimum,"character")}`;return e.inclusive===!1?`${t} must be more than ${e.minimum}`:`${t} must be ${e.minimum} or more`}case"too_big":{if(e.origin==="array"||e.origin==="set")return`${t} can have at most ${Nc(e.maximum,"item")}`;if(e.origin==="string")return`${t} can be at most ${Nc(e.maximum,"character")}`;return e.inclusive===!1?`${t} must be less than ${e.maximum}`:`${t} must be ${e.maximum} or less`}case"invalid_type":return/received undefined/.test(e.message)?`${t} is missing`:`${t} must be ${UM.get(e.expected)??e.expected}`;case"invalid_value":return e.values.length===1?`${t} must be ${String(e.values[0])}`:`${t} must be one of ${e.values.map(String).join(", ")}`;case"invalid_format":return`${t} is not a valid ${e.format}`;case"invalid_union":return`${t} is not in a form Tripwire can read`;case"unrecognized_keys":return`${e.keys.join(", ")} ${e.keys.length===1?"is not a setting":"are not settings"}`;default:return null}}function $o(e,t){let r=t?.(e.path)??null,n=r??WM(e.path);if(FM.test(e.message)){let o=VM(e,n||"This setting");if(o)return o}if(r)return`${r} is not valid: ${e.message}`;return n?`${n}: ${e.message}`:e.message}var Uf=z(["admin","member"]),ZM=new Set(["activity","analytics","api","dev","dither-kit","invite","login","moderation","oauth","onboarding","queue","rules","runs","workflows","admin","app","auth","blog","brand","changelog","dashboard","docs","help","home","legal","new","pricing","privacy","settings","signup","status","support","terms","www","tripwire","boring","boringsoftware"]),BM=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,cue=p().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(BM,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!ZM.has(e),{message:"this name is reserved"});var uue=z(["User","Organization"]),lue=w({role:Uf,maxUses:P().int().min(1).max(1000).default(1),expiresInDays:P().int().min(1).max(90).default(7)});var Wf=["moderation","activity","rules","workflows","responses","analytics","connections","members","settings"],Vf=z(Wf),$x=["read","manage"],ir=z($x),mue=Pj([Vf,":",ir]),hue=Wf.flatMap((e)=>$x.map((t)=>`${e}:${t}`));var Tx=w({moderation:ir.optional(),activity:ir.optional(),rules:ir.optional(),workflows:ir.optional(),responses:ir.optional(),analytics:ir.optional(),connections:ir.optional(),members:C("read").optional(),settings:C("read").optional()}).strict().refine((e)=>Object.values(e).some(Boolean),{message:"pick at least one area"}),KM=kf(Vf,v(ir).min(1));var gue=kf(Vf,ir);function HM(e){let t={};for(let r of Wf){let n=e[r];if(n?.includes("manage"))t[r]="manage";else if(n?.includes("read"))t[r]="read"}return t}var GM=new Set(["admin","member","owner"]),Zf=p().trim().toLowerCase().min(2,"use at least 2 characters").max(32,"use at most 32 characters").regex(/^[a-z][a-z0-9-]*[a-z0-9]$/,"use lowercase letters, numbers and hyphens, starting with a letter").refine((e)=>!GM.has(e),{message:"this name is taken by a built-in role"}),yue=w({name:Zf,scopes:Tx}),Ex=KM.refine((e)=>Tx.safeParse(HM(e)).success,{message:"this role grants access a custom role cannot hold"}),wue=w({organizationId:p().min(1),role:Zf,permission:Ex}).strict(),bue=w({organizationId:p().min(1),roleName:p().min(1).optional(),roleId:p().min(1).optional(),data:w({permission:Ex}).strict()}).strict(),_ue=ee([Uf,Zf]);var JM=z(["public","private"]),Ix=w({name:p(),className:p()}),YM=w({name:p(),description:p(),visibility:JM,openIssues:P(),openPulls:P(),flagged:P(),updatedAt:de.datetime()}),Px=w({kind:Or,number:P(),title:p(),status:ai,author:p(),openedAt:de.datetime(),comments:P(),flagged:P(),labels:v(Ix)}),XM=w({state:z(["Hidden","Removed"]),rule:p()}),QM=w({id:p(),author:p(),body:p(),createdAt:de.datetime(),flag:XM.optional()}),Ox=w({kind:Or,number:P(),title:p(),status:ai,author:p(),openedAt:de.datetime(),labels:v(Ix),body:p(),comments:v(QM),branch:p().optional(),baseBranch:p().optional()}),xue=w({repos:v(YM),issues:v(Px),pulls:v(Px),issueDetails:K(p(),Ox),pullDetails:K(p(),Ox)});var Eue=new Set(rx.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var eq=z(["removed","hidden","banned","dismissed","required-review"]),tq=z(["actioned","dismissed","appealed","reversed"]),rq=z(["automod","report","manual"]),nq=w({kind:rq,detail:p(),reporter:ko.optional()}),oq=w({at:de.datetime(),label:p(),by:p()}),sq=w({id:p(),type:xo,repoFullName:p(),number:P(),content:p(),threadKind:Or,commentId:p()}),Rue=w({id:p(),label:p(),reason:Mf,severity:qf,action:eq,status:tq,author:ko,moderator:ko.nullable(),caughtBy:nq,at:de.datetime(),snapshot:L(),items:v(sq),history:v(oq)}),Cue=z(["what","reason","caught"]),To=z(["pass","block","needs_review"]);var Ax=z(["queued","running","paused","completed","failed","closed"]),jue=Ax.options,Due=z(["checking","did-not-finish","pass","block","needs_review","closed-before-review","ran"]),Lc={checking:"Checking","did-not-finish":"Did not finish",pass:"Passed",block:"Blocked",needs_review:"Waiting for human review","closed-before-review":"Closed before review",ran:"Ran"},Mue=Ax.nullable().catch(null),que=To.nullable().catch(null);var Rx=z(["event","pass","fail","approve","deny"]),Wue=z(["event","result","decision"]),Vue=z(["identity","not"]),dt={event:{type:"event",fn:"identity",label:"Event"},pass:{type:"result",fn:"identity",label:"Passes"},fail:{type:"result",fn:"not",label:"Doesn't pass"},approve:{type:"decision",fn:"identity",label:"Approved"},deny:{type:"decision",fn:"not",label:"Blocked"}},iq={identity:{event:"event",result:"result",decision:"decision"},not:{result:"result",decision:"decision"}};function aq(e,t){return iq[e][t]??null}function cq(e){let t=dt[e];return aq(t.fn,t.type)}var ui={event:dt.event.label,pass:dt.pass.label,fail:dt.fail.label,approve:dt.approve.label,deny:dt.deny.label},Bf={event:dt.event.type,pass:dt.pass.type,fail:dt.fail.type,approve:dt.approve.type,deny:dt.deny.type};function Eo(e){let t=dt[e];if(t.type==="event")return"neutral";return t.fn==="not"?"fail":"ok"}var Zue={event:Eo("event"),pass:Eo("pass"),fail:Eo("fail"),approve:Eo("approve"),deny:Eo("deny")},uq={trigger:[],rule:["event","result","decision"],gate:["result"],action:["event","result","decision"]},lq={"send-to-moderation":["approve","deny"]},dq=Rx.options;function Cx(e){return uq[e]}function jc(e,t){let r=cq(t);return r!==null&&Cx(e).includes(r)}function ci(e){return dq.filter((t)=>jc(e,t))}var Bue={trigger:{accepts:ci("trigger")},rule:{accepts:ci("rule")},gate:{accepts:ci("gate")},action:{accepts:ci("action")}};function li(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?lq[e.action]:[];default:return[]}}function jn(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var Dx={schema:{severity:"error",stage:"structure"},"no-trigger-events":{severity:"error",stage:"structure"},"duplicate-id":{severity:"error",stage:"structure"},"missing-step":{severity:"error",stage:"structure"},"no-trigger":{severity:"error",stage:"structure"},"trigger-input":{severity:"error",stage:"structure"},"gate-input":{severity:"error",stage:"structure"},"no-outputs":{severity:"error",stage:"structure"},"wrong-output":{severity:"error",stage:"structure"},"not-input":{severity:"error",stage:"structure"},"orphan-step":{severity:"error",stage:"structure"},cycle:{severity:"error",stage:"structure"},"no-action":{severity:"error",stage:"enable"},"schedule-config":{severity:"error",stage:"enable"},"action-params":{severity:"error",stage:"enable"},"schedule-mixed":{severity:"error",stage:"enable"},"schedule-needs-change-request":{severity:"error",stage:"enable"},"unknown-rule":{severity:"error",stage:"enable"},"rule-unavailable":{severity:"warning",stage:"enable"},"rule-config":{severity:"error",stage:"enable"},"removed-step":{severity:"error",stage:"enable"},"review-targets":{severity:"error",stage:"enable"},"stale-reviewer":{severity:"warning",stage:"enable"},"dead-end":{severity:"warning",stage:"enable"}},Dn=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),di=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function Hf(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function pq(e){let t=e.trim();return Hf(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function Mx(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Dc(e,t=Ge){switch(e.type){case"trigger":return"Trigger";case"rule":{let[r]=e.ref.split("@");return Ge.find((n)=>n.ruleId===r)?.name??t.find((n)=>n.ruleId===r)?.name??e.ref}case"gate":return ox.find((r)=>r.mode===e.mode)?.name??e.mode;case"action":return sx.find((r)=>r.action===e.action)?.name??`${e.action.charAt(0).toUpperCase()}${e.action.slice(1)}`;default:return"Step"}}function qx(e,t,r,n){if(jc(e.type,t))return null;if(e.type==="trigger")return{rule:"trigger-input",message:n?`${r} takes no inputs, but ${n} connects to it`:`${r} takes no inputs`};let o=n?` from ${n}`:"",s=Bf[t];return{rule:"gate-input",message:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function Fx(e,t,r){let n=li(e);if(n.length===0)return{rule:"no-outputs",message:`${r} has no outputs`};if(!n.includes(t))return{rule:"wrong-output",message:`${r} has no ${ui[t]} output`};return null}function fq(e){return Bf[e]==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function Gf(e,t=Ge){let r=new Map,n=new Map;for(let o of e.nodes){let s=Dc(o,t),i=(r.get(s)??0)+1;r.set(s,i),n.set(o.id,i===1?s:`${s} ${i}`)}return n}function mq(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},Dn(e.id)];return[Dn(e.id)]}function hq(e){let t=[],r=new Set;for(let o of e.def.nodes){if(r.has(o.id))t.push({nodeId:o.id,message:"Another step uses the same id. Rename one.",fixes:[]});r.add(o.id)}let n=new Set;for(let o of e.def.edges){if(n.has(o.id))t.push({edgeId:o.id,message:"Another connection uses the same id. Rename one.",fixes:[]});n.add(o.id)}return t}function gq(e){return e.def.edges.flatMap((t)=>[t.from,t.to].filter((r)=>!e.byId.has(r)).map(()=>({edgeId:t.id,message:"A connection points to a step that is gone.",fixes:[Dn(t.id)]})))}function yq(e){return e.def.nodes.some((t)=>t.type==="trigger")?[]:[{message:"Add a trigger to start it.",fixes:[{label:"Add trigger",edit:{type:"add-trigger"}}]}]}function Ux(e,t){let r=e.byId.get(t.from),n=e.byId.get(t.to);return r&&n?{source:r,target:n}:null}function zx(e){return(t)=>t.def.edges.flatMap((r)=>{let n=Ux(t,r);if(!n||Fx(n.source,jn(n.source,r.when),""))return[];let o=jn(n.source,r.when);if(qx(n.target,o,t.name(n.target),t.name(n.source))?.rule!==e)return[];return[{edgeId:r.id,nodeId:n.target.id,message:e==="gate-input"?fq(o):"It takes no inputs.",fixes:e==="gate-input"?mq(r,o):[Dn(r.id)]}]})}function Nx(e){return(t)=>t.def.edges.flatMap((r)=>{let n=Ux(t,r);if(!n)return[];if(Fx(n.source,jn(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=li(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${ui[jn(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},Dn(r.id)]:[Dn(r.id)]}]})}function wq(e){return e.def.nodes.flatMap((t)=>{let r=e.incoming.get(t.id)??[],[n]=r;if(t.type!=="gate"||t.mode!=="not"||r.length<2||!n)return[];return[{nodeId:t.id,message:"It takes one input. Keep one.",fixes:[{label:"Keep first input",edit:{type:"keep-one-input",nodeId:t.id,edgeId:n.id}}]}]})}function bq(e){let t=e.def.nodes.filter((n)=>n.type==="trigger"),[r]=t;return e.def.nodes.flatMap((n)=>{if(n.type==="trigger"||(e.incoming.get(n.id)??[]).length>0)return[];let o=t.length===1&&r&&jc(n.type,"event")?[{label:"Connect",edit:{type:"connect",from:r.id,to:n.id}}]:[];return[{nodeId:n.id,message:"Nothing runs it. Connect it or delete it.",fixes:[...o,di(n.id)]}]})}function _q(e){let t=new Map,r=[],n=[],o=(s)=>{t.set(s,"visiting"),r.push(s);for(let i of e.outgoing.get(s)??[]){let a=t.get(i.to);if(a==="visiting"){let u=r.slice(r.indexOf(i.to)).flatMap((l)=>{let d=e.byId.get(l);return d?[e.name(d)]:[]});n.push({edgeId:i.id,nodeId:i.to,message:u.length===1?"It connects to itself.":`It loops back through ${Mx(u.slice(1))}.`,fixes:[Dn(i.id)]})}else if(a===void 0&&e.byId.has(i.to))o(i.to)}r.pop(),t.set(s,"done")};for(let s of e.def.nodes)if(!t.has(s.id))o(s.id);return n}function Sq(e){return Wx(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function vq(e){let t=Sq(e),r=e.def.nodes.find((n)=>n.type==="trigger");return e.def.nodes.some((n)=>n.type==="action"&&t.has(n.id))?[]:[{message:"Add an action after the trigger.",fixes:r?[{label:"Add action",intent:{type:"add-next-step",nodeId:r.id,port:"event"}}]:[]}]}var kq={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function xq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!Rc(t))return[];let r=ex(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${Mx(r.map((o)=>kq[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var $q={"remove-label":{schema:Kr,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:Pc,field:"message",message:"Write the message.",label:"Write message"}},Tq=new Set(["discord.com","discordapp.com","ptb.discord.com","canary.discord.com"]),Eq=w({url:p().optional(),urlSet:L().optional()});function Pq(e,t){let r=Eq.safeParse(t??{});if(!r.success)return!1;let{url:n,urlSet:o}=r.data;if(n===void 0||n==="")return o===!0;let s=Js({protocol:/^https$/}).safeParse(n);if(!s.success)return!1;if(e==="webhook")return!0;let i=new URL(s.data);return Tq.has(i.hostname)&&i.pathname.startsWith("/api/webhooks/")}var Oq={webhook:{message:"Set the webhook URL. It must use HTTPS.",label:"Set URL"},discord:{message:"Set the Discord webhook URL.",label:"Set URL"}};function Kf(e,t,r,n){return{nodeId:e,message:t,fixes:[{label:r,intent:{type:"focus-field",nodeId:e,field:n}}]}}function Iq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];if(t.action==="webhook"||t.action==="discord"){let o=Oq[t.action];return Pq(t.action,t.params)?[]:[Kf(t.id,o.message,o.label,"url")]}if(t.action==="label")return Kr.safeParse(t.params??{}).success?[]:[Kf(t.id,"Pick the labels to add.","Pick labels","labels")];let r=t.action==="remove-label"||t.action==="post-comment"?$q[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[Kf(t.id,r.message,r.label,r.field)]})}function Aq(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&Rc(t)&&t.kinds.length>1?[{nodeId:t.id,message:"It cannot run on a schedule and on events. Pick one.",fixes:[{label:"Pick one",intent:{type:"focus-field",nodeId:t.id,field:"kinds"}}]}]:[])}var Rq=new Set(["block","send-to-moderation"]);function Wx(e,t){let r=new Set,n=[...t];for(let o=n.pop();o!==void 0;o=n.pop()){if(r.has(o))continue;r.add(o),n.push(...(e.outgoing.get(o)??[]).map((s)=>s.to))}return r}function Cq(e){let t=Wx(e,e.def.nodes.filter(Rc).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&Rq.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[di(r.id)]}]:[])}function Jf(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function zq(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!Jf(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[di(t.id)]}]:[])}function Nq(e){return e.def.nodes.flatMap((t)=>{let r=t.type==="rule"?Jf(e,t.ref)?.unavailable:null;return r?[{nodeId:t.id,message:r,fixes:[]}]:[]})}function Lq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=Jf(e,t.ref),n=r?.configSchema.safeParse(t.config);if(!(r&&n)||n.success)return[];let o=n.error.issues[0],s=o?.path[0];return[{nodeId:t.id,message:o?`Fix this setting: ${Hf($o(o))}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var jq={comment:"Customize sets the verdict comment now"};function Dq(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&Kk(t.action)?[{nodeId:t.id,message:`This step was removed. ${pq(jq[t.action])}`,fixes:[di(t.id)]}]:[])}function Mq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=Gk.safeParse(t.params??{});if(r.success)return[];let n=r.error.issues[0],o=n?.code==="custom"&&n.path.length===0&&n.message.startsWith("add"),s=n?.path[0]==="teamReviewers"?"teamReviewers":"reviewers";return[{nodeId:t.id,message:o?"Pick people or teams to ask.":n?.message?`Fix the reviewers: ${Hf(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function qq(e){let t=e.reviewers;if(!t)return[];return e.def.nodes.flatMap((r)=>{if(r.type!=="action"||r.action!=="request-review")return[];let n=oi.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>Hk(s,o))).map((o)=>({nodeId:r.id,message:`Remove ${o.login}. They can no longer review this repo.`,fixes:[{label:"Remove",edit:{type:"remove-reviewer",nodeId:r.id,reviewer:o}}]}))})}function Fq(e){return e.def.nodes.flatMap((t)=>{let[r]=li(t);if(t.type==="action"||!r||(e.outgoing.get(t.id)??[]).length>0||t.type!=="trigger"&&(e.incoming.get(t.id)??[]).length===0)return[];return[{nodeId:t.id,message:"Nothing runs after it.",fixes:[{label:"Add step",intent:{type:"add-next-step",nodeId:t.id,port:r}},di(t.id)]}]})}var Uq=[{rule:"duplicate-id",check:hq},{rule:"missing-step",check:gq},{rule:"no-trigger",check:yq},{rule:"trigger-input",check:zx("trigger-input")},{rule:"gate-input",check:zx("gate-input")},{rule:"no-outputs",check:Nx("no-outputs")},{rule:"wrong-output",check:Nx("wrong-output")},{rule:"not-input",check:wq},{rule:"orphan-step",check:bq},{rule:"cycle",check:_q},{rule:"no-action",check:vq},{rule:"schedule-config",check:xq},{rule:"action-params",check:Iq},{rule:"schedule-mixed",check:Aq},{rule:"schedule-needs-change-request",check:Cq},{rule:"unknown-rule",check:zq},{rule:"rule-unavailable",check:Nq},{rule:"rule-config",check:Lq},{rule:"removed-step",check:Dq},{rule:"review-targets",check:Mq},{rule:"stale-reviewer",check:qq},{rule:"dead-end",check:Fq}];function Lx(e,t){let r=new Map;for(let n of e)r.set(n[t],[...r.get(n[t])??[],n]);return r}function Yf(e,t,r=new Map){return{rule:e,severity:Dx[e].severity,step:t.nodeId?r.get(t.nodeId)??"Step":"Workflow",...t}}function jx(e,t,r,n){let o=Gf(e,t),s={def:e,byId:new Map(e.nodes.map((c)=>[c.id,c])),incoming:Lx(e.edges,"to"),outgoing:Lx(e.edges,"from"),name:(c)=>o.get(c.id)??Dc(c,t),catalog:t,reviewers:n},i=Uq.flatMap(({rule:c,check:u})=>r==="structure"&&Dx[c].stage!=="structure"?[]:u(s).map((l)=>Yf(c,l,o)));return i.some((c)=>c.rule==="no-action")?i.filter((c)=>c.rule!=="dead-end"||s.byId.get(c.nodeId??"")?.type!=="trigger"):i}var Wq=w({nodes:v(fe({id:p().catch(""),type:p().catch(""),kinds:v(p()).optional().catch(void 0)}))});function Vq(e,t){let r=new Map,n=new Map;for(let o of e){let s=Df.safeParse(o),i=s.success?Dc(s.data,t):o.type?`${o.type.charAt(0).toUpperCase()}${o.type.slice(1)}`:"Step",a=(r.get(i)??0)+1;r.set(i,a),n.set(o.id,a===1?i:`${i} ${a}`)}return n}function Zq(e,t,r){return e.issues.map((n)=>{let[o,s]=n.path,i=o==="nodes"&&Number.isInteger(s)?t[Number(s)]:void 0;return Yf("schema",{nodeId:i||void 0,message:"A setting is not valid.",fixes:[]},r)})}function Xf(e,t={}){let r=t.catalog??Ge,n=t.stage??"enable",o=(f)=>[...f].sort((m,h)=>Number(m.severity==="warning")-Number(h.severity==="warning")),s=lt.safeParse(e);if(s.success)return{definition:s.data,results:o(jx(s.data,r,n,t.reviewers))};let i=Wq.safeParse(e),a=i.success?i.data.nodes:[],c=a.filter((f)=>f.type==="trigger"&&f.kinds?.length===0),u=lt.safeParse({...e,nodes:a.map((f)=>c.includes(f)?{...f,kinds:["push"]}:f)});if(c.length===0||!u.success)return{definition:null,results:Zq(s.error,a.map((f)=>f.id),Vq(a,r))};let l=Gf(u.data,r),d=c.map((f)=>Yf("no-trigger-events",{nodeId:f.id,message:"Pick when it runs.",fixes:[{label:"Pick events",intent:{type:"focus-field",nodeId:f.id,field:"kinds"}}]},l));return{definition:null,results:o([...d,...jx(u.data,r,n,t.reviewers)])}}function Vx(e,t={}){return Xf(e,t).results}var Bq={pass:Lc.pass,block:Lc.block,needs_review:Lc.needs_review},Kq=To.nullable().catch(null);function Zx(e){let t=Kq.parse(e??null);return t?Bq[t]:null}var cle=v(lt).catch([]),ule=w({workflows:v(w({id:p(),name:p()})),issues:v(w({workflowId:p(),messages:v(p())})).optional()}).catch({workflows:[]}),lle=w({decision:z(["approve","deny"])}).nullable().catch(null);var dle=w({pausedNodeId:p()}).nullable().catch(null);var em=p().min(1).max(100).regex(/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/),Qf=z(["default","on","off"]),hle=z(["pending","synced","failed"]),gle=z(["default","rule","group","rollout","unknown"]);var yle=fe({type:z(["user_id","email","property"]),operator:z(["equals","contains","starts_with","ends_with","in","not_in","exists","not_exists"]),field:p().optional(),value:p().optional(),values:v(p()).optional(),enabled:L(),batch:L(),batchValues:v(p()).optional()}),Hq=fe({id:p(),key:p(),name:p().nullish(),description:p().nullish(),status:z(["active","inactive","archived"]).optional(),defaultValue:L().optional(),rules:v(Ie).nullish()}),wle=v(Hq),ble=fe({field:p()});var _le=w({flagKey:em,from:Qf,to:Qf}),Sle=z(["access.approve","access.decline","flag.override","flag.sync_retry","account.timezone","account.rerun_cooldown","account.platform_admin","session.revoke","session.revoke_all","agent.revoke","user.ban","user.unban","user.delete","impersonation.start","impersonation.stop","org.member_role"]),vle=K(p(),ee([p(),P(),L(),wo()])),Kt=p().min(1).max(200),kle=w({userId:Kt}),xle=w({userId:Kt,flagKey:em,choice:Qf}),$le=w({userId:Kt,flagKey:em}),Tle=w({userIds:v(Kt).min(1).max(100),decision:z(["approve","reject"])}),Ele=w({userId:Kt,timezone:Ic.nullable()}),Ple=w({userId:Kt,exempt:L()}),Ole=w({userId:Kt,isPlatformAdmin:L(),confirm:p().min(1).max(200)}),Ile=w({userId:Kt,sessionId:p().min(1).max(200)}),Ale=w({userId:Kt,clientId:p().min(1).max(200)}),Gq=500,Rle=w({userId:Kt,reason:p().trim().min(1).max(Gq),endsAt:de.date().nullable()}),Cle=w({userId:Kt,confirm:p().min(1).max(200)}),Jq=p().min(1).max(200).regex(/^[\w-]+$/),zle=w({anonId:Jq}),tt=ee([p(),P()]).transform(String).nullish().catch(null),Mc=ee([P(),p().regex(/^-?\d+(\.\d+)?$/)]).transform(Number).nullish().catch(null),Nle=w({first_visit:tt,last_visit:tt,total_sessions:Mc,total_pageviews:Mc,country:tt,country_name:tt,device_type:tt,browser_name:tt,os_name:tt}),Lle=w({session_id:tt,session_start:tt,first_visit:tt,duration:Mc,page_views:Mc,path:tt,entry_page:tt,country:tt,country_name:tt,browser_name:tt,device_type:tt}),jle=w({data:v(w({parameter:p().optional(),data:v(Ie).optional()})).optional()}),Dle=fe({message:p().optional(),error:p().optional(),json:fe({message:p().optional()}).optional()});var Yq=w({ruleId:p(),summary:p()}),Ule=w({version:C(1),verdict:To,org:p(),repo:p(),changeRequest:w({number:P().int(),title:p(),author:p()}),firedRules:v(Yq),runUrl:p(),timestamp:p()});var Wle=w({content:p(),embeds:v(w({title:p(),url:p(),description:p(),color:P().int()}))});function Po(e,t){return{kind:"output",step:e,port:t}}function rm(e,t,r,n){let o={kind:"check",rule:e,config:t??{},version:r?.version,inputs:n,get passes(){return Po(o,"pass")},get fails(){return Po(o,"fail")},after:(...s)=>rm(e,t,r,s)};return o}function tm(e,t){let r={kind:"gate",mode:e,inputs:t,get passes(){return Po(r,"pass")},get fails(){return Po(r,"fail")}};return r}function ar(e,t,r=[]){return{kind:"action",action:e,params:t,inputs:r,after:(...n)=>ar(e,t,n)}}function Bx(e,t){let r={kind:"action",action:"send-to-moderation",params:void 0,approve:e.approve??[],deny:e.deny??[],inputs:t,get approved(){return Po(r,"approve")},get denied(){return Po(r,"deny")},after:(...n)=>Bx(e,n)};return r}function Kx(){return{check(e,...t){let[r,n]=t;return rm(e,r,n,[])},customCheck(e,t){return rm(e,t,void 0,[])},allOf(...e){return tm("all-of",e)},anyOf(...e){return tm("any-of",e)},not(e){return tm("not",[e])},trigger(...e){return{kind:"trigger",on:e,inputs:[]}},schedule(e){return{kind:"trigger",on:["schedule.matched"],schedule:e,inputs:[]}},block(){return ar("block",void 0)},label(e){return ar("label",e)},removeLabel(e){return ar("remove-label",e)},requestReview(e){return ar("request-review",e)},postComment(e){return ar("post-comment",e)},lock(e){return ar("lock",e)},close(){return ar("close",void 0)},webhook(){return ar("webhook",void 0)},discord(){return ar("discord",void 0)},humanReview(e={}){return Bx(e,[])},workflow(e){return{kind:"workflow",spec:e}},workflows(e){return e}}}var Oo=["change-request.opened","change-request.updated","change-request.closed","comment.created","push"],pi=w({}),Gr={block:pi,label:Kr,"remove-label":Kr,"request-review":w({reviewers:v(ee([Ec,Nf])).optional(),teamReviewers:v(zf).optional()}),"post-comment":Pc,lock:Jk,close:pi,webhook:pi,discord:pi,"send-to-moderation":pi};var Hx=Kx();var sde=Ct*60000;function fi(e){return"n"in e}function Xq(e){return"preset"in e}var Qq={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6};function e2(e){let[t="0",r="0"]=e.split(":");return{hour:Number(t),minute:Number(r)}}function Gx(e){if(fi(e))return null;if(!Xq(e))return e.cron.trim();if(e.preset==="hourly")return`${e.minute} * * * *`;let{hour:t,minute:r}=e2(e.at);switch(e.preset){case"daily":return`${r} ${t} * * *`;case"weekdays":return`${r} ${t} * * 1-5`;case"weekly":return`${r} ${t} * * ${Qq[e.on]}`;case"monthly":return`${r} ${t} ${e.day} * *`;default:return null}}function Jx(e){return e?{zone:e,defaulted:!1}:{zone:or,defaulted:!0}}var t2={hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Yx(e){let[t,r]=t2[e.unit];return`${e.n} ${e.n===1?t:r}`}var Mn="09:00",Kc=jf.options,qc=new Map([...Kc.flatMap((e,t)=>[e,`${e}s`,e.slice(0,3)].map((r)=>[r,t])),["tues",2],["thur",4],["thurs",4]]),r2=new Map(Object.entries({one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12})),n2=new Map(Object.entries({m:"minutes",h:"hours",d:"days",w:"weeks"})),Xx=new Map(Object.entries({min:"minutes",mins:"minutes",minute:"minutes",minutes:"minutes",hr:"hours",hrs:"hours",hour:"hours",hours:"hours",day:"days",days:"days",wk:"weeks",wks:"weeks",week:"weeks",weeks:"weeks",month:"months",months:"months"})),Qx=new Map(Object.entries({minute:"minute",hour:"hourly",day:"daily",week:"week",month:"monthly"})),nm=new Map(Object.entries({hourly:"hourly",daily:"daily",weekly:"weekly",monthly:"monthly",weekday:"weekdays",weekdays:"weekdays","mon-fri":"weekdays","monday-friday":"weekdays",weekend:"weekends",weekends:"weekends"})),o2=new Map(Object.entries({utc:or,gmt:or,z:or})),s2=["Asia/Kolkata","Europe/Kyiv","Asia/Ho_Chi_Minh","America/Argentina/Buenos_Aires"],i2=["Berlin","London","New York","Los Angeles","Chicago","Denver","Toronto","Paris","Amsterdam","Madrid","Stockholm","Tokyo","Singapore","Sydney","Kolkata","Sao Paulo"],Fc=null;function sm(e){return(e.split("/").at(-1)??e).replaceAll("_"," ")}function i0(){if(Fc)return Fc;let e=Intl.supportedValuesOf("timeZone"),t=new Map,r=new Map,n=s2.filter(ni);for(let i of[...n,...e])if(r.set(i.toLowerCase(),i),i.includes("/")&&!i.startsWith("Etc/")){let a=sm(i).toLowerCase();if(!t.has(a))t.set(a,i)}let o=i2.filter((i)=>t.has(i.toLowerCase())),s=[...t.values()].map(sm).filter((i)=>!o.includes(i)).sort((i,a)=>i.localeCompare(a));return Fc={byCity:t,byId:r,cities:[...o,...s]},Fc}function a2(e){return e.split("/").map((t)=>t.split("_").map((r)=>`${r.charAt(0).toUpperCase()}${r.slice(1)}`).join("_")).join("/")}function c2(e){let t=e.toLowerCase(),r=o2.get(t);if(r)return r;if(!t.includes("/"))return null;let n=i0().byId.get(t);if(n)return n;let o=a2(t);return ni(o)?o:null}function im(e){return i0().byCity.get(e.join(" ").toLowerCase())??null}function a0(e){if(e===or)return e;let t=sm(e);return im([t])===e?t:e}function u2(e,t){return`UTC${(new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"shortOffset"}).formatToParts(t).find((o)=>o.type==="timeZoneName")?.value??"GMT").replace(/^GMT/,"")||"+0"}`}function c0(e,t=new Date){return e===or?e:`${e}, ${u2(e,t)}`}function e0(e,t){return[...e.matchAll(t)].map((r)=>({text:r[0],lower:r[0].toLowerCase(),from:r.index,to:r.index+r[0].length}))}function Ao(e){return String(e).padStart(2,"0")}function am(e,t){return`${Ao(e)}:${Ao(t)}`}function cm(e){let r=e%100>=11&&e%100<=13?"th":["th","st","nd","rd"][e%10]??"th";return`${e}${r}`}function hi(e){return`${e.charAt(0).toUpperCase()}${e.slice(1)}`}function Ro(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Uc(e){if(e===void 0)return null;if(/^\d{1,4}$/.test(e))return Number(e);return r2.get(e)??null}function l2(e,t){let r=e[t]?.lower;if(r===void 0)return null;if(r==="noon")return{hour:12,minute:0,valid:!0,used:1};if(r==="midnight")return{hour:0,minute:0,valid:!0,used:1};let n=/^(\d{1,2})(?:[:.](\d{2}))?(am|pm|a\.m\.|p\.m\.)?$/.exec(r);if(!n)return null;let o=1,s=n[3]?.charAt(0),i=e[t+1]?.lower;if(!s&&i&&/^(am|pm|a\.m\.|p\.m\.)$/.test(i))s=i.charAt(0),o=2;let a=Number(n[1]),c=Number(n[2]??"0"),u=c<=59;if(s)u=u&&a>=1&&a<=12,a=a%12+(s==="p"?12:0);else u=u&&a<=23;return{hour:a,minute:c,valid:u,used:o}}function t0(e){let t=e?/^(\d{1,2})(st|nd|rd|th)?$/.exec(e):null;return t?Number(t[1]):null}var d2=new Set(["shorter","short","those","the","months","month"]);function Io(e,t){return{from:e.from,to:t.to}}class um{words;read={};at=0;everyAt=-1;constructor(e){this.words=e}word(e=0){return this.words[this.at+e]}lower(e=0){return this.word(e)?.lower}take(e){let t=this.word(),r=this.word(e-1);return this.at+=e,t&&r?Io(t,r):{from:0,to:0}}run(){while(this.at<this.words.length&&!this.read.unknown)if(!this.step()){let e=this.lower()==="in"&&this.word(1)?this.word(1):this.word();if(e)this.read.unknown={from:e.from,to:e.to}}return this.read}step(){let e=this.lower()??"",t=this.at===this.everyAt+1&&this.everyAt>=0;if((e==="every"||e==="each")&&!this.read.every){if(this.everyAt=this.at,this.read.every=this.take(1),this.at>=this.words.length)this.read.everyDangling=this.read.every;return this.everyFollowerOk()}if(e==="and"||e==="&")return this.at+=1,!0;if(e==="skip"||e==="skipping")return this.skip();if(e==="at")return this.atPhrase();if(this.count(t))return!0;if(this.unit())return!0;if(this.keyword(t))return!0;if(this.weekdays())return!0;if(this.monthDay())return!0;if(this.monthOf())return!0;if(this.minute())return!0;if(this.time())return!0;return this.zone()}everyFollowerOk(){let e=this.lower();if(e===void 0)return!0;let t=/^\d+[a-z]+$/.test(e);if(!(Uc(e)!==null||t||Qx.has(e)||qc.has(e)||e==="weekday"||e==="weekend"||e==="weekdays"||e==="weekends")){let n=this.word();if(n)this.read.unknown={from:n.from,to:n.to}}return!0}skip(){let e=1;while(d2.has(this.lower(e)??""))e+=1;if(this.read.skip)return!1;return this.read.skip=this.take(e),!0}atPhrase(){let e=this.lower(1);if(e===void 0)return this.read.atDangling=this.take(1),!0;if(e==="minute"||/^:\d{1,2}$/.test(e))return this.minute(1);return this.time(1)}count(e){let t=this.lower();if(t===void 0||this.read.interval)return!1;let r=/^(\d{1,4})([a-z]+)$/.exec(t);if(r){let a=r[2]??"",c=n2.get(a)??Xx.get(a);if(!c)return!1;let u=this.word();return this.setInterval(Number(r[1]),c,this.take(1),{from:u?.from??0,to:(u?.from??0)+(r[1]?.length??0)},r[2]??""),!0}let n=Uc(t);if(n===null)return!1;let o=this.lower(1)??"",s=Xx.get(o),i=this.word();if(s&&i)return this.setInterval(n,s,this.take(2),Io(i,i),o),!0;if(e&&i)return this.read.interval={...this.take(1),n,unit:null,count:Io(i,i),unitWord:""},!0;return!1}setInterval(e,t,r,n,o){this.read.interval={...r,n:e,unit:t,count:n,unitWord:o}}unit(){let e=this.lower()??"",t=Qx.get(e);if(!t)return!1;if(t==="minute"){if(this.read.interval)return!1;return this.setInterval(1,"minutes",this.take(1),null,e),!0}return this.setBase(t,[],this.take(1))}setBase(e,t,r){if(this.read.base)return!1;return this.read.base={...r,kind:e,days:t},!0}keyword(e){let t=0,r,s=(this.lower()??"")==="on"&&nm.get(this.lower(1)??"")?1:0,i=this.lower(s)??"";if((i==="monday"||i==="mon")&&(this.lower(s+1)==="to"||this.lower(s+1)==="through")&&(this.lower(s+2)==="friday"||this.lower(s+2)==="fri"))r="weekdays",t=s+3;else if(nm.has(i))r=nm.get(i),t=s+1;if(!r)return!1;if(e&&!(r==="weekdays"||r==="weekends"))return!1;return this.setBase(r,[],this.take(t))}weekdays(){let e=this.lower()==="on"?1:0;if(qc.get(this.lower(e)??"")===void 0)return!1;let t=[],r=e;while(!0){let s=qc.get(this.lower(r)??"");if(s!==void 0){t.push(s),r+=1;continue}let i=this.lower(r);if((i==="and"||i==="&")&&qc.get(this.lower(r+1)??"")!==void 0){r+=1;continue}break}let n=[...new Set(t)].sort((s,i)=>s-i),o=this.read.base;if(o&&(o.kind==="weekly"||o.kind==="week")&&o.days.length===0)return o.kind="weekly",o.days=n,this.read.weekdaySpan=this.take(r),!0;return this.setBase("weekly",n,this.take(r))}monthDay(){let e=0;if(this.lower(e)==="on")e+=1;let t=null;if(this.lower(e)==="the")t=t0(this.lower(e+1)),e+=2;else if(this.lower(e)==="day")t=Uc(this.lower(e+1)),e+=2;else if(/(st|nd|rd|th)$/.test(this.lower(e)??""))t=t0(this.lower(e)),e+=1;if(t===null)return!1;let r=this.take(e),n=this.read.day;if(n)return n.to=r.to,n.values.push(t),n.value=Math.max(n.value,t),!0;return this.read.day={...r,value:t,values:[t]},!0}monthOf(){let e=this.lower()==="of",t=this.lower(1),r=this.lower(2);if(!e||!(t==="the"||t==="every"||t==="each")||r!=="month")return!1;if(this.read.base)return!1;return this.read.monthOf=this.take(3),this.read.base={...this.read.monthOf,kind:"monthly",days:[]},!0}minute(e=0){let t=this.lower(e)??"",r=null,n=e,o=/^:(\d{1,2})$/.exec(t);if(o)r=Number(o[1]),n+=1;else if(t==="minute")r=Uc(this.lower(e+1)),n+=2;if(r===null||r>59||this.read.minute)return!1;return this.read.minute={...this.take(n),value:r},!0}time(e=0){let t=l2(this.words,this.at+e);if(!t)return!1;let r=this.take(e+t.used),n={hour:t.hour,minute:t.minute,valid:t.valid},o=this.read.time;if(o)return o.to=r.to,o.times.push(n),o.valid=o.valid&&n.valid,!0;return this.read.time={...r,...n,times:[n]},!0}zone(){if(this.read.zone)return!1;let e=this.lower()==="in"?1:0;for(let t=3;t>=1;t--){let r=this.words.slice(this.at+e,this.at+e+t).map((o)=>o.lower);if(r.length<t)continue;let n=t===1?c2(r[0]??"")??im(r):im(r);if(n){let o=e+t+(this.lower(e+t)==="time"?1:0);return this.read.zone={...this.take(o),id:n},!0}}return!1}}function mi(e){return e.replace(/\s+,/g,",").replace(/,(\s*,)+/g,",").replace(/\s{2,}/g," ").replace(/^[\s,]+|[\s,]+$/g,"")}function Ht(e,t,r){return mi(`${e.slice(0,t.from)}${r}${e.slice(t.to)}`)}function Wc(e,t){return t.time?e:`${e} at ${Mn}`}var p2={minutes:["minute","minutes"],hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Bc(e,t){let[r,n]=p2[t];return`${e} ${e===1?r:n}`}function u0(e){return hi(Kc[e]??"")}function r0(e){switch(e.kind){case"hourly":return"Every hour";case"daily":return"Every day";case"weekdays":return"Monday to Friday";case"weekends":return"Saturday and Sunday";case"week":return"Every week";case"monthly":return"Every month";default:return e.days.length>0?`Every ${Ro(e.days.map(u0))}`:"Every week"}}function f2(e,t,r,n){let o=[],s=(l,d,f,m)=>{if(!d)return;o.push({from:d.from,to:d.to,text:e.slice(d.from,d.to),kind:f,label:m,tone:r[l]??"ok"})},{every:i,base:a,interval:c}=t,u=i&&a&&!c&&a.from>i.to&&e.slice(i.to,a.from).trim()==="";if(i&&!u)s("every",i,"cadence","Repeats");if(c)s("interval",c,"interval",c.unit?`Every ${Bc(c.n,c.unit)}`:"Repeats");if(a)s("base",u&&i?{from:i.from,to:a.to}:a,"cadence",r0(a));if(s("weekdays",t.weekdaySpan,"cadence",r0(a??{from:0,to:0,kind:"weekly",days:[]})),t.day)s("day",t.day,"day",`The ${Ro(l0(t.day).map(cm))} of the month`);if(t.time)s("time",t.time,"time",t.time.valid?Ro(d0(t.time).map((l)=>am(l.hour,l.minute))):"Not a time");if(s("at",t.atDangling,"time","At"),t.minute)s("minute",t.minute,"minute",`At :${Ao(t.minute.value)}`);if(t.zone)s("zone",t.zone,"zone",c0(t.zone.id,n));if(t.skip)s("skip",t.skip,"skip","Skips months without that day");if(t.unknown)s("unknown",t.unknown,"unknown","Not understood");return o.sort((l,d)=>l.from-d.from)}function $e(e,t,r=[],n={}){return{ok:!1,reason:e,message:t,fixes:r,tones:n}}var m2=[5,6,10,12,15,20,30];function h2(e){return m2.reduce((t,r)=>Math.abs(r-e)<Math.abs(t-e)?r:t)}function g2(e,t){let n=t.unitWord==="minute"||t.unitWord==="min"?`${t.unitWord}s`:t.unitWord,o=`${Ct} ${n}`;return{label:`Use ${Ct} minutes`,text:Ht(e,t,o)}}function y2(e,t){let r=t.interval;if(!r)return null;let n={interval:"fail"};if(t.base||t.day)return $e("invalid","Use an interval or a day, not both.",[],n);if(r.unit===null)return $e("incomplete","Add a unit, like every 5 days.",[{label:"Use days",text:Ht(e,r,`${r.n} days`)}]);if(r.unit==="months"){if(r.n===1)return null;let c=Math.round(r.n*30/7);return $e("unstorable","An interval counts hours, days or weeks.",[{label:`Use ${c} weeks`,text:Ht(e,r,`${c} weeks`)}],n)}let{n:o,unit:s}=r;if(s==="minutes"){if(o<Ct)return $e("floor",`Runs must be at least ${Ct} minutes apart.`,[g2(e,r)],n);if(o<60||o%60!==0){if(t.time||t.minute)return n0(e,t,[]);if(o>60||60%o!==0){let c=h2(o);return $e("unstorable","Minutes must divide the hour evenly, like 10, 15 or 30.",[{label:`Use ${c} minutes`,text:Ht(e,r,`${c} minutes`)}],n)}return{ok:!0,every:{cron:`*/${o} * * * *`},timezone:t.zone?.id}}o/=60,s="hours"}let i={n:o,unit:s};if(s==="hours"&&t.minute&&!t.time&&!t.skip&&o>1&&o<24&&24%o===0)return{ok:!0,every:{cron:`${t.minute.value} */${o} * * *`},timezone:t.zone?.id};if(t.time||t.minute)return n0(e,t,[]);if(t.zone)return $e("unstorable","An interval counts from the last run, so it has no timezone.",[{label:"Drop the timezone",text:Ht(e,t.zone,"")}],{zone:"fail"});if(t.skip)return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});let a=si[s];if(o<1||o*a>Oc){let c=Math.floor(Oc/a);return $e("invalid","Runs must be at most 52 weeks apart.",[{label:`Use ${Bc(c,s)}`,text:Ht(e,r,Bc(c,s))}],n)}return{ok:!0,every:i,timezone:void 0}}function n0(e,t,r){let n=t.time??t.minute;return $e("unstorable","An interval counts from the last run, so it has no time of day.",[...r,...n?[{label:"Drop the time",text:Ht(e,n,"")}]:[]],{time:"fail",minute:"fail"})}var w2=new Map([[29,"February has no 29th most years."],[30,"February has no 30th."],[31,"Five months have no 31st."]]);function b2(e,t){let r=t.zone?.id,n=t.base;if(!n&&(t.day||t.interval?.unit==="months"))n={from:0,to:0,kind:"monthly",days:[]};if(!n)return $e("incomplete","Add how often, like every day.",t.time?[{label:"Every day",text:`every day ${e.trim()}`}]:[]);if(t.time&&!t.time.valid)return $e("invalid","Use a time from 00:00 to 23:59.",[],{time:"fail"});if(n.kind==="hourly"){if(t.time)return $e("unstorable","An hourly schedule takes a minute, like at :15.",[{label:"Use :00",text:Ht(e,t.time,"at :00")}],{time:"fail"});if(t.day)return $e("invalid","An hourly schedule runs every day.",[],{day:"fail"});return{ok:!0,every:{preset:"hourly",minute:t.minute?.value??0},timezone:r}}if(t.minute)return $e("invalid","A minute only fits an hourly schedule.",[],{minute:"fail"});if(n.kind==="week"||n.kind==="weekly"&&n.days.length===0){let f=t.every?{from:Math.min(t.every.from,n.from),to:n.to}:n;return $e("incomplete","Add a day, like every monday.",[{label:"Every Monday",text:Wc(Ht(e,f,"every monday"),t)}])}if(n.kind==="monthly"){if(!t.day)return $e("incomplete","Add a day, like on the 1st.",[{label:"On the 1st",text:Wc(`${mi(e)} on the 1st`,t)}])}else if(t.day)return $e("invalid","Pick a weekday or a day of the month, not both.",[],{day:"fail"});let o=t.day,s=o?l0(o):[];if(s.some((f)=>f<1||f>31))return $e("invalid","A month has at most 31 days.",[],{day:"fail"});if(o&&o.value>28&&!t.skip)return $e("ambiguous",w2.get(o.value)??"",[{label:"Skip those months",text:`${Wc(mi(e),t)}, skipping shorter months`},{label:"Run on the 28th instead",text:Wc(Ht(e,o,"on the 28th"),t)}],{day:"warn"});if(t.skip&&!(o&&o.value>28))return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});if(!t.time)return $e("incomplete",t.atDangling?"Add a time, like 09:00.":"Add a time, like at 09:00.",[{label:`At ${Mn}`,text:t.atDangling?`${mi(e)} ${Mn}`:`${mi(e)} at ${Mn}`}]);let i=d0(t.time),[a]=i;if(i.length===1&&s.length<=1&&a){let f=_2(n,s[0],a);if(f)return{ok:!0,every:f,timezone:r}}let c=[...new Set(i.map((f)=>f.minute))],u=[...new Set(i.map((f)=>f.hour))];if(c.length*u.length!==i.length)return $e("unstorable","Times in one schedule share their minutes, like 09:00 and 17:00.",[],{time:"fail"});let l=`${c.join(",")} ${u.join(",")} ${S2(n,s)}`,d=Ac.safeParse({cron:l});if(!d.success)return $e("invalid",p0(d.error.issues[0]?.message??"this cron does not parse"),[],{time:"fail"});return{ok:!0,every:{cron:d.data.cron},timezone:r}}function l0(e){return[...new Set(e.values)].sort((t,r)=>t-r)}function d0(e){let t=new Map;for(let r of e.times)t.set(r.hour*60+r.minute,r);return[...t.entries()].sort(([r],[n])=>r-n).map(([,r])=>r)}function _2(e,t,r){let n=am(r.hour,r.minute);switch(e.kind){case"daily":return{preset:"daily",at:n};case"weekdays":return{preset:"weekdays",at:n};case"monthly":{let o=t??1;return o>28?null:{preset:"monthly",day:o,at:n}}case"weekly":{let[o]=e.days,s=o===void 0?void 0:Kc[o];return e.days.length===1&&s?{preset:"weekly",on:s,at:n}:null}default:return null}}function S2(e,t){switch(e.kind){case"weekdays":return"* * 1-5";case"weekends":return"* * 0,6";case"monthly":return`${t.length>0?t.join(","):"1"} * *`;case"weekly":return`* * ${e.days.join(",")}`;default:return"* * *"}}var om=/^[\d*][\d*,\-/]*$/,v2=/^[\da-z*][\da-z*,\-/]*$/i;function k2(e){let[t,r]=e;if(!(t&&r&&om.test(t.text)&&om.test(r.text)))return 0;let n=0;while(n<5){let o=e[n],s=n<3?om:v2;if(!(o&&s.test(o.text))||n>=3&&!/[\d*]/.test(o.text)&&!/^[a-z]{3}(-[a-z]{3})?(,[a-z]{3})*$/i.test(o.text))break;n+=1}return n}function p0(e){return`${hi(e)}.`}function x2(e,t,r,n){let o=t.slice(0,r),s=o[0],i=o.at(-1),a=o.map((y)=>y.text).join(" "),c=s&&i?Io(s,i):{from:0,to:0},u=t.slice(r),l,d;if(u.length>0){let b=new um(u).run(),T=b.every||b.base||b.interval||b.time||b.day||b.minute||b.skip;if(b.unknown||T||!b.zone){let k=u[0];d=b.unknown??(k?Io(k,k):void 0)}else l=b.zone}let f=f0(a),m=f?hi(f):"Cron",h=(y)=>{let b=[{...c,text:e.slice(c.from,c.to),kind:"cron",label:m,tone:y}];if(l)b.push({from:l.from,to:l.to,text:e.slice(l.from,l.to),kind:"zone",label:c0(l.id,n),tone:"ok"});if(d)b.push({...d,text:e.slice(d.from,d.to),kind:"unknown",label:"Not understood",tone:"fail"});return b};if(d)return{ok:!1,reason:"unknown",message:`Could not read "${e.slice(d.from,d.to)}".`,fixes:[],tokens:h("ok")};let g=Ac.safeParse({cron:a});if(!g.success){let y=g.error.issues[0]?.message??"this cron does not parse",b=y.includes(`at least ${Ct} minutes`),T=o[0]?.text??"",k=/^\*(\/(\d+))?$/.exec(T),I=b&&k&&s?[{label:`Use ${Ct} minutes`,text:Ht(e,Io(s,s),`*/${Ct}`)}]:[];return{ok:!1,reason:b?"floor":"invalid",message:p0(y),fixes:I,tokens:h("fail")}}return{ok:!0,every:{cron:g.data.cron},timezone:l?.id,tokens:h("ok")}}function $2(e,t){if(e.trim()==="")return{ok:!1,reason:"empty",message:"",fixes:[],tokens:[]};let r=e0(e,/\S+/g),n=k2(r);if(n>0)return x2(e,r,n,t);let o=new um(e0(e,/[^\s,]+/g)).run(),s=T2(e,o),i=f2(e,o,s.ok?{}:s.tones??{},t);if(s.ok)return{ok:!0,every:s.every,timezone:s.timezone,tokens:i};return{ok:!1,reason:s.reason,message:s.message,fixes:s.fixes,tokens:i}}function T2(e,t){if(t.unknown)return $e("unknown",`Could not read "${e.slice(t.unknown.from,t.unknown.to)}".`,[],{unknown:"fail"});if(t.everyDangling&&!t.base&&!t.interval)return $e("incomplete","Add how often, like every day.");return y2(e,P2(t))??b2(e,t)}var E2={hours:"hourly",days:"daily",weeks:"week",months:"monthly"};function P2(e){let t=e.interval;if(!t||t.n!==1||t.unit===null)return e;let r=e.base?.kind;if(t.unit==="weeks"&&r==="weekly"||t.unit==="months"&&r==="monthly"){if(e.base&&r==="weekly"&&!e.weekdaySpan)e.weekdaySpan={from:e.base.from,to:e.base.to},e.base.from=t.from,e.base.to=t.to;return e.interval=void 0,e}if(e.base)return e;if(t.unit==="minutes")return e;return e.base={from:t.from,to:t.to,kind:E2[t.unit],days:[]},e.interval=void 0,e}var O2={hours:"every 60 minutes",days:"every 24 hours",weeks:"every 7 days"},Vc=Array.from({length:31},(e,t)=>t+1),Zc=[0,1,2,3,4,5,6];function I2(e){let t=(i,a)=>kc(e,i,a),r=Zc.filter((i)=>Vc.every((a)=>t(a,i)));if(Zc.every((i)=>Vc.every((a)=>t(a,i)===r.includes(i))))return r.length===7?{kind:"daily"}:{kind:"weekly",days:r};let o=Vc.filter((i)=>Zc.every((a)=>t(i,a)));return Vc.every((i)=>Zc.every((a)=>t(i,a)===o.includes(i)))?{kind:"monthly",days:o}:null}function o0(e,t){let[r,n]=e;if(r!==0||n===void 0)return null;let o=n-r;return e.every((i,a)=>i===a*o)&&t%o===0&&e.length===t/o?o:null}var A2=4;function s0(e){return(e+6)%7}function R2(e){if(e.kind==="daily")return"every day";if(e.kind==="monthly")return e.days.length===0?null:`monthly on the ${Ro(e.days.map(cm))}`;let t=e.days.join(",");if(t==="1,2,3,4,5")return"weekdays";if(t==="0,6")return"weekends";let r=[...e.days].sort((n,o)=>s0(n)-s0(o)).map(u0);return r.length===0?null:`every ${Ro(r)}`}function C2(e){let t=Ln(e);if(!t.ok||t.spec.months.length!==12)return null;let{minutes:r,hours:n}=t.spec,o=I2(t.spec);if(!o)return null;let s=o.kind==="daily",[i]=r;if(n.length===24){if(!s)return null;if(r.length===1&&i!==void 0)return i===0?"every hour":`every hour at :${Ao(i)}`;let d=o0(r,60);return d?`every ${d} minutes`:null}let a=o0(n,24);if(r.length===1&&i!==void 0&&a&&n.length>2)return s?`every ${a} hours at :${Ao(i)}`:null;if(r.length*n.length>A2)return null;let c=R2(o);if(!c)return null;let u=n.flatMap((d)=>r.map((f)=>am(d,f))),l=`${c} at ${Ro(u)}`;if(o.kind!=="monthly"||o.days.every((d)=>d<=28))return l;return o.days.length===1?`${l}, skipping shorter months`:null}function f0(e){let t=C2(e);if(!t)return null;let r=$2(t,new Date(0)),n=r.ok?Gx(r.every):null;return n!==null&&Vk(n,e)?t:null}function z2(e){if(fi(e)){if(e.n===1)return O2[e.unit];return`every ${Bc(e.n,e.unit)}`}if("preset"in e)switch(e.preset){case"hourly":return e.minute===0?"every hour":`every hour at :${Ao(e.minute)}`;case"daily":return`every day at ${e.at}`;case"weekdays":return`weekdays at ${e.at}`;case"weekly":return`every ${hi(e.on)} at ${e.at}`;default:return`monthly on the ${cm(e.day)} at ${e.at}`}let t=e.cron.trim();return f0(t)??t}function N2(e){let t=z2(e.every);if(fi(e.every)||!e.timezone)return t;return`${t} in ${a0(e.timezone)}`}function L2(e){return N2({every:e.every,timezone:fi(e.every)?void 0:e.timezone??or})}function gi(e){return hi(L2(e))}var dde=["every",...Kc,"weekdays","weekends","minutes","hours","days","weeks","month","monthly","daily","hourly","weekly","noon","midnight"],pde=["",` at ${Mn}`,` ${Mn}`,":00"," days"," minutes",` on the 1st at ${Mn}`," 5 days"];var j2={issue:"issues","change-request":"change requests"},D2={open:"open",closed:"closed",any:"open and closed"};function lm(e,t){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} ${t} ${e.at(-1)}`}function M2(e){let t=e?.match??{},r=["issue","change-request"].filter((o)=>t.subjects?.includes(o)),n=e?.every?[{key:"every",text:gi({every:e.every,timezone:e.timezone})}]:[{key:"every-lead",text:"Every "},{key:"every",text:"so often",placeholder:!0}];if(n.push({key:"finds",text:", finds "},t.state?{key:"state",text:D2[t.state]}:{key:"state",text:"open or closed",placeholder:!0},{key:"gap",text:" "},r.length>0?{key:"subjects",text:lm(r.map((o)=>j2[o]),"and")}:{key:"subjects",text:"issues or change requests",placeholder:!0},{key:"inactive-lead",text:" with no activity for "},t.inactiveFor?{key:"inactiveFor",text:Yx(t.inactiveFor)}:{key:"inactiveFor",text:"some time",placeholder:!0}),t.labels?.length)n.push({key:"labels",text:`, labeled ${lm(t.labels,"and")}`});if(t.excludeLabels?.length)n.push({key:"excludeLabels",text:`, not labeled ${lm(t.excludeLabels,"or")}`});if(t.skipLocked!==!1)n.push({key:"skipLocked",text:", skipping locked ones"});return n.push({key:"end",text:"."}),n}function m0(e){return M2(e).map((t)=>t.placeholder?`[${t.text}]`:t.text).join("")}var q2=new Map([["every","The schedule"],["every.n","The interval"],["every.unit","The interval unit"],["every.minute","The minute"],["every.at","The time"],["every.at.hour","The hour"],["every.at.minute","The minute"],["every.on","The weekday"],["every.day","The day of the month"],["every.cron","The cron"],["every.preset","The preset"],["timezone","The timezone"],["match","What it looks for"],["match.subjects","What it looks at"],["match.state","The state"],["match.inactiveFor","The inactive time"],["match.inactiveFor.n","The inactive time"],["match.inactiveFor.unit","The inactive time unit"],["match.labels","The labels"],["match.excludeLabels","The labels to skip"],["match.skipLocked","Skip locked"]]);function h0(e){let t=e.map(String).filter((r)=>!/^\d+$/.test(r)).join(".");return q2.get(t)??null}function F2(e){return/[.?]$/.test(e)?e:`${e}.`}function w0(e){let{workflow:t,step:r,message:n}=e,o=r!==void 0&&(n.startsWith(`${r} `)||n.startsWith(`${r}:`)),s=[t,o?void 0:r].filter(Boolean).join(" > ");if(!s)return n;return o?`${s} > ${n}`:`${s}: ${n}`}function U2(e,t){let r=Array.from({length:t.length+1},(n,o)=>o);for(let n=1;n<=e.length;n++){let o=r[0]??0;r[0]=n;for(let s=1;s<=t.length;s++){let i=r[s]??0;r[s]=Math.min(i+1,(r[s-1]??0)+1,o+(e[n-1]===t[s-1]?0:1)),o=i}}return r[t.length]??0}function g0(e,t){let r=0;for(let n of t)if(n===e[r])r++;return r===e.length}function y0(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function W2(e,t){let r=y0(e),n=null;for(let s of t){let i=y0(s),c=g0(r,i)||g0(i,r)?Math.abs(i.length-r.length)/4:U2(r,i);if(n===null||c<n.score)n={id:s,score:c}}if(!n)return null;let o=Math.max(2,Math.ceil(r.length/3));return n.score<=o?n.id:null}function Hc(e,t,r){let n=W2(t,r);return n?`${t} is not ${e}. Did you mean ${n}?`:`${t} is not ${e}. Use one of: ${r.join(", ")}`}var b0=K(p(),ne());function yi(e,t,r){let n=b0.safeParse(e??{});if(!n.success)return[`${r} takes an object of settings`];let o=t instanceof vf?Object.keys(t.shape):null,s=o?Object.keys(n.data).filter((a)=>!o.includes(a)):[];if(s.length>0&&o)return s.map((a)=>Hc(`a setting of ${r}`,a,o));let i=t.safeParse(n.data);return i.success?[]:i.error.issues.map((a)=>`${r}: ${$o(a)}`)}var V2=w({kind:z(["trigger","check","gate","action","output"])}),_0=w({kind:z(["trigger","check","gate","action"])}),Z2=w({kind:C("output"),port:z(["pass","fail","approve","deny"])}),B2=w({}).loose(),K2=gc((e)=>_0.safeParse(e).success),H2=K(p(),w({kind:C("workflow"),spec:gc((e)=>B2.safeParse(e).success,{error:"each entry must be workflow({ ... })"})}),{error:"the default export must be workflows({ ... })"});function G2(e){return Object.hasOwn(Gr,e)}function dm(e){return e.kind==="output"}function J2(e){return e.kind==="action"&&e.action==="send-to-moderation"}function Y2(e,t){if(e==="pass")return;return t.kind==="trigger"?void 0:e}function X2(e){switch(e){case"pass":return"fail";case"fail":return"pass";case"approve":return"deny";default:return"approve"}}function Q2(e){switch(e.kind){case"trigger":return e.on.includes("schedule.matched")?"schedule":"trigger";case"check":return e.rule.split("@")[0]??"check";case"gate":return e.mode;default:return e.action}}var eF=/^[^\p{Cc}]+$/u;class S0{key;spec;issues=[];ids=new Map;taken=new Set;nodes=[];edges=[];edgeKeys=new Set;built=new Set;triggers=[];constructor(e,t){this.key=e;this.spec=t}issue(e,t){let r=t?this.ids.get(t):void 0;this.issues.push({workflow:this.key,step:r,message:e})}idFor(e){let t=this.ids.get(e);if(t)return t;let r=Q2(e),n=r;for(let o=2;this.taken.has(n);o++)n=`${r}-${o}`;return this.ids.set(e,n),this.taken.add(n),n}connect(e,t,r){if(e.kind==="trigger"&&t!=="pass"){this.issue("a trigger has only its event output; put a check or gate between it and this step",r);return}let n=this.visit(e),o=this.idFor(r),s=Y2(t,e),i=`${n}>${o}>${s??"pass"}`;if(this.edgeKeys.has(i))return;this.edgeKeys.add(i);let a=`${n}-${o}`;for(let c=2;this.edges.some((u)=>u.id===a);c++)a=`${n}-${o}-${c}`;this.edges.push(s?{id:a,from:n,to:o,when:s}:{id:a,from:n,to:o})}wireInputs(e,t){for(let r of t){if(!V2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}if(dm(r)){if(!Z2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}this.connect(r.step,r.port,e)}else this.connect(r,"pass",e)}}wireFromTriggers(e){for(let t of this.triggers)this.connect(t,"pass",e)}visit(e){if(!_0.safeParse(e).success)return this.issue("a step was not built with the workflow helpers"),"invalid";let t=this.idFor(e);if(this.built.has(e))return t;switch(this.built.add(e),e.kind){case"trigger":this.buildTrigger(e,t);break;case"check":this.buildCheck(e,t);break;case"gate":this.buildGate(e,t);break;default:this.buildAction(e,t)}return t}buildTrigger(e,t){let r=[];for(let n of e.on){let o=ri.safeParse(n);if(o.success&&(o.data==="schedule.matched"||Oo.some((s)=>s===o.data)))r.push(o.data);else this.issue(Hc("an event a workflow can start on",n,Oo),e)}if(r.length===0){if(e.on.length===0)this.issue("a trigger needs at least one event",e);return}if(e.schedule!==void 0){let n=vo.safeParse(e.schedule);if(!n.success){for(let o of n.error.issues)this.issue(F2($o(o,h0)),e);return}this.nodes.push({id:t,type:"trigger",kinds:r,schedule:vo.parse(e.schedule)});return}this.nodes.push({id:t,type:"trigger",kinds:r})}buildCheck(e,t){let r=e.rule.startsWith("custom-"),n=e.rule;if(r)n=e.rule.includes("@")?e.rule:`${e.rule}@1`;else{let s=Ge.find((a)=>a.ruleId===e.rule);if(!s){this.issue(Hc("a rule",e.rule,Ge.map((a)=>a.ruleId)),e);return}let i=e.version??s.version;if(n=`${s.ruleId}@${i}`,i===s.version)for(let a of yi(e.config,s.configSchema,s.ruleId))this.issue(a,e)}let o=Ie.safeParse(e.config??{});if(!o.success){this.issue(`${e.rule} settings must be plain JSON`,e);return}if(this.nodes.push({id:t,type:"rule",ref:n,config:o.data}),e.inputs.length===0)this.wireFromTriggers(e);else this.wireInputs(e,e.inputs)}buildGate(e,t){if(e.inputs.length===0)this.issue(`${e.mode} needs at least one input`,e);if(e.mode==="not"&&e.inputs.length>1)this.issue("not takes exactly one input",e);this.nodes.push({id:t,type:"gate",mode:e.mode}),this.wireInputs(e,e.inputs)}buildAction(e,t){let r=e.action;if(!G2(r)){this.issue(Hc("an action",r,Object.keys(Gr)),e);return}let n=Gr[r];for(let a of yi(e.params,n,r))this.issue(a,e);let o=b0.safeParse(e.params??{}),s=K(p(),Ie).safeParse(o.success?o.data:{}),i={id:t,type:"action",action:r};if(s.success&&Object.keys(s.data).length>0)i.params=s.data;if(this.nodes.push(i),e.inputs.length>0)this.wireInputs(e,e.inputs);if(J2(e)){for(let a of e.approve)this.visit(a),this.connect(e,"approve",a);for(let a of e.deny)this.visit(a),this.connect(e,"deny",a)}}hasIncoming(e){let t=this.ids.get(e);return this.edges.some((r)=>r.to===t)}compile(){let e=this.spec;for(let[i,a]of Object.entries(e.steps??{})){if(!eF.test(i)){this.issue(`${i} is not a usable step id`);continue}if(this.taken.has(i)){this.issue(`two steps share the id ${i}`);continue}this.ids.set(a,i),this.taken.add(i)}let t=e.on===void 0?[]:Array.isArray(e.on)?e.on:[e.on],r=[],n=[];for(let i of t){let a=p().safeParse(i),c=K2.safeParse(i);if(a.success)r.push(a.data);else if(c.success)n.push(c.data)}if(r.length>0)this.triggers.push({kind:"trigger",on:r,inputs:[]});this.triggers.push(...n);for(let i of Object.values(e.steps??{}))if(i.kind==="trigger"&&!this.triggers.includes(i))this.triggers.push(i);if(this.triggers.length===0)this.issue("add `on`, the events or schedule that start it");for(let i of this.triggers)this.visit(i);if(e.check!==void 0){let i=dm(e.check)?{step:e.check.step,port:e.check.port}:{step:e.check,port:"pass"};if(!dm(e.check)&&(i.step.kind==="trigger"||i.step.kind==="action"))this.issue("`check` takes a check, a gate or one of their outputs; a trigger or action has no Passes and Doesn't pass");this.visit(i.step);for(let a of e.pass??[])this.visit(a),this.connect(i.step,i.port,a);for(let a of e.fail??[])this.visit(a),this.connect(i.step,X2(i.port),a)}else if((e.pass??[]).length>0||(e.fail??[]).length>0)this.issue("`pass` and `fail` need a `check`; use `run` for actions with no check");for(let i of e.run??[]){this.visit(i);for(let a of this.triggers)this.connect(a,"pass",i)}let o=Object.values(e.steps??{});for(let i of o)this.visit(i);for(let i of o)if(i.kind==="action"&&!this.hasIncoming(i))this.wireFromTriggers(i);if(this.issues.length>0)return null;let s=lt.safeParse({id:this.key,name:e.name??this.key,version:1,nodes:this.nodes,edges:this.edges});if(!s.success){for(let i of s.error.issues)this.issue($o(i));return null}return s.data}}function pm(e){let t=[],r=[];for(let[n,o]of Object.entries(e)){let s=new S0(n,o.spec),i=s.compile();if(t.push(...s.issues),i&&s.issues.length===0)r.push(i)}return t.length>0?{ok:!1,issues:t,definitions:r}:{ok:!0,definitions:r}}function v0(e){let t=H2.safeParse(e.default);if(!t.success)return{ok:!1,issues:t.error.issues.map((r)=>({workflow:String(r.path[0]??""),message:r.message})),definitions:[]};return pm(t.data)}function tF(e,t){let r=new Map(e.nodes.map((i)=>[i.id,i])),n=new Set([t]),o=[t],s=[];for(let i=o.shift();i!==void 0;i=o.shift())for(let a of e.edges){if(a.from!==i||n.has(a.to))continue;n.add(a.to),o.push(a.to);let c=r.get(a.to);if(c?.type==="action")s.push(cx(c.action,c.params??{}))}return s}function rF(e){return e.nodes.flatMap((t)=>{if(t.type!=="trigger"||!t.schedule?.every)return[];let r=Jx(t.schedule.timezone),n=tF(e,t.id),o=m0(t.schedule);return[{nodeId:t.id,summary:gi({every:t.schedule.every,timezone:t.schedule.timezone}),timezone:r.zone,defaulted:r.defaulted,description:n.length>0?`${o} Then Tripwire ${Cc(n)}.`:`${o} No action runs after it.`}]})}function k0(e,t){return e.map((r)=>{let n=Vx(r,t?{catalog:t}:{});return{id:r.id,name:r.name,valid:!n.some((o)=>o.severity==="error"),issues:n,schedules:rF(r)}})}var fm=new Set(["url","signingSecret","urlSet","signingSecretSet"]);function nF(e){return e.type==="action"&&(e.action==="webhook"||e.action==="discord")}function x0(e){return{...e,nodes:e.nodes.map((t)=>{if(!nF(t))return t;let r={...t.params??{}};for(let n of["url","signingSecret"]){let o=r[n];if(o!==void 0&&o!==""&&o!==null)r[n]="",r[`${n}Set`]=!0}return{...t,params:r}})}}var Cde=v(Ie),zde=K(p(),Ie);var Nde=p(),Lde=K(p(),Ie);var jde=w({}).strict();function oF(e){let t=e.normalize("NFKD").replace(/[̀-ͯ]/g,"").toLowerCase().split(/[^a-z0-9]+/).filter(Boolean),r="";for(let n of t){let o=r?`${r}-${n}`:n;if(o.length>48)break;r=o}return r||t[0]?.slice(0,48)||"workflow"}function qn(e,t=new Map){let r=new Set,n=new Map;for(let o of e){let s=t.get(o.id);if(s&&!r.has(s))r.add(s),n.set(o.id,s)}for(let o of e){if(n.has(o.id))continue;let s=oF(o.name||o.id),i=s;for(let a=2;r.has(i);a++)i=`${s}-${a}`;r.add(i),n.set(o.id,i)}return n}function Gc(e,t,r={}){let n=new Set(t.map((c)=>c.id)),o=new Set,s=new Map;for(let c of e){let u=r[c.id];if(u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"mapping"})}for(let c of e)if(!s.has(c.id)&&n.has(c.id)&&!o.has(c.id))o.add(c.id),s.set(c.id,{key:c.id,id:c.id,by:"id"});let i=new Map([...qn(t)].map(([c,u])=>[u,c]));for(let c of e){let u=i.get(c.id);if(!s.has(c.id)&&u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"name"})}let a=e.map((c)=>s.get(c.id)??{key:c.id,id:c.id,by:"new"});return{definitions:e.map((c,u)=>({...c,id:a[u]?.id??c.id})),matches:a}}var $0=new Set(["cycle","gate-input","not-input","trigger-input","wrong-output","no-outputs","missing-step","duplicate-id"]);function T0(e){return sF(e).issues.filter((t)=>$0.has(t.rule))}function sF(e,t=Ge){let r=Xf(e,{catalog:t,stage:"enable"}),n=r.results.filter((o)=>o.severity==="error");if(!r.definition)return{runnable:!1,canTurnOn:!1,issues:n};return{runnable:!n.some((o)=>$0.has(o.rule)),canTurnOn:n.length===0,issues:n}}var Jc={on:"Live",off:"Off","cant-run":"Can't run","needs-fixes":"Needs fixes","cant-turn-on":"Can't turn on"};function E0(e){if(e.enabled){if(!e.runnable)return"cant-run";return e.canTurnOn?"on":"needs-fixes"}return e.canTurnOn?"off":"cant-turn-on"}var wi=$f(()=>w({type:p().optional(),const:ne().optional(),enum:v(ne()).optional(),items:wi.optional(),properties:K(p(),wi).optional(),required:v(p()).optional(),anyOf:v(wi).optional(),oneOf:v(wi).optional()})),Xc=K(p(),Ie),iF=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function Fn(e){return iF.test(e)?e:JSON.stringify(e)}function Yc(e,t){let r=e.anyOf??e.oneOf;if(r)return r.map((n)=>Yc(n,t)).join(" | ");if(e.const!==void 0)return JSON.stringify(e.const);if(e.enum)return e.enum.map((n)=>JSON.stringify(n)).join(" | ");switch(e.type){case"string":return"string";case"integer":case"number":return"number";case"boolean":return"boolean";case"array":return`readonly (${e.items?Yc(e.items,t):"unknown"})[]`;case"object":{let n=Object.entries(e.properties??{});if(n.length===0)return"Record<never, never>";let o=`${t} `;return`{
|
|
240
|
+
${n.map(([i,a])=>`${o}readonly ${Fn(i)}${e.required?.includes(i)?"":"?"}: ${Yc(a,o)};`).join(`
|
|
241
241
|
`)}
|
|
242
|
-
${t}}`}default:return"unknown"}}function
|
|
243
|
-
`)}var
|
|
244
|
-
${c.data.map((l)=>`${a}${
|
|
242
|
+
${t}}`}default:return"unknown"}}function mm(e,t=""){let r=wi.safeParse(Hv(e,{io:"input",unrepresentable:"any"}));return r.success?Yc(r.data,t):"unknown"}function aF(){let e=Ge.map((n)=>` readonly ${Fn(n.ruleId)}: ${mm(n.configSchema,"\t\t")};`),t=Object.entries(Gr).map(([n,o])=>` readonly ${Fn(n)}: ${mm(o,"\t\t")};`),r=Oo.map((n)=>JSON.stringify(n)).join(" | ");return["export interface TripwireCatalog {","\treadonly rules: {",...e,"\t};","\treadonly actions: {",...t,"\t};",` readonly events: ${r};`,` readonly schedule: ${mm(vo,"\t")};`,"}"].join(`
|
|
243
|
+
`)}var ym=["allOf","anyOf","block","check","close","customCheck","discord","humanReview","label","lock","not","postComment","removeLabel","requestReview","schedule","trigger","webhook","workflow","workflows"],cF=new Set([...ym,"break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","let","new","null","return","static","super","switch","this","throw","true","try","typeof","var","void","while","with","yield","await","arguments","eval","package","public","private","protected","interface","implements","undefined","NaN","Infinity"]);function uF(e){return/^[A-Z0-9]+$/.test(e)?e.toLowerCase():e}function P0(e){let r=e.split(/[^A-Za-z0-9]+/).filter(Boolean).map(uF).map((o,s)=>s===0?o.charAt(0).toLowerCase()+o.slice(1):o.charAt(0).toUpperCase()+o.slice(1)).join(""),n=/^[0-9]/.test(r)?`step${r}`:r||"step";return cF.has(n)?`${n}Step`:n}var lF={block:"block",label:"label","remove-label":"removeLabel","request-review":"requestReview","post-comment":"postComment",lock:"lock",close:"close",webhook:"webhook",discord:"discord","send-to-moderation":"humanReview"},O0=new Set(["block","close","send-to-moderation","webhook","discord"]),dF=v(Ie),wm=ee([p(),P(),L(),wo()]),pF=v(wm),fF=80,mF=2;function I0(e){let t=pF.safeParse(e);return t.success?`[${t.data.map((r)=>JSON.stringify(r)).join(", ")}]`:null}function hF(e){let t=Xc.safeParse(e);if(!t.success)return null;let r=Object.entries(t.data);if(r.length===0)return"{}";let n=[];for(let[o,s]of r){let i=wm.safeParse(s),a=i.success?JSON.stringify(i.data):I0(s);if(a===null)return null;n.push(`${Fn(o)}: ${a}`)}return`{ ${n.join(", ")} }`}function hm(e,t,r="",n=","){let o=wm.safeParse(e);if(o.success)return JSON.stringify(o.data);let s=I0(e)??hF(e),i=t.length*mF+r.length+(s?.length??0)+n.length;if(s!==null&&i<=fF)return s;let a=`${t} `,c=dF.safeParse(e);if(c.success)return c.data.length===0?"[]":`[
|
|
244
|
+
${c.data.map((l)=>`${a}${hm(l,a)},`).join(`
|
|
245
245
|
`)}
|
|
246
|
-
${t}]`;let u=
|
|
247
|
-
${l.map(([d,f])=>{let m=`${
|
|
246
|
+
${t}]`;let u=Xc.safeParse(e);if(u.success){let l=Object.entries(u.data);return l.length===0?"{}":`{
|
|
247
|
+
${l.map(([d,f])=>{let m=`${Fn(d)}: `;return`${a}${m}${hm(f,a,m)},`}).join(`
|
|
248
248
|
`)}
|
|
249
|
-
${t}}`}return JSON.stringify(e)}function
|
|
250
|
-
`)}function
|
|
249
|
+
${t}}`}return JSON.stringify(e)}function gF(e,t,r){let n=t.get(e.from)??"missing",o=r.get(e.from);switch(e.when){case"fail":return`${n}.fails`;case"approve":return`${n}.approved`;case"deny":return`${n}.denied`;default:return o?.type==="trigger"||o?.type==="rule"||o?.type==="gate"?n:`${n}.passes`}}function yF(e){let t=new Map(e.nodes.map((o)=>[o.id,e.edges.filter((s)=>s.to===o.id).length])),r=[],n=[...e.nodes];while(n.length>0){let o=n.findIndex((i)=>t.get(i.id)===0),[s]=n.splice(o===-1?0:o,1);if(!s)break;r.push(s);for(let i of e.edges.filter((a)=>a.from===s.id))t.set(i.to,(t.get(i.to)??1)-1)}return r}function wF(e,t,r,n,o){let s=t.length>0?`.after(${t.join(", ")})`:"",i=(a,c,u)=>hm(a,n,`${o}${c}`,`${u};`);switch(e.type){case"trigger":{if(e.schedule){let a=Ie.parse(JSON.parse(JSON.stringify(e.schedule)));return`schedule(${i(a,"schedule(",")")})`}return`trigger(${e.kinds.map((a)=>JSON.stringify(a)).join(", ")})`}case"rule":{let[a=e.ref,c]=e.ref.split("@"),u=Number(c),l=Ge.find((T)=>T.ruleId===a),d=Xc.safeParse(e.config),f=d.success&&Object.keys(d.data).length===0,m=l?"check":"customCheck",h=`${m}(${JSON.stringify(a)}, `,g=!l||u===l.version?"":`, { version: ${u} }`,b=(f?null:i(e.config,h,`${g})${s}`))??(g?"{}":"");return`${m}(${JSON.stringify(a)}${b?`, ${b}`:""}${g})${s}`}case"gate":{if(t.length===0)return r.push(`${e.id}: a gate with no inputs is left out`),null;if(e.mode==="not"){if(t.length>1)r.push(`${e.id}: a Not gate keeps only its first input`);return`not(${t[0]})`}return`${e.mode==="all-of"?"allOf":"anyOf"}(${t.join(", ")})`}case"action":{if(e.action==="comment")return r.push(`${e.id}: the Comment step was removed and is left out`),null;let a=lF[e.action],c=Object.fromEntries(Object.entries(e.params??{}).filter(([l])=>!fm.has(l))),u=O0.has(e.action)||Object.keys(c).length===0?"":i(c,`${a}(`,`)${s}`);return`${a}(${u})${s}`}default:return null}}function bF(e){return Object.hasOwn(Gr,e)}function _F(e){switch(e.type){case"trigger":{if(e.schedule===void 0)return e.kinds.filter((t)=>!Oo.some((r)=>r===t)).map((t)=>`${e.id} starts on ${t}, which code cannot say`);if(e.kinds.some((t)=>t!=="schedule.matched"))return[`${e.id} starts on a schedule and on events`];return vo.safeParse(e.schedule).success?[]:[`${e.id} has an unfinished schedule`]}case"rule":{let[t=e.ref,r]=e.ref.split("@");if(t.startsWith("custom-"))return[];let n=Ge.find((s)=>s.ruleId===t);if(!n)return[`${t} is no longer a rule`];if(Number(r)!==n.version)return[];let o=Xc.safeParse(e.config??{});return o.success?yi(o.data,n.configSchema,t):[`${t} settings are not an object`]}case"action":{if(e.action==="comment"||O0.has(e.action))return[];if(!bF(e.action))return[`${e.action} is no longer an action`];let t=Object.fromEntries(Object.entries(e.params??{}).filter(([r])=>!fm.has(r)));return yi(t,Gr[e.action],e.action)}default:return[]}}var SF={trigger:"trigger",rule:"step",gate:"gate",action:"step"};function vF(e,t){if(!e.message.startsWith("It "))return e.message;let r=e.message.slice(3),n=t.nodes.find((s)=>s.id===e.nodeId),o=SF[n?.type??"action"];return new RegExp(`\\b${o}\\b`,"i").test(e.step)?`${e.step} ${r}`:`The ${e.step} ${o} ${r}`}function gm(e){return[...T0(e).map((t)=>vF(t,e)),...e.nodes.flatMap(_F)]}function kF(e,t,r){let n=new Map(e.nodes.map((l)=>[l.id,l])),o=new Map,s=new Set;for(let l of e.nodes){let d=P0(l.id),f=d;for(let m=2;s.has(f);m++)f=`${d}${m}`;s.add(f),o.set(l.id,f)}let i=[],a=[],c=new Set;for(let l of yF(e)){let d=e.edges.filter((m)=>m.to===l.id&&!c.has(m.from)).map((m)=>gF(m,o,n)),f=wF(l,d,r,"\t",`const ${o.get(l.id)} = `);if(f===null){c.add(l.id);continue}if(l.type!=="trigger"&&d.length===0){r.push(`${l.id}: nothing leads into it, so it is left out`),c.add(l.id);continue}i.push(` const ${o.get(l.id)} = ${f};`),a.push(l.id)}let u=a.map((l)=>{let d=o.get(l)??l;return l===d?` ${d},`:` ${Fn(l)}: ${d},`});return[`function ${t}() {`,...i,"\treturn workflow({",` name: ${JSON.stringify(e.name)},`,"\t\tsteps: {",...u,"\t\t},","\t});","}"].join(`
|
|
250
|
+
`)}function Qc(e,t){let r=[],n=new Set,o=[],s=[],i=new Set,a=[],c=new Set,u=e.filter((h)=>{let g=!c.has(h.id);return c.add(h.id),g&&gm(h).length===0}),l=qn(u,t.keys);for(let h of e){if(i.has(h.id)){r.push(`${h.name}: another workflow already uses the id ${h.id}, so it is left out`);continue}i.add(h.id);let[g]=gm(h);if(g){r.push(`${h.name}: left out, it cannot be written as code. ${g}`);continue}let y=P0(h.name||h.id),b=y;for(let T=2;n.has(b);T++)b=`${y}${T}`;n.add(b),a.push(h.id),o.push(kF(h,b,r)),s.push(` ${Fn(l.get(h.id)??h.id)}: ${b}(),`)}let d=[...o,`export default workflows({
|
|
251
251
|
${s.join(`
|
|
252
252
|
`)}
|
|
253
253
|
});`].join(`
|
|
254
254
|
|
|
255
255
|
`);return{code:`${[`import {
|
|
256
|
-
${
|
|
256
|
+
${ym.filter((h)=>new RegExp(`\\b${h}\\(`).test(d)).map((h)=>` ${h},`).join(`
|
|
257
257
|
`)}
|
|
258
258
|
} from ${JSON.stringify(t.importFrom)};`,d].join(`
|
|
259
259
|
|
|
260
260
|
`)}
|
|
261
|
-
`,warnings:r,written:a,keys:l}}function
|
|
262
|
-
${
|
|
261
|
+
`,warnings:r,written:a,keys:l}}function A0(e,t={}){let[r]=gm(e);if(r)return{ok:!1,reason:r};let{code:n,warnings:o}=Qc([x0(e)],{importFrom:Co,keys:t.key?new Map([[e.id,t.key]]):void 0});return{ok:!0,code:n,warnings:o}}function R0(e){return[e.trimEnd(),aF(),`export const {
|
|
262
|
+
${ym.map((t)=>` ${t},`).join(`
|
|
263
263
|
`)}
|
|
264
264
|
} = authoring<TripwireCatalog>();`].join(`
|
|
265
265
|
|
|
266
266
|
`).concat(`
|
|
267
|
-
`)}var
|
|
268
|
-
`)}function
|
|
269
|
-
`)}function
|
|
270
|
-
|
|
271
|
-
${o}`}),list_moderation_queue:
|
|
272
|
-
`)){let o=/^(.*) at ([\w.[\]]+)$/.exec(n.trim());if(!o)continue;let[,s="",i=""]=o;if(/received undefined/.test(s))t.push(i);else r.push(
|
|
273
|
-
`),l=!1;for(let d=0;d<u.length;d++){let f=u[d];if(n+=f,!l){if(l=f>="\uD800"&&f<="\uDBFF",l)continue}else l=!1;if(f===
|
|
274
|
-
`){if(s)n+=
|
|
275
|
-
`){if(o&&
|
|
276
|
-
`)}var
|
|
267
|
+
`)}var Co="./.tripwire/workflow.ts";var xF=["pending","accepted","rejected","expired","stale"],$F=z(xF);var C0=25,TF=["accept","reject"],npe=z(TF),EF=w({id:p(),revision:P().int().min(0)}),PF=w({definition:lt,baseWorkflowId:p().nullable(),baseHash:p().nullable(),baseDefinition:lt.nullable(),draft:EF.nullable().optional()}),ope=v(PF).min(1),OF=w({id:p(),name:p(),outcome:z(["created","updated"]),workflowId:p()}),spe=v(OF),IF=z(["new","changed"]),bm=w({id:p(),org:p(),repo:p(),status:$F,url:p(),expiresAt:p(),workflows:v(w({id:p(),name:p(),change:IF,outcome:z(["created","updated"]).optional(),url:p().optional()}))}),z0={pending:"Waiting for review",accepted:"Accepted",rejected:"Declined",expired:"Expired",stale:"Out of date"};function N0(e){return e==="accepted"?0:1}var AF=w({id:p(),name:p(),issues:v(p())}),L0=At("result",[w({result:C("proposed"),push:bm}),w({result:C("unchanged")}),w({result:C("blocked"),workflows:v(AF)})]);var{block:RF,check:CF,close:zF,label:NF,lock:LF,postComment:j0,removeLabel:jF,schedule:_m,trigger:DF,workflow:eu,workflows:MF}=Hx;function D0(e){let t=_m({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.warnAfterDays,unit:"days"},excludeLabels:["stale","no-auto-close"],skipLocked:!0}}),r=_m({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.closeAfterDays,unit:"days"},labels:["stale"],excludeLabels:["no-auto-close"],skipLocked:!0}}),n=DF(...e.resetOn);return{warn:t,"mark-stale":NF({labels:["stale"]}).after(t),"warn-comment":j0({message:e.warning}).after(t),close:r,"close-comment":j0({message:e.closing}).after(r),"close-it":zF().after(r),reset:n,"unmark-stale":jF({labels:["stale"]}).after(n)}}var M0=_m({every:{n:12,unit:"hours"},match:{subjects:["issue","change-request"],state:"closed",inactiveFor:{n:15,unit:"days"},skipLocked:!0}}),qF=MF({"block-new-accounts":eu({name:"Block new accounts",on:"change-request.opened",check:CF("account-age",{minDays:7}),fail:[RF()]}),"lock-inactive-threads":eu({name:"Lock inactive threads",steps:{trigger:M0,lock:LF({reason:"resolved"}).after(M0)}}),"close-stale-issues":eu({name:"Close stale issues",steps:D0({subject:"issue",every:{n:12,unit:"hours"},warnAfterDays:15,closeAfterDays:7,warning:"This issue has had no activity for 15 days. It will close in 7 days unless someone comments.",closing:"Closing after 22 days with no activity. Reopen it if it still matters.",resetOn:["comment.created"]})}),"close-stale-change-requests":eu({name:"Close stale change requests",steps:D0({subject:"change-request",every:{n:1,unit:"days"},warnAfterDays:21,closeAfterDays:7,warning:"This change request has had no activity for 3 weeks. It will close in 7 days unless someone updates it.",closing:"Closing after 4 weeks with no activity. Reopen it when you pick it back up.",resetOn:["change-request.updated","comment.created"]})})}),FF={"block-new-accounts":"Blocks change requests from accounts less than a week old.","lock-inactive-threads":"Every 12 hours, locks closed issues and change requests with no activity for 15 days.","close-stale-issues":"Every 12 hours, warns on issues with no activity for 15 days and closes them 7 days later. A comment clears the warning.","close-stale-change-requests":"Warns after 3 weeks with no activity, closes a week later, and clears the warning on any update."},UF=new Map(Object.entries(FF));function WF(){let e=pm(qF);if(!e.ok)throw Error(`workflow templates do not compile: ${e.issues.map((t)=>t.message).join("; ")}`);return e.definitions.map((t)=>({id:t.id,name:t.name,description:UF.get(t.id)??"",definition:t}))}var upe=WF();var K0=Rn(nu(),1);var bi={label:(e)=>e,good:(e)=>e,next:(e)=>e,bad:(e)=>e};function _i(e,t){if(!e||t.NO_COLOR)return bi;let r=K0.default.createColors(!0);return{label:r.dim,good:r.green,next:r.yellow,bad:r.red}}var U0=10;function ve(e,t=bi){return e.map(([r,n])=>{let o=" ".repeat(Math.max(1,U0-r.length));return`${r===""?" ".repeat(U0):`${t.label(r)}${o}`}${n}`.trimEnd()}).join(`
|
|
268
|
+
`)}function H0(e){return KF(e).length}function HF(e,t){return e+" ".repeat(Math.max(0,t-H0(e)))}function Un(e,t,r=30){let n=e.map((s,i)=>{let c=Math.max(s.length,...t.map((u)=>H0(u[i]??"")))+5;return i===0?Math.max(r,c):c}),o=(s)=>s.map((i,a)=>a===s.length-1?i:HF(i,n[a]??0)).join("").trimEnd();return[o(e),...t.map(o)].join(`
|
|
269
|
+
`)}function cr(e,t=bi){return ve([["error",e]],{...t,label:t.bad})}function su(e,t=bi){return ve([["warn",e]],t)}function G0(e){let t=e.replace(/[\s-]/g,"").toUpperCase();return t.length===8?`${t.slice(0,4)}-${t.slice(4)}`:e}function W0(e){return e.map((t)=>nx.find((r)=>r.kind===t)?.name.toLowerCase()??t)}function ou(e,t){return e?t.good("on"):"off"}function V0(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return`${t.toISOString().slice(0,16).replace("T"," ")} UTC`}function Z0(e){return e.slice(e.lastIndexOf("/")+1)}var GF=w({user:w({name:p().nullish(),email:p().nullish()}).nullish(),access:w({approved:L(),requestAccessUrl:p().optional()}),orgs:v(w({slug:p(),role:p(),agentAllowed:L().optional()}))}),JF={install_app:"Install the GitHub App",sync_repos:"Wait for repos to sync, then run tripwire status again",turn_on_gate:"Turn on the gate. Run tripwire gate on <repo>"},YF=w({org:p(),role:p().optional(),nextStep:p(),installUrl:p().optional(),home:p().optional()}),XF=v(w({name:p(),gateOn:L(),toReview:P(),blocked24h:P()})),QF=v(w({ruleId:p(),name:p(),optIn:L().optional()})),eU=v(w({ruleId:p(),enabled:L(),management:p().nullish(),cannotRun:p().nullish(),matches24h:P().nullish()})),tU=v(w({id:p(),name:p(),enabled:L(),runnable:L().optional(),canTurnOn:L().optional(),triggerKinds:v(p()).optional(),schedules:v(p()).optional()}));function vm(e,t){if(t.length===0)return W0(e);return[...W0(e.filter((r)=>r!=="schedule.matched")),...t]}function rU(e,t){let r=E0({enabled:e.enabled,runnable:e.runnable??!0,canTurnOn:e.canTurnOn??!0}),n=Jc[r].toLowerCase();if(r==="on")return t.good(n);if(r==="cant-run"||r==="needs-fixes")return t.bad(n);return n}var nU=w({enabled:L(),url:p().optional(),warnings:v(w({message:p()})).optional()}),oU=v(w({id:p(),repo:p().optional(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p()})),sU=w({id:p(),repo:p(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p(),steps:v(w({kind:p(),rule:p().nullish(),status:p(),summary:p().nullish(),workflow:p().nullish(),stepId:p().nullish(),step:p().optional(),outcome:p().optional()})),url:p().optional()}),iU=w({items:v(w({itemId:p(),repo:p().optional(),number:P().nullish(),actor:p().nullish(),title:p().nullish()})),url:p().optional()}),aU=w({done:L(),alreadyDecided:L().optional(),confirmUrl:p().optional(),forUser:p().optional(),decision:z(["approve","remove","ban"]).optional(),itemId:p().optional(),repo:p().optional(),number:P().nullish()}),cU=[["approve","let the change request through"],["remove","block it"],["ban","get a link where a person bans the contributor"]];function J0(e){let t=cU.map(([r,n])=>`${r} to ${n}`);return`${e} is not a choice. Use ${t.slice(0,-1).join(", ")}, or ${t.at(-1)}.`}var uU={approve:"Approved",remove:"Blocked"};function lU(e){let t=e.number?`#${e.number}`:e.itemId;if(!t)return"";return e.repo?` ${t} on ${e.repo}`:` ${t}`}function dU(e){if(!e.step)return e.rule??e.kind;return e.stepId?`${e.step} (${e.stepId})`:e.step}var pU=w({ruleId:p(),enabled:L()}),fU=w({repo:p(),url:p().optional()});function B0(e,t){let r=e.result??e.verdict,n=e.verdictLabel??Zx(e.verdict);if(!(r&&n))return e.verdict??"-";if(r==="pass")return t.good(n);if(r==="block")return t.bad(n);if(r==="needs_review")return t.next(n);return n}function kt(e,t){return(r,n)=>{let o=e.safeParse(r);return o.success?t(o.data,n):null}}var mU={whoami:kt(GF,(e,t)=>{let r=[e.user?.name,e.user?.email].filter(Boolean).join(" "),n=e.orgs.map((s)=>s.agentAllowed===!1?`${s.slug} (${s.role}, not granted)`:`${s.slug} (${s.role})`),o=[["user",r||"-"],["access",e.access.approved?t.good("approved"):t.next("not approved")]];if(!e.access.approved&&e.access.requestAccessUrl)o.push(["open",e.access.requestAccessUrl]);o.push(["orgs",n[0]??"none"]);for(let s of n.slice(1))o.push(["",s]);return ve(o,t)}),setup_status:kt(YF,(e,t)=>{let r=[["org",e.org]];if(e.nextStep==="done")r.push(["done",t.good("Tripwire checks pull requests")]);else if(e.nextStep==="install_app"&&!e.installUrl)r.push(["next",t.next(`Ask an admin of ${e.org} to install the GitHub App`)]);else r.push(["next",t.next(JF[e.nextStep]??e.nextStep)]);if(e.installUrl)r.push(["open",e.installUrl]);return ve(r,t)}),list_repos:kt(XF,(e,t)=>{if(e.length===0)return"No repos yet. Run tripwire status to see the next step.";return Un(["REPO","GATE","TO REVIEW","BLOCKED 24H"],e.map((r)=>[r.name,ou(r.gateOn,t),String(r.toReview),String(r.blocked24h)]))}),list_rule_catalog:kt(QF,(e)=>Un(["RULE","NAME","OPT-IN"],e.map((t)=>[t.ruleId,t.name,t.optIn?"yes":"no"]))),get_repo_rules:kt(eU,(e,t)=>{if(e.length===0)return"No rules on this repo.";return Un(["RULE","STATE","MATCHES 24H","NOTE"],e.map((r)=>[r.ruleId,ou(r.enabled,t),String(r.matches24h??0),r.cannotRun??(r.management==="managed"?"set by a workflow":"")]))}),set_rule:kt(pU,(e,t)=>ve([["done",`${e.ruleId} is ${ou(e.enabled,t)}`]],t)),turn_on_gate:kt(fU,(e,t)=>{let r=[["done",`Gate is ${t.good("on")} for ${e.repo}`]];if(e.url)r.push(["open",e.url]);return ve(r,t)}),list_workflows:kt(tU,(e,t)=>{if(e.length===0)return"No workflows on this repo.";return Un(["WORKFLOW","ID","STATE","TRIGGERS"],e.map((r)=>[r.name,r.id,rU(r,t),vm(r.triggerKinds??[],r.schedules??[]).join(", ")]))}),set_workflow_enabled:kt(nU,(e,t)=>{let r=[["done",`Workflow is ${ou(e.enabled,t)}`]];for(let n of e.warnings??[])r.push(["warning",n.message]);if(e.url)r.push(["open",e.url]);return ve(r,t)}),list_runs:kt(oU,(e,t)=>{if(e.length===0)return"No runs yet.";return Un(["RUN","REPO","PR","STATUS","VERDICT","CREATED"],e.map((r)=>[r.id,r.repo?Z0(r.repo):"-",r.number?`#${r.number}`:"-",r.status,B0(r,t),V0(r.createdAt)]))}),get_run:kt(sU,(e,t)=>{let r=[["run",e.id],["repo",e.number?`${e.repo} #${e.number}`:e.repo],["status",e.status],["verdict",B0(e,t)],["created",V0(e.createdAt)]];if(e.url)r.push(["open",e.url]);let n=ve(r,t);if(e.steps.length===0)return n;let o=Un(["WORKFLOW","STEP","OUTCOME","SUMMARY"],e.steps.map((s)=>{let i=s.outcome??s.status;return[s.workflow??"-",dU(s),s.status==="fail"?t.bad(i):i,s.summary??""]}),0);return`${n}
|
|
270
|
+
|
|
271
|
+
${o}`}),list_moderation_queue:kt(iU,(e)=>{if(e.items.length===0)return"Nothing to review.";return Un(["ITEM","REPO","PR","AUTHOR","TITLE"],e.items.map((t)=>[t.itemId,t.repo?Z0(t.repo):"-",t.number?`#${t.number}`:"-",t.actor??"-",t.title??""]))}),decide_moderation:kt(aU,(e,t)=>{if(e.confirmUrl)return ve([["open",e.confirmUrl],["",e.forUser??"Open this link to confirm."]],t);let r=lU(e);if(!e.done)return ve([["done",`${r.trim()||"This item"} was already decided`]],t);let n=e.decision==="approve"||e.decision==="remove"?uU[e.decision]:"Decided";return ve([["done",t.good(`${n}${r}`)]],t)})};function Y0(e,t,r=bi){let n=mU[e];if(!(n&&t!==null))return null;return n(t,r)}var hU={list_orgs:"Run tripwire whoami to see your orgs.",pick_org:"Pass --org <slug>, or run tripwire whoami to see them.",list_repos:"Run tripwire repos to see them.",list_runs:"Run tripwire runs list to see recent runs.",list_queue:"Run tripwire queue list to see the items.",list_rules:"Run tripwire rules list to see the rules.",list_workflows:"Run tripwire workflows list <repo> to see them."},gU=w({error:p(),hint:p().optional(),org:p().optional()});function yU(e,t){if(e==="list_repos"&&t)return`Run tripwire repos --org ${t} to see them.`;return e?hU[e]:void 0}var wU=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","an object"]]);function bU(e,t){let r=/^Too (big|small): expected (number|string|array) to (?:be|have) ([<>]=?)(\S+)(?: (characters|items))?$/.exec(t);if(r){let[,s="",i="",a="",c="",u=""]=r;if(i==="number"){let l=a==="<="?"or less":a===">="?"or more":"exactly";return a.length===1?`${e} must be ${a==="<"?"less":"more"} than ${c}`:`${e} must be ${c} ${l}`}return s==="big"?`${e} can have at most ${c} ${u}`:`${e} needs at least ${c} ${u}`}let n=/^Invalid input: expected (\w+), received \w+$/.exec(t);if(n){let s=n[1]??"";return`${e} must be ${wU.get(s)??s}`}let o=/^Invalid option: expected one of (.*)$/.exec(t);if(o)return`${e} must be one of ${(o[1]??"").replaceAll('"',"").split("|").join(", ")}`;return`${e} is not valid`}function _U(e){let t=[],r=[];for(let n of e.split(`
|
|
272
|
+
`)){let o=/^(.*) at ([\w.[\]]+)$/.exec(n.trim());if(!o)continue;let[,s="",i=""]=o;if(/received undefined/.test(s))t.push(i);else r.push(bU(i,s))}if(t.length>0)return`Missing argument${t.length>1?"s":""}: ${t.join(", ")}.`;if(r.length>0)return`${r.join(". ")}.`;return"Invalid arguments."}function zo(e,t=null){let r=gU.safeParse(t);if(r.success){let i=yU(r.data.hint,r.data.org);return i?`${r.data.error} ${i}`:r.data.error}let n=e.replace(/^MCP error -?\d+:\s*/,"").trim(),o=/^Input validation error: Invalid arguments for tool [\w-]+: ([\s\S]*)$/.exec(n);if(o)return _U(o[1]??"");if(/^Tool [\w-]+ (not found|disabled)$/.test(n))return"This Tripwire server does not support this command, or your sign-in does not allow it.";return n.replace(/\s*Call [a-z_]+\b[^.]*\./g,"").trim()||"The Tripwire server returned an error."}import{stdout as Om,stdin as m$}from"node:process";import*as Yr from"node:readline";import LU from"node:readline";var X0=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return(t)=>{let r=0;e.lastIndex=0;while(e.test(t))r+=1;return t.length-r}})(),Q0=(e)=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,e$=(e)=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141;var SU=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,vU=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,t$=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,kU=/\t{1,1000}/y,r$=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,xU=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,$U=/\p{M}+/gu,TU={limit:1/0,ellipsis:""},n$=(e,t={},r={})=>{let n=t.limit??1/0,o=t.ellipsis??"",s=t?.ellipsisWidth??(o?n$(o,TU,r).width:0),i=0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.emojiWidth??2,l=2,d=r.regularWidth??1,f=r.wideWidth??2,m=[[xU,d],[SU,0],[vU,a],[kU,c],[r$,u],[t$,f]],h=0,g=0,y=e.length,b=0,T=!1,k=y,I=Math.max(0,n-s),_=0,S=0,x=0,A=0;e:while(!0){if(S>_||g>=y&&g>h){let D=e.slice(_,S)||e.slice(h,g);b=0;for(let Y of D.replaceAll($U,"")){let ie=Y.codePointAt(0)||0;if(Q0(ie))A=2;else if(e$(ie))A=f;else A=d;if(x+A>I)k=Math.min(k,Math.max(_,h)+b);if(x+A>n){T=!0;break e}b+=Y.length,x+=A}_=S=0}if(g>=y)break e;for(let D=0,Y=m.length;D<Y;D++){let[ie,ae]=m[D];if(ie.lastIndex=g,ie.test(e)){if(b=ie===t$?X0(e.slice(g,ie.lastIndex)):ie===r$?1:ie.lastIndex-g,A=b*ae,x+A>I)k=Math.min(k,g+Math.floor((I-x)/ae));if(x+A>n){T=!0;break e}x+=A,_=h,S=g,g=h=ie.lastIndex;continue e}}g+=1}return{width:T?I:x,index:T?k:y,truncated:T,ellipsed:T&&n>=s}},o$=n$;var EU={limit:1/0,ellipsis:"",ellipsisWidth:0},PU=(e,t={})=>o$(e,EU,t).width,ur=PU;var iu="\x1B",u$="",OU=39,xm="\x07",l$="[",IU="]",d$="m",$m=`${IU}8;;`,s$=new RegExp(`(?:\\${l$}(?<code>\\d+)m|\\${$m}(?<uri>.*)${xm})`,"y"),i$=(e)=>{if(e>=30&&e<=37)return 39;if(e>=90&&e<=97)return 39;if(e>=40&&e<=47)return 49;if(e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0;return},a$=(e)=>`${iu}${l$}${e}${d$}`,c$=(e)=>`${iu}${$m}${e}${xm}`,km=(e,t,r)=>{let n=t[Symbol.iterator](),o=!1,s=!1,i=e.at(-1),a=i===void 0?0:ur(i),c=n.next(),u=n.next(),l=0;while(!c.done){let d=c.value,f=ur(d);if(a+f<=r)e[e.length-1]+=d;else e.push(d),a=0;if(d===iu||d===u$)o=!0,s=t.startsWith($m,l+1);if(o){if(s){if(d===xm)o=!1,s=!1}else if(d===d$)o=!1}else if(a+=f,a===r&&!u.done)e.push(""),a=0;c=u,u=n.next(),l+=d.length}if(i=e.at(-1),!a&&i!==void 0&&i.length&&e.length>1)e[e.length-2]+=e.pop()},AU=(e)=>{let t=e.split(" "),r=t.length;while(r){if(ur(t[r-1]))break;r--}if(r===t.length)return e;return t.slice(0,r).join(" ")+t.slice(r).join("")},RU=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",o,s,i=e.split(" "),a=[""],c=0;for(let d=0;d<i.length;d++){let f=i[d];if(r.trim!==!1){let h=a.at(-1)??"",g=h.trimStart();if(h.length!==g.length)a[a.length-1]=g,c=ur(g)}if(d!==0){if(c>=t&&(r.wordWrap===!1||r.trim===!1))a.push(""),c=0;if(c||r.trim===!1)a[a.length-1]+=" ",c++}let m=ur(f);if(r.hard&&m>t){let h=t-c,g=1+Math.floor((m-h-1)/t);if(Math.floor((m-1)/t)<g)a.push("");km(a,f,t),c=ur(a.at(-1)??"");continue}if(c+m>t&&c&&m){if(r.wordWrap===!1&&c<t){km(a,f,t),c=ur(a.at(-1)??"");continue}a.push(""),c=0}if(c+m>t&&r.wordWrap===!1){km(a,f,t),c=ur(a.at(-1)??"");continue}a[a.length-1]+=f,c+=m}if(r.trim!==!1)a=a.map((d)=>AU(d));let u=a.join(`
|
|
273
|
+
`),l=!1;for(let d=0;d<u.length;d++){let f=u[d];if(n+=f,!l){if(l=f>="\uD800"&&f<="\uDBFF",l)continue}else l=!1;if(f===iu||f===u$){s$.lastIndex=d+1;let h=s$.exec(u)?.groups;if(h?.code!==void 0){let g=Number.parseFloat(h.code);o=g===OU?void 0:g}else if(h?.uri!==void 0)s=h.uri.length===0?void 0:h.uri}if(u[d+1]===`
|
|
274
|
+
`){if(s)n+=c$("");let m=o?i$(o):void 0;if(o&&m)n+=a$(m)}else if(f===`
|
|
275
|
+
`){if(o&&i$(o))n+=a$(o);if(s)n+=c$(s)}}return n},CU=/\r?\n/;function Jr(e,t,r){return String(e).normalize().split(CU).map((n)=>RU(n,t,r)).join(`
|
|
276
|
+
`)}var rt=Rn(Em(),1);import{ReadStream as f$}from"node:tty";function cu(e,t,r){if(!r.some((i)=>!i.disabled))return e;let n=e+t,o=Math.max(r.length-1,0),s=n<0?o:n>o?0:n;return r[s]?.disabled?cu(s,t<0?-1:1,r):s}var jU=["up","down","left","right","space","enter","cancel"],DU=["January","February","March","April","May","June","July","August","September","October","November","December"],st={actions:new Set(jU),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...DU],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(e,t)=>`There are only ${e} days in ${t}`,afterMin:(e)=>`Date must be on or after ${e.toISOString().slice(0,10)}`,beforeMax:(e)=>`Date must be on or before ${e.toISOString().slice(0,10)}`}}};function Im(e,t){if(typeof e=="string")return st.aliases.get(e)===t;for(let r of e)if(r!==void 0&&Im(r,t))return!0;return!1}function MU(e,t){if(e===t)return;let r=e.split(`
|
|
277
277
|
`),n=t.split(`
|
|
278
|
-
`),o=Math.max(r.length,n.length),s=[];for(let i=0;i<o;i++)r[i]!==n[i]&&s.push(i);return{lines:s,numLinesBefore:r.length,numLinesAfter:n.length,numLines:o}}var
|
|
278
|
+
`),o=Math.max(r.length,n.length),s=[];for(let i=0;i<o;i++)r[i]!==n[i]&&s.push(i);return{lines:s,numLinesBefore:r.length,numLinesAfter:n.length,numLines:o}}var qU=globalThis.process.platform.startsWith("win"),Pm=Symbol("clack:cancel");function Si(e){return e===Pm}function au(e,t){let r=e;r.isTTY&&r.setRawMode(t)}function h$({input:e=m$,output:t=Om,overwrite:r=!0,hideCursor:n=!0}={}){let o=Yr.createInterface({input:e,output:t,prompt:"",tabSize:1});Yr.emitKeypressEvents(e,o),e instanceof f$&&e.isTTY&&e.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(Im([u,a,c],"cancel")){n&&t.write(rt.cursor.show),process.exit(0);return}if(!r)return;Yr.moveCursor(t,a==="return"?0:-1,a==="return"?-1:0,()=>{Yr.clearLine(t,1,()=>{e.once("keypress",s)})})};return n&&t.write(rt.cursor.hide),e.once("keypress",s),()=>{e.off("keypress",s),n&&t.write(rt.cursor.show),e instanceof f$&&e.isTTY&&!qU&&e.setRawMode(!1),o.terminal=!1,o.close()}}var uu=(e)=>("columns"in e)&&typeof e.columns=="number"?e.columns:80,Am=(e)=>("rows"in e)&&typeof e.rows=="number"?e.rows:20;function vi(e,t,r,n=r,o=r,s){let i=uu(e??Om);return Jr(t,i-r.length,{hard:!0,trim:!1}).split(`
|
|
279
279
|
`).map((a,c,u)=>{let l=s?s(a,c):a;return c===0?`${n}${l}`:c===u.length-1?`${o}${l}`:`${r}${l}`}).join(`
|
|
280
|
-
`)}function
|
|
281
|
-
`),
|
|
282
|
-
`).length-1;this.output.write(
|
|
283
|
-
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(
|
|
280
|
+
`)}function g$(e,t){if("~standard"in e){let r=e["~standard"].validate(t);if(r instanceof Promise)throw TypeError("Schema validation must be synchronous. Update `validate()` and remove any asynchronous logic.");return r.issues?.at(0)?.message}return e(t)}class Rm{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(e,t=!0){let{input:r=m$,output:n=Om,render:o,signal:s,...i}=e;this.opts=i,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=o.bind(this),this._track=t,this._abortSignal=s,this.input=r,this.output=n}unsubscribe(){this._subscribers.clear()}setSubscriber(e,t){let r=this._subscribers.get(e)??[];r.push(t),this._subscribers.set(e,r)}on(e,t){this.setSubscriber(e,{cb:t})}once(e,t){this.setSubscriber(e,{cb:t,once:!0})}emit(e,...t){let r=this._subscribers.get(e)??[],n=[];for(let o of r)o.cb(...t),o.once&&n.push(()=>r.splice(r.indexOf(o),1));for(let o of n)o()}prompt(){return new Promise((e)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),e(Pm);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=LU.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),au(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(rt.cursor.show),this.output.off("resize",this.render),au(this.input,!1),e(this.value)}),this.once("cancel",()=>{this.output.write(rt.cursor.show),this.output.off("resize",this.render),au(this.input,!1),e(Pm)})})}_isActionKey(e,t){return e==="\t"}_shouldSubmit(e,t){return!0}_setValue(e){this.value=e,this.emit("value",this.value)}_setUserInput(e,t){this.userInput=e??"",this.emit("userInput",this.userInput),t&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(e,t){if(this._track&&t.name!=="return"&&(t.name&&this._isActionKey(e,t)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),t?.name&&(!this._track&&st.aliases.has(t.name)&&this.emit("cursor",st.aliases.get(t.name)),st.actions.has(t.name)&&this.emit("cursor",t.name)),e&&(e.toLowerCase()==="y"||e.toLowerCase()==="n")&&this.emit("confirm",e.toLowerCase()==="y"),this.emit("key",e,t),t?.name==="return"&&this._shouldSubmit(e,t)){if(this.opts.validate){let r=g$(this.opts.validate,this.value);r&&(this.error=r instanceof Error?r.message:r,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}Im([e,t?.name,t?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
|
|
281
|
+
`),au(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let e=Jr(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
|
|
282
|
+
`).length-1;this.output.write(rt.cursor.move(-999,e*-1))}render(){let e=Jr(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(e!==this._prevFrame){if(this.state==="initial")this.output.write(rt.cursor.hide);else{let t=MU(this._prevFrame,e),r=Am(this.output);if(this.restoreCursor(),t){let n=Math.max(0,t.numLinesAfter-r),o=Math.max(0,t.numLinesBefore-r),s=t.lines.find((i)=>i>=n);if(s===void 0){this._prevFrame=e;return}if(t.lines.length===1){this.output.write(rt.cursor.move(0,s-o)),this.output.write(rt.erase.lines(1));let i=e.split(`
|
|
283
|
+
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(rt.cursor.move(0,i.length-s-1));return}else if(t.lines.length>1){if(n<o)s=n;else{let a=s-o;a>0&&this.output.write(rt.cursor.move(0,a))}this.output.write(rt.erase.down());let i=e.split(`
|
|
284
284
|
`).slice(s);this.output.write(i.join(`
|
|
285
|
-
`)),this._prevFrame=e;return}}this.output.write(
|
|
286
|
-
`);y.push(A),b+=A.length}if(b>l){let _=0,
|
|
285
|
+
`)),this._prevFrame=e;return}}this.output.write(rt.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}}class Cm extends Rm{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(e){super(e,!1),this.value=!!e.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",(t)=>{this.output.write(rt.cursor.move(0,-1)),this.value=t,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}class zm extends Rm{options;cursor=0;get _value(){return this.options[this.cursor]?.value}get _enabledOptions(){return this.options.filter((e)=>e.disabled!==!0)}toggleAll(){let e=this._enabledOptions,t=this.value!==void 0&&this.value.length===e.length;this.value=t?[]:e.map((r)=>r.value)}toggleInvert(){let e=this.value;if(!e)return;let t=this._enabledOptions.filter((r)=>!e.includes(r.value));this.value=t.map((r)=>r.value)}toggleValue(){this.value===void 0&&(this.value=[]);let e=this.value.includes(this._value);this.value=e?this.value.filter((t)=>t!==this._value):[...this.value,this._value]}constructor(e){super(e,!1),this.options=e.options,this.value=[...e.initialValues??[]];let t=Math.max(this.options.findIndex(({value:r})=>r===e.cursorAt),0);this.cursor=this.options[t]?.disabled?cu(t,1,this.options):t,this.on("key",(r,n)=>{n.name==="a"&&this.toggleAll(),n.name==="i"&&this.toggleInvert()}),this.on("cursor",(r)=>{switch(r){case"left":case"up":this.cursor=cu(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=cu(this.cursor,1,this.options);break;case"space":this.toggleValue();break}})}}import{styleText as N,stripVTControlCharacters as Mfe}from"node:util";import Gt from"node:process";var xi=Rn(Em(),1);function FU(){if(Gt.platform!=="win32")return Gt.env.TERM!=="linux";return Boolean(Gt.env.CI)||Boolean(Gt.env.WT_SESSION)||Boolean(Gt.env.TERMINUS_SUBLIME)||Gt.env.ConEmuTask==="{cmd::Cmder}"||Gt.env.TERM_PROGRAM==="Terminus-Sublime"||Gt.env.TERM_PROGRAM==="vscode"||Gt.env.TERM==="xterm-256color"||Gt.env.TERM==="alacritty"||Gt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Nm=FU(),UU=()=>process.env.CI==="true";var we=(e,t)=>Nm?e:t,WU=we("◆","*"),k$=we("■","x"),x$=we("▲","x"),Lm=we("◇","o"),VU=we("┌","T"),Ee=we("│","|"),No=we("└","—"),Wfe=we("┐","T"),Vfe=we("┘","—"),y$=we("●",">"),w$=we("○"," "),ZU=we("◻","[•]"),b$=we("◼","[+]"),_$=we("◻","[ ]"),Zfe=we("▪","•"),Bfe=we("─","-"),Kfe=we("╮","+"),Hfe=we("├","+"),Gfe=we("╯","+"),Jfe=we("╰","+"),Yfe=we("╭","+"),BU=we("●","•"),KU=we("◆","*"),HU=we("▲","!"),GU=we("■","x"),$$=(e)=>{switch(e){case"initial":case"active":return N("cyan",WU);case"cancel":return N("red",k$);case"error":return N("yellow",x$);case"submit":return N("green",Lm)}},JU=(e)=>{switch(e){case"initial":case"active":return N("cyan",Ee);case"cancel":return N("red",Ee);case"error":return N("yellow",Ee);case"submit":return N("green",Ee)}};function YU(e,t){let r=[`${t?`${N("cyan",Ee)} `:""}${e.join(" • ")}`];return t&&r.push(N("cyan",No)),r}var S$=(e,t,r,n,o,s=!1)=>{let i=t,a=0;if(s)for(let c=n-1;c>=r;c--){let u=e[c];if(u&&(i-=u.length),a++,i<=o)break}else for(let c=r;c<n;c++){let u=e[c];if(u&&(i-=u.length),a++,i<=o)break}return{lineCount:i,removals:a}},v$=({cursor:e,options:t,style:r,output:n=process.stdout,maxItems:o=Number.POSITIVE_INFINITY,columnPadding:s=0,rowPadding:i=4})=>{let a=uu(n)-s,c=Am(n),u=N("dim","..."),l=Math.max(c-i,0),d=Math.max(Math.min(o,l),5),f=0;e>=d-3&&(f=Math.max(Math.min(e-d+3,t.length-d),0));let m=d<t.length&&f>0,h=d<t.length&&f+d<t.length,g=Math.min(f+d,t.length),y=[],b=0;m&&b++,h&&b++;let T=f+(m?1:0),k=g-(h?1:0);for(let _=T;_<k;_++){let S=t[_],x=S?r(S,_===e):"",A=Jr(x,a,{hard:!0,trim:!1}).split(`
|
|
286
|
+
`);y.push(A),b+=A.length}if(b>l){let _=0,S=0,x=b,A=e-T,D=l,Y=()=>S$(y,x,0,A,D),ie=()=>S$(y,x,A+1,y.length,D,!0);m?({lineCount:x,removals:_}=Y(),x>D&&(h||(D-=1),{lineCount:x,removals:S}=ie())):(h||(D-=1),{lineCount:x,removals:S}=ie(),x>D&&(D-=1,{lineCount:x,removals:_}=Y())),_>0&&(m=!0,y.splice(0,_)),S>0&&(h=!0,y.splice(y.length-S,S))}let I=[];m&&I.push(u);for(let _ of y)for(let S of _)I.push(S);return h&&I.push(u),I};var T$=(e)=>{let t=e.active??"Yes",r=e.inactive??"No";return new Cm({active:t,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){let n=e.withGuide??st.withGuide,o=`${$$(this.state)} `,s=n?`${N("gray",Ee)} `:"",i=vi(e.output,e.message,s,o),a=`${n?`${N("gray",Ee)}
|
|
287
287
|
`:""}${i}
|
|
288
288
|
`,c=this.value?t:r;switch(this.state){case"submit":{let u=n?`${N("gray",Ee)} `:"";return`${a}${u}${N("dim",c)}`}case"cancel":{let u=n?`${N("gray",Ee)} `:"";return`${a}${u}${N(["strikethrough","dim"],c)}${n?`
|
|
289
|
-
${N("gray",Ee)}`:""}`}default:{let u=n?`${N("cyan",Ee)} `:"",l=n?N("cyan",
|
|
289
|
+
${N("gray",Ee)}`:""}`}default:{let u=n?`${N("cyan",Ee)} `:"",l=n?N("cyan",No):"";return`${a}${u}${this.value?`${N("green",y$)} ${t}`:`${N("dim",w$)} ${N("dim",t)}`}${e.vertical?n?`
|
|
290
290
|
${N("cyan",Ee)} `:`
|
|
291
|
-
`:` ${N("dim","/")} `}${this.value?`${N("dim",
|
|
291
|
+
`:` ${N("dim","/")} `}${this.value?`${N("dim",w$)} ${N("dim",r)}`:`${N("green",y$)} ${r}`}
|
|
292
292
|
${l}
|
|
293
|
-
`}}}}).prompt()};var
|
|
293
|
+
`}}}}).prompt()};var XU=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Space:")} select`,`${N("dim","Enter:")} confirm`],ki=(e,t)=>e.split(`
|
|
294
294
|
`).map((r)=>t(r)).join(`
|
|
295
|
-
`),
|
|
296
|
-
${N("reset",N("dim",`Press ${N(["gray","bgWhite","inverse"]," space ")} to select, ${N("gray",N("bgWhite",N("inverse"," enter ")))} to submit`))}`},render(){let o=e.withGuide??
|
|
295
|
+
`),E$=(e)=>{let t=(o,s)=>{let i=o.label??String(o.value);return s==="disabled"?`${N("gray",_$)} ${ki(i,(a)=>N(["strikethrough","gray"],a))}${o.hint?` ${N("dim",`(${o.hint??"disabled"})`)}`:""}`:s==="active"?`${N("cyan",ZU)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="selected"?`${N("green",b$)} ${ki(i,(a)=>N("dim",a))}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="cancelled"?`${ki(i,(a)=>N(["strikethrough","dim"],a))}`:s==="active-selected"?`${N("green",b$)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="submitted"?`${ki(i,(a)=>N("dim",a))}`:`${N("dim",_$)} ${ki(i,(a)=>N("dim",a))}`},r=e.required??!0,n=e.showInstructions??!0;return new zm({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValues:e.initialValues,required:r,cursorAt:e.cursorAt,validate(o){if(r&&(o===void 0||o.length===0))return`Please select at least one option.
|
|
296
|
+
${N("reset",N("dim",`Press ${N(["gray","bgWhite","inverse"]," space ")} to select, ${N("gray",N("bgWhite",N("inverse"," enter ")))} to submit`))}`},render(){let o=e.withGuide??st.withGuide,s=vi(e.output,e.message,o?`${JU(this.state)} `:"",`${$$(this.state)} `),i=`${o?`${N("gray",Ee)}
|
|
297
297
|
`:""}${s}
|
|
298
|
-
`,a=this.value??[],c=(u,l)=>{if(u.disabled)return t(u,"disabled");let d=a.includes(u.value);return l&&d?t(u,"active-selected"):d?t(u,"selected"):t(u,l?"active":"inactive")};switch(this.state){case"submit":{let u=this.options.filter(({value:d})=>a.includes(d)).map((d)=>t(d,"submitted")).join(N("dim",", "))||N("dim","none"),l=
|
|
298
|
+
`,a=this.value??[],c=(u,l)=>{if(u.disabled)return t(u,"disabled");let d=a.includes(u.value);return l&&d?t(u,"active-selected"):d?t(u,"selected"):t(u,l?"active":"inactive")};switch(this.state){case"submit":{let u=this.options.filter(({value:d})=>a.includes(d)).map((d)=>t(d,"submitted")).join(N("dim",", "))||N("dim","none"),l=vi(e.output,u,o?`${N("gray",Ee)} `:"");return`${i}${l}`}case"cancel":{let u=this.options.filter(({value:d})=>a.includes(d)).map((d)=>t(d,"cancelled")).join(N("dim",", "));if(u.trim()==="")return`${i}${N("gray",Ee)}`;let l=vi(e.output,u,o?`${N("gray",Ee)} `:"");return`${i}${l}${o?`
|
|
299
299
|
${N("gray",Ee)}`:""}`}case"error":{let u=o?`${N("yellow",Ee)} `:"",l=this.error.split(`
|
|
300
|
-
`).map((m,h)=>h===0?`${o?`${N("yellow",
|
|
300
|
+
`).map((m,h)=>h===0?`${o?`${N("yellow",No)} `:""}${N("yellow",m)}`:` ${m}`).join(`
|
|
301
301
|
`),d=i.split(`
|
|
302
302
|
`).length,f=l.split(`
|
|
303
|
-
`).length+1;return`${i}${u}${
|
|
303
|
+
`).length+1;return`${i}${u}${v$({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:d+f,style:c}).join(`
|
|
304
304
|
${u}`)}
|
|
305
305
|
${l}
|
|
306
306
|
`}default:{let u=o?`${N("cyan",Ee)} `:"",l=i.split(`
|
|
307
|
-
`).length,d=n?
|
|
308
|
-
`),m=d.length+1;return`${i}${u}${
|
|
307
|
+
`).length,d=n?YU(XU,o):o?[N("cyan",No)]:[],f=d.join(`
|
|
308
|
+
`),m=d.length+1;return`${i}${u}${v$({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:l+m,style:c}).join(`
|
|
309
309
|
${u}`)}
|
|
310
310
|
${f}
|
|
311
|
-
`}}}}).prompt()};var
|
|
311
|
+
`}}}}).prompt()};var Le={message:(e=[],{symbol:t=N("gray",Ee),secondarySymbol:r=N("gray",Ee),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??st.withGuide,c=a?r:"",u=a?`${t} `:"",l=a?`${r} `:"";for(let f=0;f<o;f++)i.push(c);let d=Array.isArray(e)?e:e.split(`
|
|
312
312
|
`);if(d.length>0){let[f,...m]=d;f.length>0?i.push(`${u}${f}`):i.push(a?t:"");for(let h of m)h.length>0?i.push(`${l}${h}`):i.push(a?r:"")}n.write(`${i.join(`
|
|
313
313
|
`)}
|
|
314
|
-
`)},info:(e,t)=>{
|
|
315
|
-
|
|
316
|
-
`)},
|
|
317
|
-
`)}
|
|
318
|
-
${N("gray",
|
|
319
|
-
|
|
320
|
-
`)};var
|
|
321
|
-
`);let W=
|
|
322
|
-
`);W.length>1&&r.write(
|
|
323
|
-
`);let oe=0,
|
|
324
|
-
`):r.write(`${
|
|
325
|
-
`)),x(),l()};return{start:ae,stop:(W="")=>
|
|
326
|
-
`;break;case 114:
|
|
327
|
-
`;return a++,u=n,i=14}switch(
|
|
314
|
+
`)},info:(e,t)=>{Le.message(e,{...t,symbol:N("blue",BU)})},success:(e,t)=>{Le.message(e,{...t,symbol:N("green",KU)})},step:(e,t)=>{Le.message(e,{...t,symbol:N("green",Lm)})},warn:(e,t)=>{Le.message(e,{...t,symbol:N("yellow",HU)})},warning:(e,t)=>{Le.warn(e,t)},error:(e,t)=>{Le.message(e,{...t,symbol:N("red",GU)})}},lu=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??st.withGuide?`${N("gray",No)} `:"";r.write(`${n}${N("red",e)}
|
|
315
|
+
|
|
316
|
+
`)},P$=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??st.withGuide?`${N("gray",VU)} `:"";r.write(`${n}${e}
|
|
317
|
+
`)},$i=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??st.withGuide?`${N("gray",Ee)}
|
|
318
|
+
${N("gray",No)} `:"";r.write(`${n}${e}
|
|
319
|
+
|
|
320
|
+
`)};var QU=(e)=>N("magenta",e),Ti=({indicator:e="dots",onCancel:t,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=Nm?["◒","◐","◓","◑"]:["•","o","O","0"],delay:i=Nm?80:120,signal:a,...c}={})=>{let u=UU(),l,d,f=!1,m=!1,h="",g,y=performance.now(),b=uu(r),T=c?.styleFrame??QU,k=(W)=>{let oe=W>1?o??st.messages.error:n??st.messages.cancel;m=W===1,f&&(qe(oe,W),m&&typeof t=="function"&&t())},I=()=>k(2),_=()=>k(1),S=()=>{process.on("uncaughtExceptionMonitor",I),process.on("unhandledRejection",I),process.on("SIGINT",_),process.on("SIGTERM",_),process.on("exit",k),a&&a.addEventListener("abort",_)},x=()=>{process.removeListener("uncaughtExceptionMonitor",I),process.removeListener("unhandledRejection",I),process.removeListener("SIGINT",_),process.removeListener("SIGTERM",_),process.removeListener("exit",k),a&&a.removeEventListener("abort",_)},A=()=>{if(g===void 0)return;u&&r.write(`
|
|
321
|
+
`);let W=Jr(g,b,{hard:!0,trim:!1}).split(`
|
|
322
|
+
`);W.length>1&&r.write(xi.cursor.up(W.length-1)),r.write(xi.cursor.to(0)),r.write(xi.erase.down())},D=(W)=>W.replace(/\.+$/,""),Y=(W)=>{let oe=(performance.now()-W)/1000,Pt=Math.floor(oe/60),at=Math.floor(oe%60);return Pt>0?`[${Pt}m ${at}s]`:`[${at}s]`},ie=c.withGuide??st.withGuide,ae=(W="")=>{f=!0,l=h$({output:r}),h=D(W),y=performance.now(),ie&&r.write(`${N("gray",Ee)}
|
|
323
|
+
`);let oe=0,Pt=0;S(),d=setInterval(()=>{if(u&&h===g)return;A(),g=h;let at=T(s[oe]),Ia;if(u)Ia=`${at} ${h}...`;else if(e==="timer")Ia=`${at} ${h} ${Y(y)}`;else{let Fz=".".repeat(Math.floor(Pt)).slice(0,3);Ia=`${at} ${h}${Fz}`}let qz=Jr(Ia,b,{hard:!0,trim:!1});r.write(qz),oe=oe+1<s.length?oe+1:0,Pt=Pt<4?Pt+0.125:0},i)},qe=(W="",oe=0,Pt=!1)=>{if(!f)return;f=!1,clearInterval(d),A();let at=oe===0?N("green",Lm):oe===1?N("red",k$):N("red",x$);h=W??h,Pt||(e==="timer"?r.write(`${at} ${h} ${Y(y)}
|
|
324
|
+
`):r.write(`${at} ${h}
|
|
325
|
+
`)),x(),l()};return{start:ae,stop:(W="")=>qe(W,0),message:(W="")=>{h=D(W??h)},cancel:(W="")=>qe(W,1),error:(W="")=>qe(W,2),clear:()=>qe("",0,!0),get isCancelled(){return m}}},Xfe={light:we("─","-"),heavy:we("━","="),block:we("█","#")};var Qfe=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Enter:")} confirm`];var eme=`${N("gray",Ee)} `;var $t=Rn(nu(),1);import{join as yW}from"node:path";import{readFileSync as hW}from"node:fs";import{join as Do}from"node:path";import{mkdirSync as aW,readFileSync as cW,renameSync as uW,writeFileSync as lW}from"node:fs";import{dirname as dW}from"node:path";function Pi(e,t=!1){let r=e.length,n=0,o="",s=0,i=16,a=0,c=0,u=0,l=0,d=0;function f(k,I){let _=0,S=0;while(_<k||!I){let x=e.charCodeAt(n);if(x>=48&&x<=57)S=S*16+x-48;else if(x>=65&&x<=70)S=S*16+x-65+10;else if(x>=97&&x<=102)S=S*16+x-97+10;else break;n++,_++}if(_<k)S=-1;return S}function m(k){n=k,o="",s=0,i=16,d=0}function h(){let k=n;if(e.charCodeAt(n)===48)n++;else{n++;while(n<e.length&&Lo(e.charCodeAt(n)))n++}if(n<e.length&&e.charCodeAt(n)===46)if(n++,n<e.length&&Lo(e.charCodeAt(n))){n++;while(n<e.length&&Lo(e.charCodeAt(n)))n++}else return d=3,e.substring(k,n);let I=n;if(n<e.length&&(e.charCodeAt(n)===69||e.charCodeAt(n)===101)){if(n++,n<e.length&&e.charCodeAt(n)===43||e.charCodeAt(n)===45)n++;if(n<e.length&&Lo(e.charCodeAt(n))){n++;while(n<e.length&&Lo(e.charCodeAt(n)))n++;I=n}else d=3}return e.substring(k,I)}function g(){let k="",I=n;while(!0){if(n>=r){k+=e.substring(I,n),d=2;break}let _=e.charCodeAt(n);if(_===34){k+=e.substring(I,n),n++;break}if(_===92){if(k+=e.substring(I,n),n++,n>=r){d=2;break}switch(e.charCodeAt(n++)){case 34:k+='"';break;case 92:k+="\\";break;case 47:k+="/";break;case 98:k+="\b";break;case 102:k+="\f";break;case 110:k+=`
|
|
326
|
+
`;break;case 114:k+="\r";break;case 116:k+="\t";break;case 117:let x=f(4,!0);if(x>=0)k+=String.fromCharCode(x);else d=4;break;default:d=5}I=n;continue}if(_>=0&&_<=31)if(Ei(_)){k+=e.substring(I,n),d=2;break}else d=6;n++}return k}function y(){if(o="",d=0,s=n,c=a,l=u,n>=r)return s=r,i=17;let k=e.charCodeAt(n);if(jm(k)){do n++,o+=String.fromCharCode(k),k=e.charCodeAt(n);while(jm(k));return i=15}if(Ei(k)){if(n++,o+=String.fromCharCode(k),k===13&&e.charCodeAt(n)===10)n++,o+=`
|
|
327
|
+
`;return a++,u=n,i=14}switch(k){case 123:return n++,i=1;case 125:return n++,i=2;case 91:return n++,i=3;case 93:return n++,i=4;case 58:return n++,i=6;case 44:return n++,i=5;case 34:return n++,o=g(),i=10;case 47:let I=n-1;if(e.charCodeAt(n+1)===47){n+=2;while(n<r){if(Ei(e.charCodeAt(n)))break;n++}return o=e.substring(I,n),i=12}if(e.charCodeAt(n+1)===42){n+=2;let _=r-1,S=!1;while(n<_){let x=e.charCodeAt(n);if(x===42&&e.charCodeAt(n+1)===47){n+=2,S=!0;break}if(n++,Ei(x)){if(x===13&&e.charCodeAt(n)===10)n++;a++,u=n}}if(!S)n++,d=1;return o=e.substring(I,n),i=13}return o+=String.fromCharCode(k),n++,i=16;case 45:if(o+=String.fromCharCode(k),n++,n===r||!Lo(e.charCodeAt(n)))return i=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return o+=h(),i=11;default:while(n<r&&b(k))n++,k=e.charCodeAt(n);if(s!==n){switch(o=e.substring(s,n),o){case"true":return i=8;case"false":return i=9;case"null":return i=7}return i=16}return o+=String.fromCharCode(k),n++,i=16}}function b(k){if(jm(k)||Ei(k))return!1;switch(k){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function T(){let k;do k=y();while(k>=12&&k<=15);return k}return{setPosition:m,getPosition:()=>n,scan:t?T:y,getToken:()=>i,getTokenValue:()=>o,getTokenOffset:()=>s,getTokenLength:()=>n-s,getTokenStartLine:()=>c,getTokenStartCharacter:()=>s-l,getTokenError:()=>d}}function jm(e){return e===32||e===9}function Ei(e){return e===10||e===13}function Lo(e){return e>=48&&e<=57}var I$;(function(e){e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.space=32]="space",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.asterisk=42]="asterisk",e[e.backslash=92]="backslash",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.plus=43]="plus",e[e.slash=47]="slash",e[e.formFeed=12]="formFeed",e[e.tab=9]="tab"})(I$||(I$={}));var xt=Array(20).fill(0).map((e,t)=>" ".repeat(t));var Dm={" ":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
328
328
|
`+" ".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>`\r
|
|
329
329
|
`+" ".repeat(t))},"\t":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
330
330
|
`+"\t".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+"\t".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>`\r
|
|
331
|
-
`+"\t".repeat(t))}},
|
|
331
|
+
`+"\t".repeat(t))}},A$=[`
|
|
332
332
|
`,"\r",`\r
|
|
333
|
-
`];function
|
|
333
|
+
`];function Mm(e,t,r){let n,o,s,i,a;if(t){i=t.offset,a=i+t.length,s=i;while(s>0&&!Oi(e,s-1))s--;let _=a;while(_<e.length&&!Oi(e,_))_++;o=e.substring(s,_),n=tW(o,r)}else o=e,n=0,s=0,i=0,a=e.length;let c=rW(r,e),u=A$.includes(c),l=0,d=0,f;if(r.insertSpaces)f=xt[r.tabSize||4]??jo(xt[1],r.tabSize||4);else f="\t";let m=f==="\t"?"\t":" ",h=Pi(o,!1),g=!1;function y(){if(l>1)return jo(c,l)+jo(f,n+d);let _=f.length*(n+d);if(!u||_>Dm[m][c].length)return c+jo(f,n+d);if(_<=0)return c;return Dm[m][c][_]}function b(){let _=h.scan();l=0;while(_===15||_===14){if(_===14&&r.keepLines)l+=1;else if(_===14)l=1;_=h.scan()}return g=_===16||h.getTokenError()!==0,_}let T=[];function k(_,S,x){if(!g&&(!t||S<a&&x>i)&&e.substring(S,x)!==_)T.push({offset:S,length:x-S,content:_})}let I=b();if(r.keepLines&&l>0)k(jo(c,l),0,0);if(I!==17){let _=h.getTokenOffset()+s,S=f.length*n<20&&r.insertSpaces?xt[f.length*n]:jo(f,n);k(S,s,_)}while(I!==17){let _=h.getTokenOffset()+h.getTokenLength()+s,S=b(),x="",A=!1;while(l===0&&(S===12||S===13)){let Y=h.getTokenOffset()+s;k(xt[1],_,Y),_=h.getTokenOffset()+h.getTokenLength()+s,A=S===12,x=A?y():"",S=b()}if(S===2){if(I!==1)d--;if(r.keepLines&&l>0||!r.keepLines&&I!==1)x=y();else if(r.keepLines)x=xt[1]}else if(S===4){if(I!==3)d--;if(r.keepLines&&l>0||!r.keepLines&&I!==3)x=y();else if(r.keepLines)x=xt[1]}else{switch(I){case 3:case 1:if(d++,r.keepLines&&l>0||!r.keepLines)x=y();else x=xt[1];break;case 5:if(r.keepLines&&l>0||!r.keepLines)x=y();else x=xt[1];break;case 12:x=y();break;case 13:if(l>0)x=y();else if(!A)x=xt[1];break;case 6:if(r.keepLines&&l>0)x=y();else if(!A)x=xt[1];break;case 10:if(r.keepLines&&l>0)x=y();else if(S===6&&!A)x="";break;case 7:case 8:case 9:case 11:case 2:case 4:if(r.keepLines&&l>0)x=y();else if((S===12||S===13)&&!A)x=xt[1];else if(S!==5&&S!==17)g=!0;break;case 16:g=!0;break}if(l>0&&(S===12||S===13))x=y()}if(S===17)if(r.keepLines&&l>0)x=y();else x=r.insertFinalNewline?c:"";let D=h.getTokenOffset()+s;k(x,_,D),I=S}return T}function jo(e,t){let r="";for(let n=0;n<t;n++)r+=e;return r}function tW(e,t){let r=0,n=0,o=t.tabSize||4;while(r<e.length){let s=e.charAt(r);if(s===xt[1])n++;else if(s==="\t")n+=o;else break;r++}return Math.floor(n/o)}function rW(e,t){for(let r=0;r<t.length;r++){let n=t.charAt(r);if(n==="\r"){if(r+1<t.length&&t.charAt(r+1)===`
|
|
334
334
|
`)return`\r
|
|
335
335
|
`;return"\r"}else if(n===`
|
|
336
336
|
`)return`
|
|
337
337
|
`}return e&&e.eol||`
|
|
338
|
-
`}function
|
|
339
|
-
`.indexOf(e.charAt(t))!==-1}var Pi;(function(e){e.DEFAULT={allowTrailingComma:!1}})(Pi||(Pi={}));function E$(e,t=[],r=Pi.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return Nm(e,{onObjectBegin:()=>{let c={};i(c),s.push(o),o=c,n=null},onObjectProperty:(c)=>{n=c},onObjectEnd:()=>{o=s.pop()},onArrayBegin:()=>{let c=[];i(c),s.push(o),o=c,n=null},onArrayEnd:()=>{o=s.pop()},onLiteralValue:i,onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r),o[0]}function zm(e,t=[],r=Pi.DEFAULT){let n={type:"array",offset:-1,length:-1,children:[],parent:void 0};function o(c){if(n.type==="property")n.length=c-n.offset,n=n.parent}function s(c){return n.children.push(c),c}Nm(e,{onObjectBegin:(c)=>{n=s({type:"object",offset:c,length:-1,parent:n,children:[]})},onObjectProperty:(c,u,l)=>{n=s({type:"property",offset:u,length:-1,parent:n,children:[]}),n.children.push({type:"string",value:c,offset:u,length:l,parent:n})},onObjectEnd:(c,u)=>{o(c+u),n.length=c+u-n.offset,n=n.parent,o(c+u)},onArrayBegin:(c,u)=>{n=s({type:"array",offset:c,length:-1,parent:n,children:[]})},onArrayEnd:(c,u)=>{n.length=c+u-n.offset,n=n.parent,o(c+u)},onLiteralValue:(c,u,l)=>{s({type:JU(c),offset:u,length:l,parent:n,value:c}),o(u+l)},onSeparator:(c,u,l)=>{if(n.type==="property"){if(c===":")n.colonOffset=u;else if(c===",")o(u)}},onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r);let a=n.children[0];if(a)delete a.parent;return a}function au(e,t){if(!e)return;let r=e;for(let n of t)if(typeof n==="string"){if(r.type!=="object"||!Array.isArray(r.children))return;let o=!1;for(let s of r.children)if(Array.isArray(s.children)&&s.children[0].value===n&&s.children.length===2){r=s.children[1],o=!0;break}if(!o)return}else{let o=n;if(r.type!=="array"||o<0||!Array.isArray(r.children)||o>=r.children.length)return;r=r.children[o]}return r}function Nm(e,t,r=Pi.DEFAULT){let n=Ti(e,!1),o=[],s=0;function i(W){return W?()=>s===0&&W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice()):()=>!0}function u(W){return W?()=>{if(s>0)s++;else if(W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice())===!1)s=1}:()=>!0}function l(W){return W?()=>{if(s>0)s--;if(s===0)W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter())}:()=>!0}let d=u(t.onObjectBegin),f=c(t.onObjectProperty),m=l(t.onObjectEnd),h=u(t.onArrayBegin),g=l(t.onArrayEnd),y=c(t.onLiteralValue),b=a(t.onSeparator),T=i(t.onComment),S=a(t.onError),I=r&&r.disallowComments,_=r&&r.allowTrailingComma;function v(){while(!0){let W=n.scan();switch(n.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:if(!I)x(11);break;case 2:x(12);break;case 6:x(16);break}switch(W){case 12:case 13:if(I)x(10);else T();break;case 16:x(1);break;case 15:case 14:break;default:return W}}}function x(W,oe=[],Et=[]){if(S(W),oe.length+Et.length>0){let it=n.getToken();while(it!==17){if(oe.indexOf(it)!==-1){v();break}else if(Et.indexOf(it)!==-1)break;it=v()}}}function A(W){let oe=n.getTokenValue();if(W)y(oe);else f(oe),o.push(oe);return v(),!0}function j(){switch(n.getToken()){case 11:let W=n.getTokenValue(),oe=Number(W);if(isNaN(oe))x(2),oe=0;y(oe);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return v(),!0}function Y(){if(n.getToken()!==10)return x(3,[],[2,5]),!1;if(A(!1),n.getToken()===6){if(b(":"),v(),!Me())x(4,[],[2,5])}else x(5,[],[2,5]);return o.pop(),!0}function ie(){d(),v();let W=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!W)x(4,[],[]);if(b(","),v(),n.getToken()===2&&_)break}else if(W)x(6,[],[]);if(!Y())x(4,[],[2,5]);W=!0}if(m(),n.getToken()!==2)x(7,[2],[]);else v();return!0}function ae(){h(),v();let W=!0,oe=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!oe)x(4,[],[]);if(b(","),v(),n.getToken()===4&&_)break}else if(oe)x(6,[],[]);if(W)o.push(0),W=!1;else o[o.length-1]++;if(!Me())x(4,[],[4,5]);oe=!0}if(g(),!W)o.pop();if(n.getToken()!==4)x(8,[4],[]);else v();return!0}function Me(){switch(n.getToken()){case 3:return ae();case 1:return ie();case 10:return A(!0);default:return j()}}if(v(),n.getToken()===17){if(r.allowEmptyContent)return!0;return x(4,[],[]),!1}if(!Me())return x(4,[],[]),!1;if(n.getToken()!==17)x(9,[],[]);return!0}function JU(e){switch(typeof e){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!e)return"null";else if(Array.isArray(e))return"array";return"object"}default:return"null"}}function P$(e,t,r,n){let o=t.slice(),i=zm(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=au(i,o),a===void 0&&r!==void 0)if(typeof c==="string")r={[c]:r};else r=[r];else break;if(!a){if(r===void 0)throw Error("Can not delete in empty document");return Fn(e,{offset:i?i.offset:0,length:i?i.length:0,content:JSON.stringify(r)},n)}else if(a.type==="object"&&typeof c==="string"&&Array.isArray(a.children)){let u=au(a,[c]);if(u!==void 0)if(r===void 0){if(!u.parent)throw Error("Malformed AST");let l=a.children.indexOf(u.parent),d,f=u.parent.offset+u.parent.length;if(l>0){let m=a.children[l-1];d=m.offset+m.length}else if(d=a.offset+1,a.children.length>1)f=a.children[1].offset;return Fn(e,{offset:d,length:f-d,content:""},n)}else return Fn(e,{offset:u.offset,length:u.length,content:JSON.stringify(r)},n);else{if(r===void 0)return[];let l=`${JSON.stringify(c)}: ${JSON.stringify(r)}`,d=n.getInsertionIndex?n.getInsertionIndex(a.children.map((m)=>m.children[0].value)):a.children.length,f;if(d>0){let m=a.children[d-1];f={offset:m.offset+m.length,length:0,content:","+l}}else if(a.children.length===0)f={offset:a.offset+1,length:0,content:l};else f={offset:a.offset+1,length:0,content:l+","};return Fn(e,f,n)}}else if(a.type==="array"&&typeof c==="number"&&Array.isArray(a.children)){let u=c;if(u===-1){let l=`${JSON.stringify(r)}`,d;if(a.children.length===0)d={offset:a.offset+1,length:0,content:l};else{let f=a.children[a.children.length-1];d={offset:f.offset+f.length,length:0,content:","+l}}return Fn(e,d,n)}else if(r===void 0&&a.children.length>=0){let l=c,d=a.children[l],f;if(a.children.length===1)f={offset:a.offset+1,length:a.length-2,content:""};else if(a.children.length-1===l){let m=a.children[l-1],h=m.offset+m.length,g=a.offset+a.length;f={offset:h,length:g-2-h,content:""}}else f={offset:d.offset,length:a.children[l+1].offset-d.offset,content:""};return Fn(e,f,n)}else if(r!==void 0){let l,d=`${JSON.stringify(r)}`;if(!n.isArrayInsertion&&a.children.length>c){let f=a.children[c];l={offset:f.offset,length:f.length,content:d}}else if(a.children.length===0||c===0)l={offset:a.offset+1,length:0,content:a.children.length===0?d:d+","};else{let f=c>a.children.length?a.children.length:c,m=a.children[f-1];l={offset:m.offset+m.length,length:0,content:","+d}}return Fn(e,l,n)}else throw Error(`Can not ${r===void 0?"remove":n.isArrayInsertion?"insert":"modify"} Array index ${u} as length is not sufficient`)}else throw Error(`Can not add ${typeof c!=="number"?"index":"property"} to parent of type ${a.type}`)}function Fn(e,t,r){if(!r.formattingOptions)return[t];let n=cu(e,t),o=t.offset,s=t.offset+t.content.length;if(t.length===0||t.content.length===0){while(o>0&&!Ei(n,o-1))o--;while(s<n.length&&!Ei(n,s))s++}let i=Cm(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=cu(n,u),o=Math.min(o,u.offset),s=Math.max(s,u.offset+u.length),s+=u.content.length-u.length}let a=e.length-(n.length-s)-o;return[{offset:o,length:a,content:n.substring(o,s)}]}function cu(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var O$;(function(e){e[e.None=0]="None",e[e.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=2]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",e[e.InvalidUnicode=4]="InvalidUnicode",e[e.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",e[e.InvalidCharacter=6]="InvalidCharacter"})(O$||(O$={}));var I$;(function(e){e[e.OpenBraceToken=1]="OpenBraceToken",e[e.CloseBraceToken=2]="CloseBraceToken",e[e.OpenBracketToken=3]="OpenBracketToken",e[e.CloseBracketToken=4]="CloseBracketToken",e[e.CommaToken=5]="CommaToken",e[e.ColonToken=6]="ColonToken",e[e.NullKeyword=7]="NullKeyword",e[e.TrueKeyword=8]="TrueKeyword",e[e.FalseKeyword=9]="FalseKeyword",e[e.StringLiteral=10]="StringLiteral",e[e.NumericLiteral=11]="NumericLiteral",e[e.LineCommentTrivia=12]="LineCommentTrivia",e[e.BlockCommentTrivia=13]="BlockCommentTrivia",e[e.LineBreakTrivia=14]="LineBreakTrivia",e[e.Trivia=15]="Trivia",e[e.Unknown=16]="Unknown",e[e.EOF=17]="EOF"})(I$||(I$={}));var R$=E$;var A$;(function(e){e[e.InvalidSymbol=1]="InvalidSymbol",e[e.InvalidNumberFormat=2]="InvalidNumberFormat",e[e.PropertyNameExpected=3]="PropertyNameExpected",e[e.ValueExpected=4]="ValueExpected",e[e.ColonExpected=5]="ColonExpected",e[e.CommaExpected=6]="CommaExpected",e[e.CloseBraceExpected=7]="CloseBraceExpected",e[e.CloseBracketExpected=8]="CloseBracketExpected",e[e.EndOfFileExpected=9]="EndOfFileExpected",e[e.InvalidCommentToken=10]="InvalidCommentToken",e[e.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=12]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",e[e.InvalidUnicode=14]="InvalidUnicode",e[e.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",e[e.InvalidCharacter=16]="InvalidCharacter"})(A$||(A$={}));function Lm(e,t,r,n){return P$(e,t,r,n)}function jm(e,t){let r=t.slice(0).sort((o,s)=>{let i=o.offset-s.offset;if(i===0)return o.length-s.length;return i}),n=e.length;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.offset+s.length<=n)e=cu(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var C$=K(p(),At()),oW=K(p(),At()),z$={insertSpaces:!0,tabSize:2,eol:`
|
|
340
|
-
`};function
|
|
341
|
-
`;for(let[y,b]of f)m=
|
|
338
|
+
`}function Oi(e,t){return`\r
|
|
339
|
+
`.indexOf(e.charAt(t))!==-1}var Ii;(function(e){e.DEFAULT={allowTrailingComma:!1}})(Ii||(Ii={}));function R$(e,t=[],r=Ii.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return Fm(e,{onObjectBegin:()=>{let c={};i(c),s.push(o),o=c,n=null},onObjectProperty:(c)=>{n=c},onObjectEnd:()=>{o=s.pop()},onArrayBegin:()=>{let c=[];i(c),s.push(o),o=c,n=null},onArrayEnd:()=>{o=s.pop()},onLiteralValue:i,onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r),o[0]}function qm(e,t=[],r=Ii.DEFAULT){let n={type:"array",offset:-1,length:-1,children:[],parent:void 0};function o(c){if(n.type==="property")n.length=c-n.offset,n=n.parent}function s(c){return n.children.push(c),c}Fm(e,{onObjectBegin:(c)=>{n=s({type:"object",offset:c,length:-1,parent:n,children:[]})},onObjectProperty:(c,u,l)=>{n=s({type:"property",offset:u,length:-1,parent:n,children:[]}),n.children.push({type:"string",value:c,offset:u,length:l,parent:n})},onObjectEnd:(c,u)=>{o(c+u),n.length=c+u-n.offset,n=n.parent,o(c+u)},onArrayBegin:(c,u)=>{n=s({type:"array",offset:c,length:-1,parent:n,children:[]})},onArrayEnd:(c,u)=>{n.length=c+u-n.offset,n=n.parent,o(c+u)},onLiteralValue:(c,u,l)=>{s({type:oW(c),offset:u,length:l,parent:n,value:c}),o(u+l)},onSeparator:(c,u,l)=>{if(n.type==="property"){if(c===":")n.colonOffset=u;else if(c===",")o(u)}},onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r);let a=n.children[0];if(a)delete a.parent;return a}function du(e,t){if(!e)return;let r=e;for(let n of t)if(typeof n==="string"){if(r.type!=="object"||!Array.isArray(r.children))return;let o=!1;for(let s of r.children)if(Array.isArray(s.children)&&s.children[0].value===n&&s.children.length===2){r=s.children[1],o=!0;break}if(!o)return}else{let o=n;if(r.type!=="array"||o<0||!Array.isArray(r.children)||o>=r.children.length)return;r=r.children[o]}return r}function Fm(e,t,r=Ii.DEFAULT){let n=Pi(e,!1),o=[],s=0;function i(W){return W?()=>s===0&&W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice()):()=>!0}function u(W){return W?()=>{if(s>0)s++;else if(W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice())===!1)s=1}:()=>!0}function l(W){return W?()=>{if(s>0)s--;if(s===0)W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter())}:()=>!0}let d=u(t.onObjectBegin),f=c(t.onObjectProperty),m=l(t.onObjectEnd),h=u(t.onArrayBegin),g=l(t.onArrayEnd),y=c(t.onLiteralValue),b=a(t.onSeparator),T=i(t.onComment),k=a(t.onError),I=r&&r.disallowComments,_=r&&r.allowTrailingComma;function S(){while(!0){let W=n.scan();switch(n.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:if(!I)x(11);break;case 2:x(12);break;case 6:x(16);break}switch(W){case 12:case 13:if(I)x(10);else T();break;case 16:x(1);break;case 15:case 14:break;default:return W}}}function x(W,oe=[],Pt=[]){if(k(W),oe.length+Pt.length>0){let at=n.getToken();while(at!==17){if(oe.indexOf(at)!==-1){S();break}else if(Pt.indexOf(at)!==-1)break;at=S()}}}function A(W){let oe=n.getTokenValue();if(W)y(oe);else f(oe),o.push(oe);return S(),!0}function D(){switch(n.getToken()){case 11:let W=n.getTokenValue(),oe=Number(W);if(isNaN(oe))x(2),oe=0;y(oe);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return S(),!0}function Y(){if(n.getToken()!==10)return x(3,[],[2,5]),!1;if(A(!1),n.getToken()===6){if(b(":"),S(),!qe())x(4,[],[2,5])}else x(5,[],[2,5]);return o.pop(),!0}function ie(){d(),S();let W=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!W)x(4,[],[]);if(b(","),S(),n.getToken()===2&&_)break}else if(W)x(6,[],[]);if(!Y())x(4,[],[2,5]);W=!0}if(m(),n.getToken()!==2)x(7,[2],[]);else S();return!0}function ae(){h(),S();let W=!0,oe=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!oe)x(4,[],[]);if(b(","),S(),n.getToken()===4&&_)break}else if(oe)x(6,[],[]);if(W)o.push(0),W=!1;else o[o.length-1]++;if(!qe())x(4,[],[4,5]);oe=!0}if(g(),!W)o.pop();if(n.getToken()!==4)x(8,[4],[]);else S();return!0}function qe(){switch(n.getToken()){case 3:return ae();case 1:return ie();case 10:return A(!0);default:return D()}}if(S(),n.getToken()===17){if(r.allowEmptyContent)return!0;return x(4,[],[]),!1}if(!qe())return x(4,[],[]),!1;if(n.getToken()!==17)x(9,[],[]);return!0}function oW(e){switch(typeof e){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!e)return"null";else if(Array.isArray(e))return"array";return"object"}default:return"null"}}function C$(e,t,r,n){let o=t.slice(),i=qm(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=du(i,o),a===void 0&&r!==void 0)if(typeof c==="string")r={[c]:r};else r=[r];else break;if(!a){if(r===void 0)throw Error("Can not delete in empty document");return Wn(e,{offset:i?i.offset:0,length:i?i.length:0,content:JSON.stringify(r)},n)}else if(a.type==="object"&&typeof c==="string"&&Array.isArray(a.children)){let u=du(a,[c]);if(u!==void 0)if(r===void 0){if(!u.parent)throw Error("Malformed AST");let l=a.children.indexOf(u.parent),d,f=u.parent.offset+u.parent.length;if(l>0){let m=a.children[l-1];d=m.offset+m.length}else if(d=a.offset+1,a.children.length>1)f=a.children[1].offset;return Wn(e,{offset:d,length:f-d,content:""},n)}else return Wn(e,{offset:u.offset,length:u.length,content:JSON.stringify(r)},n);else{if(r===void 0)return[];let l=`${JSON.stringify(c)}: ${JSON.stringify(r)}`,d=n.getInsertionIndex?n.getInsertionIndex(a.children.map((m)=>m.children[0].value)):a.children.length,f;if(d>0){let m=a.children[d-1];f={offset:m.offset+m.length,length:0,content:","+l}}else if(a.children.length===0)f={offset:a.offset+1,length:0,content:l};else f={offset:a.offset+1,length:0,content:l+","};return Wn(e,f,n)}}else if(a.type==="array"&&typeof c==="number"&&Array.isArray(a.children)){let u=c;if(u===-1){let l=`${JSON.stringify(r)}`,d;if(a.children.length===0)d={offset:a.offset+1,length:0,content:l};else{let f=a.children[a.children.length-1];d={offset:f.offset+f.length,length:0,content:","+l}}return Wn(e,d,n)}else if(r===void 0&&a.children.length>=0){let l=c,d=a.children[l],f;if(a.children.length===1)f={offset:a.offset+1,length:a.length-2,content:""};else if(a.children.length-1===l){let m=a.children[l-1],h=m.offset+m.length,g=a.offset+a.length;f={offset:h,length:g-2-h,content:""}}else f={offset:d.offset,length:a.children[l+1].offset-d.offset,content:""};return Wn(e,f,n)}else if(r!==void 0){let l,d=`${JSON.stringify(r)}`;if(!n.isArrayInsertion&&a.children.length>c){let f=a.children[c];l={offset:f.offset,length:f.length,content:d}}else if(a.children.length===0||c===0)l={offset:a.offset+1,length:0,content:a.children.length===0?d:d+","};else{let f=c>a.children.length?a.children.length:c,m=a.children[f-1];l={offset:m.offset+m.length,length:0,content:","+d}}return Wn(e,l,n)}else throw Error(`Can not ${r===void 0?"remove":n.isArrayInsertion?"insert":"modify"} Array index ${u} as length is not sufficient`)}else throw Error(`Can not add ${typeof c!=="number"?"index":"property"} to parent of type ${a.type}`)}function Wn(e,t,r){if(!r.formattingOptions)return[t];let n=pu(e,t),o=t.offset,s=t.offset+t.content.length;if(t.length===0||t.content.length===0){while(o>0&&!Oi(n,o-1))o--;while(s<n.length&&!Oi(n,s))s++}let i=Mm(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=pu(n,u),o=Math.min(o,u.offset),s=Math.max(s,u.offset+u.length),s+=u.content.length-u.length}let a=e.length-(n.length-s)-o;return[{offset:o,length:a,content:n.substring(o,s)}]}function pu(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var z$;(function(e){e[e.None=0]="None",e[e.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=2]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",e[e.InvalidUnicode=4]="InvalidUnicode",e[e.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",e[e.InvalidCharacter=6]="InvalidCharacter"})(z$||(z$={}));var N$;(function(e){e[e.OpenBraceToken=1]="OpenBraceToken",e[e.CloseBraceToken=2]="CloseBraceToken",e[e.OpenBracketToken=3]="OpenBracketToken",e[e.CloseBracketToken=4]="CloseBracketToken",e[e.CommaToken=5]="CommaToken",e[e.ColonToken=6]="ColonToken",e[e.NullKeyword=7]="NullKeyword",e[e.TrueKeyword=8]="TrueKeyword",e[e.FalseKeyword=9]="FalseKeyword",e[e.StringLiteral=10]="StringLiteral",e[e.NumericLiteral=11]="NumericLiteral",e[e.LineCommentTrivia=12]="LineCommentTrivia",e[e.BlockCommentTrivia=13]="BlockCommentTrivia",e[e.LineBreakTrivia=14]="LineBreakTrivia",e[e.Trivia=15]="Trivia",e[e.Unknown=16]="Unknown",e[e.EOF=17]="EOF"})(N$||(N$={}));var j$=R$;var L$;(function(e){e[e.InvalidSymbol=1]="InvalidSymbol",e[e.InvalidNumberFormat=2]="InvalidNumberFormat",e[e.PropertyNameExpected=3]="PropertyNameExpected",e[e.ValueExpected=4]="ValueExpected",e[e.ColonExpected=5]="ColonExpected",e[e.CommaExpected=6]="CommaExpected",e[e.CloseBraceExpected=7]="CloseBraceExpected",e[e.CloseBracketExpected=8]="CloseBracketExpected",e[e.EndOfFileExpected=9]="EndOfFileExpected",e[e.InvalidCommentToken=10]="InvalidCommentToken",e[e.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=12]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",e[e.InvalidUnicode=14]="InvalidUnicode",e[e.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",e[e.InvalidCharacter=16]="InvalidCharacter"})(L$||(L$={}));function Um(e,t,r,n){return C$(e,t,r,n)}function Wm(e,t){let r=t.slice(0).sort((o,s)=>{let i=o.offset-s.offset;if(i===0)return o.length-s.length;return i}),n=e.length;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.offset+s.length<=n)e=pu(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var D$=K(p(),Rt()),pW=K(p(),Rt()),M$={insertSpaces:!0,tabSize:2,eol:`
|
|
340
|
+
`};function Vm(e){let t=[],r=j$(e,t,{allowTrailingComma:!0,disallowComments:!1});if(t.length>0)throw Error("invalid JSON");return r}function fW(e,t){if(e===null||e.trim()==="")return{};try{return pW.parse(Vm(e))}catch{throw Error(`${t} is not a JSON object. Left it unchanged.`)}}function mW(e,t,r,n,o,s={}){let i=fW(e,t),a=D$.optional().safeParse(i[r]);if(!a.success)throw Error(`${t} has a "${r}" value that is not an object. Left it unchanged.`);let c=a.data??{},u=D$.optional().safeParse(c[n]),l=u.success?u.data:void 0,d={...l??{},...o},f=Object.entries(s.defaults??{}).filter(([y])=>!(y in i));if(l&&f.length===0&&JSON.stringify(l)===JSON.stringify(d))return{outcome:"unchanged",text:e??""};let m=e&&e.trim()!==""?e:`{}
|
|
341
|
+
`;for(let[y,b]of f)m=Wm(m,Um(m,[y],b,{formattingOptions:M$}));let h=a.data?[r,n]:[r],g=a.data?d:{[n]:d};return m=Wm(m,Um(m,h,g,{formattingOptions:M$})),{outcome:l?"updated":"added",text:m.endsWith(`
|
|
342
342
|
`)?m:`${m}
|
|
343
|
-
`}}function Oi(e){try{return eW(e,"utf8")}catch{return null}}function Mm(e,t){QU(nW(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;rW(r,t),tW(r,e)}function Ze(e,t,r,n,o={}){let s=iW(Oi(e),e,t,r,n,o);if(s.outcome!=="unchanged")Mm(e,s.text);return s.outcome}var qm=K(p(),ne());function me(e,t,r,n=["url"]){try{let o=qm.parse(Dm(aW(e,"utf8"))),s=qm.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=qm.safeParse(s.data[r]);if(!i.success)return"";for(let a of n){let c=i.data[a];if(typeof c==="string")return c}return""}catch{return null}}function dt(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function Ct(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${dt(t,r)} failed`)}async function Lo(e,t,r,n){let o=await e.run(t,r);return n(o.stdout)}function Je(e,t){return t.some((r)=>e.exists(r))}function cr(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>No(r,`${n}.app`)))}function uu(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var cW=[".vscode",".vscode-insiders",".cursor",".windsurf"];function lu(e,t){let r=`${t.toLowerCase()}-`;return cW.some((n)=>e.list(No(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function Ii(e,t,r,n){let o=r.find((s)=>e.exists(No(t,s)));return No(t,o??n)}function Pr(e){return e.env.XDG_CONFIG_HOME||No(e.home,".config")}function Be(e){return No(e.home,".agents","skills")}async function Jr(e,t){let r=dt(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await Ct(e,t.binary,t.removeArgs);return await Ct(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function lW(e){return Ii(e,uW(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function N$(e){return me(lW(e),"amp.mcpServers",q)}function L$(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>N$(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",q,t],removeArgs:["mcp","remove",q],current:N$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as Um}from"node:path";function Fm(e){return Um(e.home,".gemini","config","mcp_config.json")}function j$(e){return Je(e,cr(e,["Antigravity"]))}function D$(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||j$(e),hasServer:async()=>me(Fm(e),"mcpServers",q,["serverUrl","url"])!==null,addServer:async(t)=>({target:Fm(e),outcome:Ze(Fm(e),"mcpServers",q,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(Um(e.home,".gemini","antigravity-cli","skills"));if(j$(e))t.push(Um(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as du}from"node:path";function dW(e){return e.env.CLAUDE_CONFIG_DIR||du(e.home,".claude")}function M$(e){return e.env.CLAUDE_CONFIG_DIR?du(e.env.CLAUDE_CONFIG_DIR,".claude.json"):du(e.home,".claude.json")}function pW(e){let t=/^\s*Status:\s*(.*)$/m.exec(e)?.[1]??"";if(/\bConnected\b/.test(t))return"signed-in";if(/needs authentication/i.test(t))return"signed-out";return"unknown"}function q$(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",q,n,"--scope","user"];return{id:"claude",name:"Claude Code",signInHint:"claude mcp login tripwire, or /mcp inside Claude Code",detect:()=>e.which("claude")!==null,hasServer:async()=>me(M$(e),"mcpServers",q)!==null,addServer:async(n)=>{let o=dt("claude",r(n)),s=me(M$(e),"mcpServers",q);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Ct(e,t(),["mcp","remove",q,"--scope","user"]);return await Ct(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[du(dW(e),"skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Lo(e,t(),["mcp","get",q],pW)})}}import{join as Wm}from"node:path";function fW(e){return e.env.CLINE_DIR||Wm(e.home,".cline")}function pu(e){return e.env.CLINE_MCP_SETTINGS_PATH||Wm(fW(e),"data","settings","cline_mcp_settings.json")}function F$(e){let t=()=>me(pu(e),"mcpServers",q);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||lu(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:pu(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",q,r,"--transport","http","--yes"];return await Ct(e,o,s),{target:dt("cline",s),outcome:"added"}}return{target:pu(e),outcome:Ze(pu(e),"mcpServers",q,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[Wm(e.home,".cline","skills")],login:()=>null}}import{readFileSync as mW}from"node:fs";import{join as Vm}from"node:path";function hW(e){return e.env.CODEX_HOME||Vm(e.home,".codex")}function gW(e,t){let r=e.split(/\r?\n/),n=new RegExp(`^\\s*\\[\\s*mcp_servers\\.(?:"${t}"|${t})\\s*\\]\\s*$`),o=r.findIndex((s)=>n.test(s));if(o===-1)return null;for(let s of r.slice(o+1)){if(/^\s*\[/.test(s))break;let i=s.match(/^\s*url\s*=\s*"([^"]*)"/);if(i?.[1]!==void 0)return i[1]}return""}var yW=k(w({name:p(),auth_status:p().nullish()}));function wW(e){try{let t=yW.safeParse(JSON.parse(e)),r=t.success?t.data.find((n)=>n.name===q)?.auth_status:void 0;if(r==="o_auth"||r==="bearer_token")return"signed-in";return r==="not_logged_in"?"signed-out":"unknown"}catch{return"unknown"}}function U$(e){try{return gW(mW(Vm(hW(e),"config.toml"),"utf8"),q)}catch{return null}}function W$(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",q,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>U$(e)!==null,addServer:async(n)=>{let o=dt("codex",r(n)),s=U$(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Ct(e,t(),["mcp","remove",q]);return await Ct(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Vm(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Lo(e,t(),["mcp","list","--json"],wW)})}}import{join as V$}from"node:path";function bW(e){return V$(e.env.COPILOT_HOME||V$(e.home,".copilot"),"mcp-config.json")}function Z$(e){return me(bW(e),"mcpServers",q)}function B$(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>Z$(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",q,t],removeArgs:["mcp","remove",q],current:Z$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as fu}from"node:path";function _W(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>fu(t,"Cursor.app"));if(e.platform==="win32")return[fu(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Zm(e){return fu(e.home,".cursor","mcp.json")}function K$(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Je(e,_W(e)),hasServer:async()=>me(Zm(e),"mcpServers",q)!==null,addServer:async(t)=>({target:Zm(e),outcome:Ze(Zm(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[fu(e.home,".agents","skills")],login:()=>null}}import{join as zt}from"node:path";var H$="mcp_config.json";function vW(e){if(e.platform==="win32")return zt(e.env.APPDATA||zt(e.home,"AppData","Roaming"),"devin");return zt(e.env.XDG_CONFIG_HOME||zt(e.home,".config"),"devin")}function Y$(e){return zt(e.home,".codeium","windsurf")}function X$(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>zt(r,`${t}.app`));if(e.platform==="win32")return[zt(e.env.LOCALAPPDATA||zt(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Bm(e){return e.which("devin")!==null||Je(e,X$(e,"Devin"))}function Ai(e){return e.which("windsurf")!==null||Je(e,X$(e,"Windsurf"))}function G$(e){let t=[];if(Bm(e)||!Ai(e))t.push(zt(vW(e),H$));if(Ai(e))t.push(zt(Y$(e),H$));return t}var J$={unchanged:0,updated:1,added:2};function Q$(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Bm(e)||Ai(e),hasServer:async()=>G$(e).some((t)=>me(t,"mcpServers",q)!==null),addServer:async(t)=>{let r=G$(e),o=r.map((s)=>Ze(s,"mcpServers",q,{serverUrl:t})).reduce((s,i)=>J$[i]>J$[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Bm(e)||!Ai(e))t.push(zt(e.home,".agents","skills"));if(Ai(e))t.push(zt(Y$(e),"skills"));return t},login:()=>null}}import{join as SW}from"node:path";function eT(e){return me(SW(e.home,".factory","mcp.json"),"mcpServers",q)}function tT(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>eT(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",q,t,"--type","http"],removeArgs:["mcp","remove",q],current:eT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as kW}from"node:path";function xW(e){return kW(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function rT(e){return me(xW(e),"mcpServers",q,["httpUrl","url"])}function nT(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>rT(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",q,t],removeArgs:["mcp","remove","--scope","user",q],current:rT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as sl}from"node:path";var LG=Zh(),jG=Hi(),DG=Oh(),ng=Gi(),MG=zi(),sn=ce(),qG=en(),FG=Le(),UG=rn(),WG=nn(),Yhe=Xu(),VG=eg(),ZG=tg(),BG=rg(),rl=dP(),pP=Ri();var KG=LG.Composer,HG=jG.Document,GG=DG.Schema,{YAMLError:JG,YAMLParseError:YG,YAMLWarning:XG}=ng,QG=MG.Alias,{isAlias:e3,isCollection:t3,isDocument:r3,isMap:nl,isNode:n3,isPair:o3,isScalar:s3,isSeq:i3}=sn,a3=qG.Pair,c3=FG.Scalar,u3=UG.YAMLMap,l3=WG.YAMLSeq;var d3=VG.Lexer,p3=ZG.LineCounter,f3=BG.Parser,{parse:m3,parseAllDocuments:h3,parseDocument:ol,stringify:g3}=rl,{visit:y3,visitAsync:w3}=pP;var b3=K(p(),At());function og(e,t,r){if(e===null)return null;let n=ol(e);if(n.errors.length>0)return null;let o=K(p(),ne()).nullable().safeParse(n.toJS()),s=K(p(),ne()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=b3.safeParse(s.data[r]);return i.success?i.data:{}}function _3(e,t,r,n,o){let s=ol(e??"");if(s.errors.length>0||!(s.contents===null||nl(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!nl(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=og(e,r,n),c={...a??{},...o};if(a&&JSON.stringify(a)===JSON.stringify(c))return{outcome:"unchanged",text:e??""};if(i===void 0||i===null)s.set(r,s.createNode({[n]:c}));else s.setIn([r,n],s.createNode(c));return{outcome:a?"updated":"added",text:s.toString()}}function fP(e,t,r,n){let o=_3(Oi(e),e,t,r,n);if(o.outcome!=="unchanged")Mm(e,o.text);return o.outcome}var mP="extensions";function sg(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return sl(t,"config","config.yaml");if(e.platform==="win32")return sl(e.env.APPDATA||sl(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return sl(Pr(e),"goose","config.yaml")}function hP(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Je(e,cr(e,["Goose"])),hasServer:async()=>og(Oi(sg(e)),mP,q)!==null,addServer:async(t)=>({target:sg(e),outcome:fP(sg(e),mP,q,{type:"streamable_http",name:q,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[Be(e)],login:()=>null}}function gP(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",q,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${q}\\b`).test(o.stdout)};return{id:"grok",name:"Grok",signInHint:"/mcps inside Grok",detect:()=>e.which("grok")!==null,hasServer:n,addServer:async(o)=>{let s=dt("grok",r(o));if(await n())return{target:s,outcome:"unchanged"};let i=await e.run(t(),r(o));if(i.ok)return{target:s,outcome:"added"};if(/already exists/i.test(`${i.stderr} ${i.stdout}`))return{target:s,outcome:"unchanged"};throw Error(i.stderr||i.stdout||`${s} failed`)},skillsDirs:()=>[Be(e)],login:()=>null}}import{join as yP}from"node:path";function ig(e){return yP(e.home,".kiro","settings","mcp.json")}function wP(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>uu(e,["kiro-cli","kiro"])!==null||Je(e,cr(e,["Kiro"])),hasServer:async()=>me(ig(e),"mcpServers",q)!==null,addServer:async(t)=>({target:ig(e),outcome:Ze(ig(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[yP(e.home,".kiro","skills")],login:()=>null}}import{join as v3}from"node:path";function ag(e){return v3(Pr(e),"muse","settings.json")}function bP(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>me(ag(e),"mcp_servers",q)!==null,addServer:async(t)=>({target:ag(e),outcome:Ze(ag(e),"mcp_servers",q,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[Be(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",q],status:async()=>"unknown"})}}import{join as _P}from"node:path";var S3=new RegExp(`${String.fromCharCode(27)}\\[[0-9;]*m`,"g");function k3(e){let t=e.replace(S3,"").split(/\r?\n/).find((r)=>new RegExp(`(^|\\s)${q}\\s`).test(r));if(t===void 0)return"unknown";if(/✓/.test(t)&&/\bconnected\b/.test(t))return"signed-in";return/needs authentication/.test(t)?"signed-out":"unknown"}function vP(e,t){let r=()=>uu(e,t.binaries),n=()=>me(t.configPath(e),"mcp",q);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Je(e,cr(e,t.apps))||t.extensionId!==null&&lu(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:Ze(s,"mcp",q,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[Be(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",q],status:()=>Lo(e,o,["mcp","list"],k3)}:null}}}function SP(e){return vP(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>Ii(t,_P(Pr(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function kP(e){return vP(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>Ii(t,t.env.KILO_CONFIG_DIR||_P(Pr(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as jt}from"node:path";var x3="Visual Studio Code.app";function TP(e){return jt(e.env.LOCALAPPDATA||jt(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function EP(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>jt(t,x3));if(e.platform==="win32")return[jt(TP(e),"Code.exe")];return[]}function $3(e){if(e.platform==="darwin")return EP(e).map((t)=>jt(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[jt(TP(e),"bin","code.cmd")];return[]}function xP(e){let t=e.which("code");if(t)return t;return $3(e).find((r)=>e.exists(r))??null}function $P(e){if(e.platform==="darwin")return jt(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return jt(e.env.APPDATA||jt(e.home,"AppData","Roaming"),"Code","User","mcp.json");return jt(e.env.XDG_CONFIG_HOME||jt(e.home,".config"),"Code","User","mcp.json")}function PP(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>xP(e)!==null||Je(e,EP(e)),hasServer:async()=>me($P(e),"servers",q)!==null,addServer:async(t)=>{let r=$P(e),n=me(r,"servers",q),s=["--add-mcp",JSON.stringify({name:q,type:"http",url:t})],i=xP(e);if(!i)return{target:r,outcome:Ze(r,"servers",q,{type:"http",url:t})};let a=dt("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await Ct(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[jt(e.home,".agents","skills")],login:()=>null}}import{join as il}from"node:path";function cg(e){if(e.platform==="win32")return il(e.env.APPDATA||il(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return il(e.home,".config","zed","settings.json");return il(Pr(e),"zed","settings.json")}function OP(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Je(e,cr(e,["Zed","Zed Preview"])),hasServer:async()=>me(cg(e),"context_servers",q)!==null,addServer:async(t)=>({target:cg(e),outcome:Ze(cg(e),"context_servers",q,{url:t})}),skillsDirs:()=>[Be(e)],login:()=>null}}function IP(e){return[q$(e),W$(e),K$(e),PP(e),Q$(e),gP(e),SP(e),nT(e),D$(e),B$(e),L$(e),tT(e),F$(e),kP(e),wP(e),OP(e),hP(e),bP(e)]}var T3=[["claude","claude"],["codex","codex"],["cursor","cursor"],["copilot-cli","copilot"],["github-copilot-cli","copilot"],["copilot","vscode"],["vscode","vscode"],["devin","devin"],["windsurf","devin"],["cascade","devin"],["grok","grok"],["opencode","opencode"],["gemini","gemini"],["antigravity","antigravity"],["agy","antigravity"],["amp","amp"],["droid","droid"],["factory","droid"],["cline","cline"],["kilo","kilo"],["kiro","kiro"],["zed","zed"],["goose","goose"],["muse","muse"]];function AP(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=T3.find(([n])=>t.startsWith(n));if(r)return r[1]}if(e.CLAUDECODE==="1")return"claude";if(e.CODEX_SANDBOX||e.CODEX_THREAD_ID)return"codex";if(e.GEMINI_CLI==="1")return"gemini";if(e.CURSOR_AGENT)return"cursor";return t?"unknown":null}import{spawn as E3}from"node:child_process";function P3(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function O3(e,t,r,n){return new Promise((o)=>{let s=E3(e,t,{env:n,stdio:["pipe","ignore","ignore"]});s.on("error",()=>o(!1)),s.on("exit",(i)=>o(i===0)),s.stdin.on("error",()=>{return}),s.stdin.end(r)})}async function RP(e,t){for(let[r,...n]of P3(e.platform)){let o=r?e.which(r):null;if(o&&await O3(o,n,t,e.env))return!0}return!1}var I3=`Use the \`${Gs}\` skill for this project.`;function CP(e){let t=e?.trim();if(!t)return I3;let r=ax(t);if(r)return ux(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as C3,readFileSync as z3,renameSync as N3,writeFileSync as L3}from"node:fs";import{join as LP}from"node:path";var zP=`---
|
|
343
|
+
`}}function Ai(e){try{return cW(e,"utf8")}catch{return null}}function Zm(e,t){aW(dW(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;lW(r,t),uW(r,e)}function Ze(e,t,r,n,o={}){let s=mW(Ai(e),e,t,r,n,o);if(s.outcome!=="unchanged")Zm(e,s.text);return s.outcome}var Bm=K(p(),ne());function he(e,t,r,n=["url"]){try{let o=Bm.parse(Vm(hW(e,"utf8"))),s=Bm.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=Bm.safeParse(s.data[r]);if(!i.success)return"";for(let a of n){let c=i.data[a];if(typeof c==="string")return c}return""}catch{return null}}function pt(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function zt(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${pt(t,r)} failed`)}async function Mo(e,t,r,n){let o=await e.run(t,r);return n(o.stdout)}function Je(e,t){return t.some((r)=>e.exists(r))}function lr(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>Do(r,`${n}.app`)))}function fu(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var gW=[".vscode",".vscode-insiders",".cursor",".windsurf"];function mu(e,t){let r=`${t.toLowerCase()}-`;return gW.some((n)=>e.list(Do(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function Ri(e,t,r,n){let o=r.find((s)=>e.exists(Do(t,s)));return Do(t,o??n)}function Ir(e){return e.env.XDG_CONFIG_HOME||Do(e.home,".config")}function Be(e){return Do(e.home,".agents","skills")}async function Xr(e,t){let r=pt(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await zt(e,t.binary,t.removeArgs);return await zt(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function wW(e){return Ri(e,yW(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function q$(e){return he(wW(e),"amp.mcpServers",q)}function F$(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>q$(e)!==null,addServer:(t)=>Xr(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",q,t],removeArgs:["mcp","remove",q],current:q$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as Hm}from"node:path";function Km(e){return Hm(e.home,".gemini","config","mcp_config.json")}function U$(e){return Je(e,lr(e,["Antigravity"]))}function W$(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||U$(e),hasServer:async()=>he(Km(e),"mcpServers",q,["serverUrl","url"])!==null,addServer:async(t)=>({target:Km(e),outcome:Ze(Km(e),"mcpServers",q,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(Hm(e.home,".gemini","antigravity-cli","skills"));if(U$(e))t.push(Hm(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as hu}from"node:path";function bW(e){return e.env.CLAUDE_CONFIG_DIR||hu(e.home,".claude")}function V$(e){return e.env.CLAUDE_CONFIG_DIR?hu(e.env.CLAUDE_CONFIG_DIR,".claude.json"):hu(e.home,".claude.json")}function _W(e){let t=/^\s*Status:\s*(.*)$/m.exec(e)?.[1]??"";if(/\bConnected\b/.test(t))return"signed-in";if(/needs authentication/i.test(t))return"signed-out";return"unknown"}function Z$(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",q,n,"--scope","user"];return{id:"claude",name:"Claude Code",signInHint:"claude mcp login tripwire, or /mcp inside Claude Code",detect:()=>e.which("claude")!==null,hasServer:async()=>he(V$(e),"mcpServers",q)!==null,addServer:async(n)=>{let o=pt("claude",r(n)),s=he(V$(e),"mcpServers",q);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await zt(e,t(),["mcp","remove",q,"--scope","user"]);return await zt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[hu(bW(e),"skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Mo(e,t(),["mcp","get",q],_W)})}}import{join as Gm}from"node:path";function SW(e){return e.env.CLINE_DIR||Gm(e.home,".cline")}function gu(e){return e.env.CLINE_MCP_SETTINGS_PATH||Gm(SW(e),"data","settings","cline_mcp_settings.json")}function B$(e){let t=()=>he(gu(e),"mcpServers",q);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||mu(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:gu(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",q,r,"--transport","http","--yes"];return await zt(e,o,s),{target:pt("cline",s),outcome:"added"}}return{target:gu(e),outcome:Ze(gu(e),"mcpServers",q,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[Gm(e.home,".cline","skills")],login:()=>null}}import{readFileSync as vW}from"node:fs";import{join as Jm}from"node:path";function kW(e){return e.env.CODEX_HOME||Jm(e.home,".codex")}function xW(e,t){let r=e.split(/\r?\n/),n=new RegExp(`^\\s*\\[\\s*mcp_servers\\.(?:"${t}"|${t})\\s*\\]\\s*$`),o=r.findIndex((s)=>n.test(s));if(o===-1)return null;for(let s of r.slice(o+1)){if(/^\s*\[/.test(s))break;let i=s.match(/^\s*url\s*=\s*"([^"]*)"/);if(i?.[1]!==void 0)return i[1]}return""}var $W=v(w({name:p(),auth_status:p().nullish()}));function TW(e){try{let t=$W.safeParse(JSON.parse(e)),r=t.success?t.data.find((n)=>n.name===q)?.auth_status:void 0;if(r==="o_auth"||r==="bearer_token")return"signed-in";return r==="not_logged_in"?"signed-out":"unknown"}catch{return"unknown"}}function K$(e){try{return xW(vW(Jm(kW(e),"config.toml"),"utf8"),q)}catch{return null}}function H$(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",q,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>K$(e)!==null,addServer:async(n)=>{let o=pt("codex",r(n)),s=K$(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await zt(e,t(),["mcp","remove",q]);return await zt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Jm(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Mo(e,t(),["mcp","list","--json"],TW)})}}import{join as G$}from"node:path";function EW(e){return G$(e.env.COPILOT_HOME||G$(e.home,".copilot"),"mcp-config.json")}function J$(e){return he(EW(e),"mcpServers",q)}function Y$(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>J$(e)!==null,addServer:(t)=>Xr(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",q,t],removeArgs:["mcp","remove",q],current:J$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as yu}from"node:path";function PW(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>yu(t,"Cursor.app"));if(e.platform==="win32")return[yu(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Ym(e){return yu(e.home,".cursor","mcp.json")}function X$(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Je(e,PW(e)),hasServer:async()=>he(Ym(e),"mcpServers",q)!==null,addServer:async(t)=>({target:Ym(e),outcome:Ze(Ym(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[yu(e.home,".agents","skills")],login:()=>null}}import{join as Nt}from"node:path";var Q$="mcp_config.json";function OW(e){if(e.platform==="win32")return Nt(e.env.APPDATA||Nt(e.home,"AppData","Roaming"),"devin");return Nt(e.env.XDG_CONFIG_HOME||Nt(e.home,".config"),"devin")}function rT(e){return Nt(e.home,".codeium","windsurf")}function nT(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>Nt(r,`${t}.app`));if(e.platform==="win32")return[Nt(e.env.LOCALAPPDATA||Nt(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Xm(e){return e.which("devin")!==null||Je(e,nT(e,"Devin"))}function Ci(e){return e.which("windsurf")!==null||Je(e,nT(e,"Windsurf"))}function eT(e){let t=[];if(Xm(e)||!Ci(e))t.push(Nt(OW(e),Q$));if(Ci(e))t.push(Nt(rT(e),Q$));return t}var tT={unchanged:0,updated:1,added:2};function oT(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Xm(e)||Ci(e),hasServer:async()=>eT(e).some((t)=>he(t,"mcpServers",q)!==null),addServer:async(t)=>{let r=eT(e),o=r.map((s)=>Ze(s,"mcpServers",q,{serverUrl:t})).reduce((s,i)=>tT[i]>tT[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Xm(e)||!Ci(e))t.push(Nt(e.home,".agents","skills"));if(Ci(e))t.push(Nt(rT(e),"skills"));return t},login:()=>null}}import{join as IW}from"node:path";function sT(e){return he(IW(e.home,".factory","mcp.json"),"mcpServers",q)}function iT(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>sT(e)!==null,addServer:(t)=>Xr(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",q,t,"--type","http"],removeArgs:["mcp","remove",q],current:sT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as AW}from"node:path";function RW(e){return AW(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function aT(e){return he(RW(e),"mcpServers",q,["httpUrl","url"])}function cT(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>aT(e)!==null,addServer:(t)=>Xr(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",q,t],removeArgs:["mcp","remove","--scope","user",q],current:aT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as ul}from"node:path";var VG=Yh(),ZG=Ji(),BG=Nh(),ug=Yi(),KG=Li(),cn=ce(),HG=rn(),GG=je(),JG=on(),YG=sn(),Cge=rl(),XG=ig(),QG=ag(),e3=cg(),il=gP(),yP=zi();var t3=VG.Composer,r3=ZG.Document,n3=BG.Schema,{YAMLError:o3,YAMLParseError:s3,YAMLWarning:i3}=ug,a3=KG.Alias,{isAlias:c3,isCollection:u3,isDocument:l3,isMap:al,isNode:d3,isPair:p3,isScalar:f3,isSeq:m3}=cn,h3=HG.Pair,g3=GG.Scalar,y3=JG.YAMLMap,w3=YG.YAMLSeq;var b3=XG.Lexer,_3=QG.LineCounter,S3=e3.Parser,{parse:v3,parseAllDocuments:k3,parseDocument:cl,stringify:x3}=il,{visit:$3,visitAsync:T3}=yP;var E3=K(p(),Rt());function lg(e,t,r){if(e===null)return null;let n=cl(e);if(n.errors.length>0)return null;let o=K(p(),ne()).nullable().safeParse(n.toJS()),s=K(p(),ne()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=E3.safeParse(s.data[r]);return i.success?i.data:{}}function P3(e,t,r,n,o){let s=cl(e??"");if(s.errors.length>0||!(s.contents===null||al(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!al(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=lg(e,r,n),c={...a??{},...o};if(a&&JSON.stringify(a)===JSON.stringify(c))return{outcome:"unchanged",text:e??""};if(i===void 0||i===null)s.set(r,s.createNode({[n]:c}));else s.setIn([r,n],s.createNode(c));return{outcome:a?"updated":"added",text:s.toString()}}function wP(e,t,r,n){let o=P3(Ai(e),e,t,r,n);if(o.outcome!=="unchanged")Zm(e,o.text);return o.outcome}var bP="extensions";function dg(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return ul(t,"config","config.yaml");if(e.platform==="win32")return ul(e.env.APPDATA||ul(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return ul(Ir(e),"goose","config.yaml")}function _P(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Je(e,lr(e,["Goose"])),hasServer:async()=>lg(Ai(dg(e)),bP,q)!==null,addServer:async(t)=>({target:dg(e),outcome:wP(dg(e),bP,q,{type:"streamable_http",name:q,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[Be(e)],login:()=>null}}function SP(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",q,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${q}\\b`).test(o.stdout)};return{id:"grok",name:"Grok",signInHint:"/mcps inside Grok",detect:()=>e.which("grok")!==null,hasServer:n,addServer:async(o)=>{let s=pt("grok",r(o));if(await n())return{target:s,outcome:"unchanged"};let i=await e.run(t(),r(o));if(i.ok)return{target:s,outcome:"added"};if(/already exists/i.test(`${i.stderr} ${i.stdout}`))return{target:s,outcome:"unchanged"};throw Error(i.stderr||i.stdout||`${s} failed`)},skillsDirs:()=>[Be(e)],login:()=>null}}import{join as vP}from"node:path";function pg(e){return vP(e.home,".kiro","settings","mcp.json")}function kP(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>fu(e,["kiro-cli","kiro"])!==null||Je(e,lr(e,["Kiro"])),hasServer:async()=>he(pg(e),"mcpServers",q)!==null,addServer:async(t)=>({target:pg(e),outcome:Ze(pg(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[vP(e.home,".kiro","skills")],login:()=>null}}import{join as O3}from"node:path";function fg(e){return O3(Ir(e),"muse","settings.json")}function xP(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>he(fg(e),"mcp_servers",q)!==null,addServer:async(t)=>({target:fg(e),outcome:Ze(fg(e),"mcp_servers",q,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[Be(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",q],status:async()=>"unknown"})}}import{join as $P}from"node:path";var I3=new RegExp(`${String.fromCharCode(27)}\\[[0-9;]*m`,"g");function A3(e){let t=e.replace(I3,"").split(/\r?\n/).find((r)=>new RegExp(`(^|\\s)${q}\\s`).test(r));if(t===void 0)return"unknown";if(/✓/.test(t)&&/\bconnected\b/.test(t))return"signed-in";return/needs authentication/.test(t)?"signed-out":"unknown"}function TP(e,t){let r=()=>fu(e,t.binaries),n=()=>he(t.configPath(e),"mcp",q);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Je(e,lr(e,t.apps))||t.extensionId!==null&&mu(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:Ze(s,"mcp",q,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[Be(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",q],status:()=>Mo(e,o,["mcp","list"],A3)}:null}}}function EP(e){return TP(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>Ri(t,$P(Ir(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function PP(e){return TP(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>Ri(t,t.env.KILO_CONFIG_DIR||$P(Ir(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as Dt}from"node:path";var R3="Visual Studio Code.app";function AP(e){return Dt(e.env.LOCALAPPDATA||Dt(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function RP(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>Dt(t,R3));if(e.platform==="win32")return[Dt(AP(e),"Code.exe")];return[]}function C3(e){if(e.platform==="darwin")return RP(e).map((t)=>Dt(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[Dt(AP(e),"bin","code.cmd")];return[]}function OP(e){let t=e.which("code");if(t)return t;return C3(e).find((r)=>e.exists(r))??null}function IP(e){if(e.platform==="darwin")return Dt(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return Dt(e.env.APPDATA||Dt(e.home,"AppData","Roaming"),"Code","User","mcp.json");return Dt(e.env.XDG_CONFIG_HOME||Dt(e.home,".config"),"Code","User","mcp.json")}function CP(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>OP(e)!==null||Je(e,RP(e)),hasServer:async()=>he(IP(e),"servers",q)!==null,addServer:async(t)=>{let r=IP(e),n=he(r,"servers",q),s=["--add-mcp",JSON.stringify({name:q,type:"http",url:t})],i=OP(e);if(!i)return{target:r,outcome:Ze(r,"servers",q,{type:"http",url:t})};let a=pt("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await zt(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[Dt(e.home,".agents","skills")],login:()=>null}}import{join as ll}from"node:path";function mg(e){if(e.platform==="win32")return ll(e.env.APPDATA||ll(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return ll(e.home,".config","zed","settings.json");return ll(Ir(e),"zed","settings.json")}function zP(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Je(e,lr(e,["Zed","Zed Preview"])),hasServer:async()=>he(mg(e),"context_servers",q)!==null,addServer:async(t)=>({target:mg(e),outcome:Ze(mg(e),"context_servers",q,{url:t})}),skillsDirs:()=>[Be(e)],login:()=>null}}function NP(e){return[Z$(e),H$(e),X$(e),CP(e),oT(e),SP(e),EP(e),cT(e),W$(e),Y$(e),F$(e),iT(e),B$(e),PP(e),kP(e),zP(e),_P(e),xP(e)]}var z3=[["claude","claude"],["codex","codex"],["cursor","cursor"],["copilot-cli","copilot"],["github-copilot-cli","copilot"],["copilot","vscode"],["vscode","vscode"],["devin","devin"],["windsurf","devin"],["cascade","devin"],["grok","grok"],["opencode","opencode"],["gemini","gemini"],["antigravity","antigravity"],["agy","antigravity"],["amp","amp"],["droid","droid"],["factory","droid"],["cline","cline"],["kilo","kilo"],["kiro","kiro"],["zed","zed"],["goose","goose"],["muse","muse"]];function LP(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=z3.find(([n])=>t.startsWith(n));if(r)return r[1]}if(e.CLAUDECODE==="1")return"claude";if(e.CODEX_SANDBOX||e.CODEX_THREAD_ID)return"codex";if(e.GEMINI_CLI==="1")return"gemini";if(e.CURSOR_AGENT)return"cursor";return t?"unknown":null}import{spawn as N3}from"node:child_process";function L3(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function j3(e,t,r,n){return new Promise((o)=>{let s=N3(e,t,{env:n,stdio:["pipe","ignore","ignore"]});s.on("error",()=>o(!1)),s.on("exit",(i)=>o(i===0)),s.stdin.on("error",()=>{return}),s.stdin.end(r)})}async function jP(e,t){for(let[r,...n]of L3(e.platform)){let o=r?e.which(r):null;if(o&&await j3(o,n,t,e.env))return!0}return!1}var D3=`Use the \`${Ys}\` skill for this project.`;function DP(e){let t=e?.trim();if(!t)return D3;let r=px(t);if(r)return mx(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as F3,readFileSync as U3,renameSync as W3,writeFileSync as V3}from"node:fs";import{join as FP}from"node:path";var MP=`---
|
|
344
344
|
name: tripwire-get-started
|
|
345
345
|
description: Set up Tripwire, the contribution gatekeeper for GitHub repos, through the Tripwire MCP server. Use when the user asks to set up or get started with Tripwire, or pastes a prompt with a Tripwire org slug and run code.
|
|
346
346
|
---
|
|
@@ -420,7 +420,7 @@ you can manage Tripwire later with the \`tripwire\` CLI (\`npx @tripwire-sh/cli
|
|
|
420
420
|
--help\`): \`login\`, \`status\`, \`repos\`, \`rules\`, \`gate\`, \`workflows\`, \`runs\` and
|
|
421
421
|
\`queue\`, each with \`--json\`.
|
|
422
422
|
To write or change workflows as code, use the \`tripwire-workflows\` skill.
|
|
423
|
-
`;var
|
|
423
|
+
`;var qP=`---
|
|
424
424
|
name: tripwire-workflows
|
|
425
425
|
description: Write and change Tripwire workflows as tripwire.ts code. Use when the user wants a workflow, a gate, a schedule or an automation added, changed or explained, or mentions tripwire.ts.
|
|
426
426
|
---
|
|
@@ -533,37 +533,37 @@ workflow({ steps: { opened, age, stop: block().after(age.fails) } });
|
|
|
533
533
|
- \`match\`: \`{ subjects: ["issue"], state: "open", inactiveFor: { n: 15,
|
|
534
534
|
unit: "days" }, labels, excludeLabels }\`.
|
|
535
535
|
- Use \`run: [...]\` for actions straight after the trigger.
|
|
536
|
-
`;var
|
|
537
|
-
`)}function
|
|
536
|
+
`;var Z3=[{name:Ys,body:MP},{name:Ek,body:qP}];function hg(e,t=Ys){return FP(e,t,"SKILL.md")}function B3(e,t,r){let n=hg(e,t),o=null;try{o=U3(n,"utf8")}catch{o=null}if(o===r)return"unchanged";F3(FP(e,t),{recursive:!0});let s=`${n}.tripwire-${process.pid}.tmp`;return V3(s,r),W3(s,n),o===null?"added":"updated"}function UP(e){let t=Z3.map((r)=>B3(e,r.name,r.body));if(t.includes("added"))return"added";return t.includes("updated")?"updated":"unchanged"}async function WP(e){let t=e.filter((r)=>r.detect());return Promise.all(t.map(async(r)=>({agent:r,installed:await r.hasServer().catch(()=>!1)})))}async function gg(e,t,r=new Map){try{let n=await e.addServer(t),o=e.skillsDirs().map((s)=>{let i=r.get(s)??UP(s);return r.set(s,i),{path:hg(s),outcome:i}});return{kind:"done",mcp:n,skills:o}}catch(n){return{kind:"failed",message:n instanceof Error?n.message:String(n)}}}function VP(e){return e.status().catch(()=>"unknown")}function ZP(e){return Promise.all(e.map(async(t)=>{let r=t.login();if(r===null)return{kind:"manual",agent:t};return await VP(r)==="signed-in"?{kind:"signed-in",agent:t}:{kind:"run",agent:t,login:r}}))}async function K3(e,t){let r=await t(e).catch(()=>({ok:!1,stdout:"",stderr:""})),n=await VP(e.login);if(n==="unknown")return r.ok?"signed-in":"failed";return n==="signed-in"?"signed-in":"failed"}async function BP(e,t){let r=[];for(let n of e)if(n.kind==="run")r.push({agent:n.agent,outcome:await K3(n,t),login:n.login});else r.push({agent:n.agent,outcome:n.kind==="signed-in"?"already":"manual",login:null});return r}var KP=new Intl.ListFormat("en",{style:"long",type:"conjunction"});function HP(e,t){return t.split(e.home).join("~")}function H3(e,t){let{result:r}=t;if(r.kind==="failed")return $t.default.red(r.message);let n=[`${$t.default.dim("mcp ")} ${HP(e,r.mcp.target)} ${$t.default.dim(`(${r.mcp.outcome})`)}`];if(r.skills.length===0)n.push(`${$t.default.dim("skill")} ${$t.default.dim("not supported, MCP only")}`);for(let o of r.skills)n.push(`${$t.default.dim("skill")} ${HP(e,o.path)} ${$t.default.dim(`(${o.outcome})`)}`);return n.join(`
|
|
537
|
+
`)}function G3(){return $t.default.bgRed($t.default.black($t.default.bold(" tripwire ")))}async function J3(e){let t=await E$({message:"Select the agents to set up Tripwire for",options:e.map((r)=>({value:r.agent.id,label:r.installed?`${r.agent.name} (reinstall)`:r.agent.name})),initialValues:e.map((r)=>r.agent.id),required:!1,showInstructions:!1});if(Si(t))return null;return e.filter((r)=>t.includes(r.agent.id))}function GP(e){return pt(e.command.split(/[\\/]/).pop()??e.command,e.args)}function Y3(e){switch(e.outcome){case"signed-in":return"signed in";case"already":return"already signed in";case"failed":return e.login?`not signed in, run ${GP(e.login)}`:"not signed in";case"manual":return`sign in with ${e.agent.signInHint}`}}function X3(e){let t=Math.max(...e.map(({agent:o})=>o.name.length)),r=e.map((o)=>`${o.agent.name.padEnd(t)} ${Y3(o)}`);(e.some(({outcome:o})=>o==="failed")?Le.warn:Le.info)(`Tripwire sign-in
|
|
538
538
|
${r.join(`
|
|
539
|
-
`)}`)}async function
|
|
539
|
+
`)}`)}async function Q3(e,t){let r=t.filter((a)=>a.result.kind==="done").map(({agent:a})=>a);if(r.length===0)return!0;let o=r.some((a)=>a.login()!==null)?Ti():null;o?.start("Checking Tripwire sign-in");let s=await ZP(r);o?.stop("Checked Tripwire sign-in");let i=await BP(s,async({agent:a,login:c})=>(Le.step(`${a.name}: ${GP(c)}`),e.runInteractive(c.command,c.args)));return X3(i),i.every(({outcome:a})=>a!=="failed")}function eJ(e,t,r){let n=e.filter(({result:s})=>s.kind==="done");if(n.length===0)return;let o=n.map(({agent:s})=>s.id===t?`${s.name}, this session: do not run the login here. Ask the user to sign in with ${s.signInHint}. Restart ${s.name} first if tripwire is not listed.`:`${s.name}: ${s.signInHint}`);Le.info(`Sign in to the Tripwire MCP
|
|
540
540
|
${o.join(`
|
|
541
|
-
`)}`),
|
|
542
|
-
${r}`)}async function
|
|
541
|
+
`)}`),Le.info(`Then send this prompt
|
|
542
|
+
${r}`)}async function tJ(e,t){let r=await T$({message:"Copy a prompt to get started with Tripwire?",initialValue:!0});if(Si(r)||!r){Le.step("Maybe next time");return}let n=await jP(e,t);Le.success(n?"Copied a get-started prompt to your clipboard":"Copy this prompt to get started"),Le.message($t.default.gray(t))}async function JP(e,t){let r=bo(e.env),n=DP(t.instruction),o=LP(e.env),s=t.interactive&&!t.json&&o===null,i=await WP(NP(e)),a=new Map;if(t.json){let h=await Promise.all(i.map(async({agent:y})=>({agent:y,result:await gg(y,r,a)}))),g=h.map(({agent:y,result:b})=>({id:y.id,name:y.name,thisSession:y.id===o,signIn:y.signInHint,...b}));return process.stdout.write(`${JSON.stringify({mcpUrl:r,agents:g,prompt:n},null,2)}
|
|
543
543
|
`),h.every(({result:y})=>y.kind==="done")?0:1}if(process.stdout.write(`
|
|
544
|
-
${
|
|
544
|
+
${G3()}
|
|
545
545
|
|
|
546
|
-
`),
|
|
547
|
-
${
|
|
548
|
-
`;if(!(await e.run(t,["-i"],n)).ok)throw Error("Could not save the token to the macOS keychain")},clear:async()=>{await e.run(t,["delete-generic-password","-a",cl,"-s",al])}}}function oJ(e,t){let r=["service",al,"account",cl];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?fg(n.stdout):null},write:async(n)=>{if(!(await e.run(t,["store","--label=Tripwire",...r],JSON.stringify(n))).ok)throw Error("Could not save the token to the keyring")},clear:async()=>{await e.run(t,["clear",...r])}}}function BP(e,t){let r=pg(t);return{kind:e.kind,location:e.location,read:async()=>await e.read()??await r.read(),write:(n)=>e.write(n),clear:async()=>{await e.clear(),await r.clear()}}}function Ho(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return pg(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return BP(nJ(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return BP(oJ(e,t),e)}return pg(e)}class ta extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var sJ=30000;async function mg(e,t){let r=go(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=Ho(e),s=await o.read();if(!s)throw new ta;if(s.expiresAt&&s.expiresAt-sJ<t.now()){let i=await Ak(t,s).catch((a)=>{if(a instanceof Ys)throw a;throw new ta("Session expired. Run tripwire login.")});return await o.write(i),{token:i.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||i.mcpUrl,source:o.kind}}return{token:s.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||s.mcpUrl,source:o.kind}}function ul(e){return!!e._zod}function Jt(e,t){if(ul(e))return ap(e,t);return e.safeParse(t)}function ll(e){if(!e)return;let t;if(ul(e))t=e._zod?.def?.shape;else t=e.shape;if(!t)return;if(typeof t==="function")try{return t()}catch{return}return t}function dl(e){if(ul(e)){let s=e._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n;return}var Jo="2025-11-25";var KP=[Jo,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],an="io.modelcontextprotocol/related-task",fl="2.0",Ue=mc((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),HP=te([p(),P().int()]),GP=p(),Jye=ve({ttl:P().optional(),pollInterval:P().optional()}),cJ=w({ttl:P().optional()}),uJ=w({taskId:p()}),hg=ve({progressToken:HP.optional(),[an]:uJ.optional()}),$t=w({_meta:hg.optional()}),ra=$t.extend({task:cJ.optional()}),JP=(e)=>ra.safeParse(e).success,Ye=w({method:p(),params:$t.loose().optional()}),Dt=w({_meta:hg.optional()}),Mt=w({method:p(),params:Dt.loose().optional()}),Xe=ve({_meta:hg.optional()}),ml=te([p(),P().int()]),YP=w({jsonrpc:C(fl),id:ml,...Ye.shape}).strict(),na=(e)=>YP.safeParse(e).success,XP=w({jsonrpc:C(fl),...Mt.shape}).strict(),QP=(e)=>XP.safeParse(e).success,gg=w({jsonrpc:C(fl),id:ml,result:Xe}).strict(),Gn=(e)=>gg.safeParse(e).success;var H;(function(e){e[e.ConnectionClosed=-32000]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(H||(H={}));var yg=w({jsonrpc:C(fl),id:ml.optional(),error:w({code:P().int(),message:p(),data:ne().optional()})}).strict();var eO=(e)=>yg.safeParse(e).success;var hl=te([YP,XP,gg,yg]),Yye=te([gg,yg]),Jn=Xe.strict(),lJ=Dt.extend({requestId:ml.optional(),reason:p().optional()}),gl=Mt.extend({method:C("notifications/cancelled"),params:lJ}),dJ=w({src:p(),mimeType:p().optional(),sizes:k(p()).optional(),theme:z(["light","dark"]).optional()}),oa=w({icons:k(dJ).optional()}),Go=w({name:p(),title:p().optional()}),tO=Go.extend({...Go.shape,...oa.shape,version:p(),websiteUrl:p().optional(),description:p().optional()}),pJ=fc(w({applyDefaults:D().optional()}),K(p(),ne())),fJ=hc((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},fc(w({form:pJ.optional(),url:Ue.optional()}),K(p(),ne()).optional())),mJ=ve({list:Ue.optional(),cancel:Ue.optional(),requests:ve({sampling:ve({createMessage:Ue.optional()}).optional(),elicitation:ve({create:Ue.optional()}).optional()}).optional()}),hJ=ve({list:Ue.optional(),cancel:Ue.optional(),requests:ve({tools:ve({call:Ue.optional()}).optional()}).optional()}),gJ=w({experimental:K(p(),Ue).optional(),sampling:w({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:fJ.optional(),roots:w({listChanged:D().optional()}).optional(),tasks:mJ.optional(),extensions:K(p(),Ue).optional()}),yJ=$t.extend({protocolVersion:p(),capabilities:gJ,clientInfo:tO}),wJ=Ye.extend({method:C("initialize"),params:yJ});var bJ=w({experimental:K(p(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:w({listChanged:D().optional()}).optional(),resources:w({subscribe:D().optional(),listChanged:D().optional()}).optional(),tools:w({listChanged:D().optional()}).optional(),tasks:hJ.optional(),extensions:K(p(),Ue).optional()}),wg=Xe.extend({protocolVersion:p(),capabilities:bJ,serverInfo:tO,instructions:p().optional()}),rO=Mt.extend({method:C("notifications/initialized"),params:Dt.optional()}),nO=(e)=>rO.safeParse(e).success,yl=Ye.extend({method:C("ping"),params:$t.optional()}),_J=w({progress:P(),total:Te(P()),message:Te(p())}),vJ=w({...Dt.shape,..._J.shape,progressToken:HP}),wl=Mt.extend({method:C("notifications/progress"),params:vJ}),SJ=$t.extend({cursor:GP.optional()}),sa=Ye.extend({params:SJ.optional()}),ia=Xe.extend({nextCursor:GP.optional()}),kJ=z(["working","input_required","completed","failed","cancelled"]),aa=w({taskId:p(),status:kJ,ttl:te([P(),Hs()]),createdAt:p(),lastUpdatedAt:p(),pollInterval:Te(P()),statusMessage:Te(p())}),Yn=Xe.extend({task:aa}),xJ=Dt.merge(aa),ca=Mt.extend({method:C("notifications/tasks/status"),params:xJ}),bl=Ye.extend({method:C("tasks/get"),params:$t.extend({taskId:p()})}),_l=Xe.merge(aa),vl=Ye.extend({method:C("tasks/result"),params:$t.extend({taskId:p()})}),Xye=Xe.loose(),Sl=sa.extend({method:C("tasks/list")}),kl=ia.extend({tasks:k(aa)}),xl=Ye.extend({method:C("tasks/cancel"),params:$t.extend({taskId:p()})}),oO=Xe.merge(aa),sO=w({uri:p(),mimeType:Te(p()),_meta:K(p(),ne()).optional()}),iO=sO.extend({text:p()}),bg=p().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),aO=sO.extend({blob:bg}),ua=z(["user","assistant"]),Yo=w({audience:k(ua).optional(),priority:P().min(0).max(1).optional(),lastModified:wk({offset:!0}).optional()}),cO=w({...Go.shape,...oa.shape,uri:p(),description:Te(p()),mimeType:Te(p()),size:Te(P()),annotations:Yo.optional(),_meta:Te(ve({}))}),$J=w({...Go.shape,...oa.shape,uriTemplate:p(),description:Te(p()),mimeType:Te(p()),annotations:Yo.optional(),_meta:Te(ve({}))}),TJ=sa.extend({method:C("resources/list")}),_g=ia.extend({resources:k(cO)}),EJ=sa.extend({method:C("resources/templates/list")}),vg=ia.extend({resourceTemplates:k($J)}),Sg=$t.extend({uri:p()}),PJ=Sg,OJ=Ye.extend({method:C("resources/read"),params:PJ}),kg=Xe.extend({contents:k(te([iO,aO]))}),xg=Mt.extend({method:C("notifications/resources/list_changed"),params:Dt.optional()}),IJ=Sg,AJ=Ye.extend({method:C("resources/subscribe"),params:IJ}),RJ=Sg,CJ=Ye.extend({method:C("resources/unsubscribe"),params:RJ}),zJ=Dt.extend({uri:p()}),NJ=Mt.extend({method:C("notifications/resources/updated"),params:zJ}),LJ=w({name:p(),description:Te(p()),required:Te(D())}),jJ=w({...Go.shape,...oa.shape,description:Te(p()),arguments:Te(k(LJ)),_meta:Te(ve({}))}),DJ=sa.extend({method:C("prompts/list")}),$g=ia.extend({prompts:k(jJ)}),MJ=$t.extend({name:p(),arguments:K(p(),p()).optional()}),qJ=Ye.extend({method:C("prompts/get"),params:MJ}),Tg=w({type:C("text"),text:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),Eg=w({type:C("image"),data:bg,mimeType:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),Pg=w({type:C("audio"),data:bg,mimeType:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),FJ=w({type:C("tool_use"),name:p(),id:p(),input:K(p(),ne()),_meta:K(p(),ne()).optional()}),UJ=w({type:C("resource"),resource:te([iO,aO]),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),WJ=cO.extend({type:C("resource_link")}),Og=te([Tg,Eg,Pg,WJ,UJ]),VJ=w({role:ua,content:Og}),Ig=Xe.extend({description:p().optional(),messages:k(VJ)}),Ag=Mt.extend({method:C("notifications/prompts/list_changed"),params:Dt.optional()}),ZJ=w({title:p().optional(),readOnlyHint:D().optional(),destructiveHint:D().optional(),idempotentHint:D().optional(),openWorldHint:D().optional()}),BJ=w({taskSupport:z(["required","optional","forbidden"]).optional()}),uO=w({...Go.shape,...oa.shape,description:p().optional(),inputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:k(p()).optional()}).catchall(ne()),outputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:k(p()).optional()}).catchall(ne()).optional(),annotations:ZJ.optional(),execution:BJ.optional(),_meta:K(p(),ne()).optional()}),KJ=sa.extend({method:C("tools/list")}),Rg=ia.extend({tools:k(uO)}),Ar=Xe.extend({content:k(Og).default([]),structuredContent:K(p(),ne()).optional(),isError:D().optional()}),Qye=Ar.or(Xe.extend({toolResult:ne()})),HJ=ra.extend({name:p(),arguments:K(p(),ne()).optional()}),GJ=Ye.extend({method:C("tools/call"),params:HJ}),Cg=Mt.extend({method:C("notifications/tools/list_changed"),params:Dt.optional()}),lO=w({autoRefresh:D().default(!0),debounceMs:P().int().nonnegative().default(300)}),dO=z(["debug","info","notice","warning","error","critical","alert","emergency"]),JJ=$t.extend({level:dO}),YJ=Ye.extend({method:C("logging/setLevel"),params:JJ}),XJ=Dt.extend({level:dO,logger:p().optional(),data:ne()}),QJ=Mt.extend({method:C("notifications/message"),params:XJ}),e6=w({name:p().optional()}),t6=w({hints:k(e6).optional(),costPriority:P().min(0).max(1).optional(),speedPriority:P().min(0).max(1).optional(),intelligencePriority:P().min(0).max(1).optional()}),r6=w({mode:z(["auto","required","none"]).optional()}),n6=w({type:C("tool_result"),toolUseId:p().describe("The unique identifier for the corresponding tool call."),content:k(Og).default([]),structuredContent:w({}).loose().optional(),isError:D().optional(),_meta:K(p(),ne()).optional()}),o6=It("type",[Tg,Eg,Pg]),pl=It("type",[Tg,Eg,Pg,FJ,n6]),s6=w({role:ua,content:te([pl,k(pl)]),_meta:K(p(),ne()).optional()}),i6=ra.extend({messages:k(s6),modelPreferences:t6.optional(),systemPrompt:p().optional(),includeContext:z(["none","thisServer","allServers"]).optional(),temperature:P().optional(),maxTokens:P().int(),stopSequences:k(p()).optional(),metadata:Ue.optional(),tools:k(uO).optional(),toolChoice:r6.optional()}),zg=Ye.extend({method:C("sampling/createMessage"),params:i6}),Ng=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens"]).or(p())),role:ua,content:o6}),Lg=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens","toolUse"]).or(p())),role:ua,content:te([pl,k(pl)])}),a6=w({type:C("boolean"),title:p().optional(),description:p().optional(),default:D().optional()}),c6=w({type:C("string"),title:p().optional(),description:p().optional(),minLength:P().optional(),maxLength:P().optional(),format:z(["email","uri","date","date-time"]).optional(),default:p().optional()}),u6=w({type:z(["number","integer"]),title:p().optional(),description:p().optional(),minimum:P().optional(),maximum:P().optional(),default:P().optional()}),l6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),default:p().optional()}),d6=w({type:C("string"),title:p().optional(),description:p().optional(),oneOf:k(w({const:p(),title:p()})),default:p().optional()}),p6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),enumNames:k(p()).optional(),default:p().optional()}),f6=te([l6,d6]),m6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({type:C("string"),enum:k(p())}),default:k(p()).optional()}),h6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({anyOf:k(w({const:p(),title:p()}))}),default:k(p()).optional()}),g6=te([m6,h6]),y6=te([p6,f6,g6]),w6=te([y6,a6,c6,u6]),b6=ra.extend({mode:C("form").optional(),message:p(),requestedSchema:w({type:C("object"),properties:K(p(),w6),required:k(p()).optional()})}),_6=ra.extend({mode:C("url"),message:p(),elicitationId:p(),url:p().url()}),v6=te([b6,_6]),jg=Ye.extend({method:C("elicitation/create"),params:v6}),S6=Dt.extend({elicitationId:p()}),k6=Mt.extend({method:C("notifications/elicitation/complete"),params:S6}),Dg=Xe.extend({action:z(["accept","decline","cancel"]),content:hc((e)=>e===null?void 0:e,K(p(),te([p(),P(),D(),k(p())])).optional())}),x6=w({type:C("ref/resource"),uri:p()});var $6=w({type:C("ref/prompt"),name:p()}),T6=$t.extend({ref:te([$6,x6]),argument:w({name:p(),value:p()}),context:w({arguments:K(p(),p()).optional()}).optional()}),E6=Ye.extend({method:C("completion/complete"),params:T6});var Mg=Xe.extend({completion:ve({values:k(p()).max(100),total:Te(P().int()),hasMore:Te(D())})}),P6=w({uri:p().startsWith("file://"),name:p().optional(),_meta:K(p(),ne()).optional()}),O6=Ye.extend({method:C("roots/list"),params:$t.optional()}),I6=Xe.extend({roots:k(P6)}),A6=Mt.extend({method:C("notifications/roots/list_changed"),params:Dt.optional()}),ewe=te([yl,wJ,E6,YJ,qJ,DJ,TJ,EJ,OJ,AJ,CJ,GJ,KJ,bl,vl,Sl,xl]),twe=te([gl,wl,rO,A6,ca]),rwe=te([Jn,Ng,Lg,Dg,I6,_l,kl,Yn]),nwe=te([yl,zg,jg,O6,bl,vl,Sl,xl]),owe=te([gl,wl,QJ,NJ,xg,Cg,Ag,ca,k6]),swe=te([Jn,wg,Mg,Ig,$g,_g,vg,kg,Ar,Rg,_l,kl,Yn]);class Z extends Error{constructor(e,t,r){super(`MCP error ${e}: ${t}`);this.code=e,this.data=r,this.name="McpError"}static fromError(e,t,r){if(e===H.UrlElicitationRequired&&r){let n=r;if(n.elicitations)return new pO(n.elicitations,t)}return new Z(e,t,r)}}class pO extends Z{constructor(e,t=`URL elicitation${e.length>1?"s":""} required`){super(H.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}function cn(e){return e==="completed"||e==="failed"||e==="cancelled"}var R6=Symbol("Let zodToJsonSchema decide on which parser to use");var Dwe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function qg(e){let r=ll(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=dl(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function Fg(e,t){let r=Jt(e,t);if(!r.success)throw r.error;return r.data}var D6=60000;class Ug{constructor(e){if(this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(gl,(t)=>{this._oncancel(t)}),this.setNotificationHandler(wl,(t)=>{this._onprogress(t)}),this.setRequestHandler(yl,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(bl,async(t,r)=>{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(H.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(vl,async(t,r)=>{let n=async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new Z(H.InvalidParams,`Task not found: ${o}`);if(this._taskMessageQueue){let i;while(i=await this._taskMessageQueue.dequeue(o,r.sessionId)){if(i.type==="response"||i.type==="error"){let a=i.message,c=a.id,u=this._requestResolvers.get(c);if(u)if(this._requestResolvers.delete(c),i.type==="response")u(a);else{let l=a,d=new Z(l.error.code,l.error.message,l.error.data);u(d)}else{let l=i.type==="response"?"Response":"Error";this._onerror(Error(`${l} handler missing for request ${c}`))}continue}await this._transport?.send(i.message,{relatedRequestId:r.requestId})}}let s=await this._taskStore.getTask(o,r.sessionId);if(!s)throw new Z(H.InvalidParams,`Task not found: ${o}`);if(!cn(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(cn(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[an]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(Sl,async(t,r)=>{try{let{tasks:n,nextCursor:o}=await this._taskStore.listTasks(t.params?.cursor,r.sessionId);return{tasks:n,nextCursor:o,_meta:{}}}catch(n){throw new Z(H.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(xl,async(t,r)=>{try{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(H.InvalidParams,`Task not found: ${t.params.taskId}`);if(cn(n.status))throw new Z(H.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(t.params.taskId,"cancelled","Client cancelled task execution.",r.sessionId),this._clearTaskQueue(t.params.taskId,r.sessionId);let o=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!o)throw new Z(H.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(n){if(n instanceof Z)throw n;throw new Z(H.InvalidRequest,`Failed to cancel task: ${n instanceof Error?n.message:String(n)}`)}})}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,r,n,o=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(n,t),startTime:Date.now(),timeout:t,maxTotalTimeout:r,resetTimeoutOnProgress:o,onTimeout:n})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let r=Date.now()-t.startTime;if(t.maxTotalTimeout&&r>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),Z.fromError(H.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:r});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);if(t)clearTimeout(t.timeoutId),this._timeoutInfo.delete(e)}async connect(e){if(this._transport)throw Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let r=this.transport?.onerror;this._transport.onerror=(o)=>{r?.(o),this._onerror(o)};let n=this._transport?.onmessage;this._transport.onmessage=(o,s)=>{if(n?.(o,s),Gn(o)||eO(o))this._onresponse(o);else if(na(o))this._onrequest(o,s);else if(QP(o))this._onnotification(o);else this._onerror(Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let r of this._timeoutInfo.values())clearTimeout(r.timeoutId);this._timeoutInfo.clear();for(let r of this._requestHandlerAbortControllers.values())r.abort();this._requestHandlerAbortControllers.clear();let t=Z.fromError(H.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let r of e.values())r(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;if(t===void 0)return;Promise.resolve().then(()=>t(e)).catch((r)=>this._onerror(Error(`Uncaught error in notification handler: ${r}`)))}_onrequest(e,t){let r=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,n=this._transport,o=e.params?._meta?.[an]?.taskId,s=n?.sessionId,i=this._taskStore,a=!0,c;if(o&&i&&this._taskMessageQueue&&s!==void 0)a=!1,c=(async()=>{if(!await i.getTask(o,s))throw new Z(H.InvalidParams,`Task not found: ${o}`);a=!0})();if(r===void 0){let m={jsonrpc:"2.0",id:e.id,error:{code:H.MethodNotFound,message:"Method not found"}};if(o&&c){let h={type:"error",message:m,timestamp:Date.now()};c.then(()=>this._enqueueTaskMessage(o,h,s),()=>n?.send(m)).catch((g)=>this._onerror(Error(`Failed to send an error response: ${g}`)))}else if(o&&this._taskMessageQueue)this._enqueueTaskMessage(o,{type:"error",message:m,timestamp:Date.now()},n?.sessionId).catch((h)=>this._onerror(Error(`Failed to enqueue error response: ${h}`)));else n?.send(m).catch((h)=>this._onerror(Error(`Failed to send an error response: ${h}`)));return}let u=new AbortController;this._requestHandlerAbortControllers.set(e.id,u);let l=JP(e.params)?e.params.task:void 0,d=this._taskStore?this.requestTaskStore(e,n?.sessionId):void 0,f={signal:u.signal,sessionId:n?.sessionId,_meta:e.params?._meta,sendNotification:async(m)=>{if(u.signal.aborted)return;let h={relatedRequestId:e.id};if(o)h.relatedTask={taskId:o};await this.notification(m,h)},sendRequest:async(m,h,g)=>{if(u.signal.aborted)throw new Z(H.ConnectionClosed,"Request was cancelled");let y={...g,relatedRequestId:e.id};if(o&&!y.relatedTask)y.relatedTask={taskId:o};let b=y.relatedTask?.taskId??o;if(b&&d)await d.updateTaskStatus(b,"input_required");return await this.request(m,h,y)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:o,taskStore:d,taskRequestedTtl:l?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};(c??Promise.resolve()).then(()=>{if(c&&u.signal.aborted)throw new Z(H.ConnectionClosed,"Request was cancelled");if(l)this.assertTaskHandlerCapability(e.method)}).then(()=>r(e,f)).then(async(m)=>{if(u.signal.aborted)return;let h={result:m,jsonrpc:"2.0",id:e.id};if(o&&this._taskMessageQueue)await this._enqueueTaskMessage(o,{type:"response",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)},async(m)=>{if(u.signal.aborted)return;let h={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(m.code)?m.code:H.InternalError,message:m.message??"Internal error",...m.data!==void 0&&{data:m.data}}};if(o&&this._taskMessageQueue&&a)await this._enqueueTaskMessage(o,{type:"error",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)}).catch((m)=>this._onerror(Error(`Failed to send response: ${m}`))).finally(()=>{if(this._requestHandlerAbortControllers.get(e.id)===u)this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...r}=e.params,n=Number(t),o=this._progressHandlers.get(n);if(!o){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let s=this._responseHandlers.get(n),i=this._timeoutInfo.get(n);if(i&&s&&i.resetTimeoutOnProgress)try{this._resetTimeout(n)}catch(a){this._responseHandlers.delete(n),this._progressHandlers.delete(n),this._cleanupTimeout(n),s(a);return}o(r)}_onresponse(e){let t=Number(e.id),r=this._requestResolvers.get(t);if(r){if(this._requestResolvers.delete(t),Gn(e))r(e);else{let s=new Z(e.error.code,e.error.message,e.error.data);r(s)}return}let n=this._responseHandlers.get(t);if(n===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let o=!1;if(Gn(e)&&e.result&&typeof e.result==="object"){let s=e.result;if(s.task&&typeof s.task==="object"){let i=s.task;if(typeof i.taskId==="string")o=!0,this._taskProgressTokens.set(i.taskId,t)}}if(!o)this._progressHandlers.delete(t);if(Gn(e))n(e);else{let s=Z.fromError(e.error.code,e.error.message,e.error.data);n(s)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,r){let{task:n}=r??{};if(!n){try{yield{type:"result",result:await this.request(e,t,r)}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(H.InternalError,String(s))}}return}let o;try{let s=await this.request(e,Yn,r);if(s.task)o=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new Z(H.InternalError,"Task creation did not return a task");while(!0){let i=await this.getTask({taskId:o},r);if(yield{type:"taskStatus",task:i},cn(i.status)){if(i.status==="completed")yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};else if(i.status==="failed")yield{type:"error",error:new Z(H.InternalError,`Task ${o} failed`)};else if(i.status==="cancelled")yield{type:"error",error:new Z(H.InternalError,`Task ${o} was cancelled`)};return}if(i.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};return}let a=i.pollInterval??this._options?.defaultTaskPollInterval??1000;await new Promise((c)=>setTimeout(c,a)),r?.signal?.throwIfAborted()}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(H.InternalError,String(s))}}}request(e,t,r){let{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s,task:i,relatedTask:a}=r??{};return new Promise((c,u)=>{let l=(b)=>{u(b)};if(!this._transport){l(Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{if(this.assertCapabilityForMethod(e.method),i)this.assertTaskCapability(e.method)}catch(b){l(b);return}r?.signal?.throwIfAborted();let d=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:d};if(r?.onprogress)this._progressHandlers.set(d,r.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}};if(i)f.params={...f.params,task:i};if(a)f.params={...f.params,_meta:{...f.params?._meta||{},[an]:a}};let m=(b)=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(b)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((S)=>this._onerror(Error(`Failed to send cancellation: ${S}`)));let T=b instanceof Z?b:new Z(H.RequestTimeout,String(b));u(T)};this._responseHandlers.set(d,(b)=>{if(r?.signal?.aborted)return;if(b instanceof Error)return u(b);try{let T=Jt(t,b.result);if(!T.success)u(T.error);else c(T.data)}catch(T){u(T)}}),r?.signal?.addEventListener("abort",()=>{m(r?.signal?.reason)});let h=r?.timeout??D6,g=()=>m(Z.fromError(H.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(d,h,r?.maxTotalTimeout,g,r?.resetTimeoutOnProgress??!1);let y=a?.taskId;if(y){let b=(T)=>{let S=this._responseHandlers.get(d);if(S)S(T);else this._onerror(Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,b),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch((T)=>{this._cleanupTimeout(d),u(T)})}else this._transport.send(f,{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((b)=>{this._cleanupTimeout(d),u(b)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},_l,t)}async getTaskResult(e,t,r){return this.request({method:"tasks/result",params:e},t,r)}async listTasks(e,t){return this.request({method:"tasks/list",params:e},kl,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},oO,t)}async notification(e,t){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(e.method);let r=t?.relatedTask?.taskId;if(r){let i={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[an]:t.relatedTask}}};await this._enqueueTaskMessage(r,{type:"notification",message:i,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let i={...e,jsonrpc:"2.0"};if(t?.relatedTask)i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[an]:t.relatedTask}}};this._transport?.send(i,t).catch((a)=>this._onerror(a))});return}let s={...e,jsonrpc:"2.0"};if(t?.relatedTask)s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[an]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=qg(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=Fg(e,n);return Promise.resolve(t(s,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let r=qg(e);this._notificationHandlers.set(r,(n)=>{let o=Fg(e,n);return Promise.resolve(t(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);if(t!==void 0)this._progressHandlers.delete(t),this._taskProgressTokens.delete(e)}async _enqueueTaskMessage(e,t,r){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,r??this._transport?.sessionId,n)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let r=await this._taskMessageQueue.dequeueAll(e,t);for(let n of r)if(n.type==="request"&&na(n.message)){let o=n.message.id,s=this._requestResolvers.get(o);if(s)s(new Z(H.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o);else this._onerror(Error(`Resolver missing for request ${o} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t,r){let n=this._options?.defaultTaskPollInterval??1000;try{let o=await this._taskStore?.getTask(e,r);if(o?.pollInterval)n=o.pollInterval}catch{}return new Promise((o,s)=>{if(t.aborted){s(new Z(H.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);t.addEventListener("abort",()=>{clearTimeout(i),s(new Z(H.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,t){let r=this._taskStore;if(!r)throw Error("No task store configured");return{createTask:async(n)=>{if(!e)throw Error("No request provided");return await r.createTask(n,e.id,{method:e.method,params:e.params},t)},getTask:async(n)=>{let o=await r.getTask(n,t);if(!o)throw new Z(H.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(n,o,s)=>{await r.storeTaskResult(n,o,s,t);let i=await r.getTask(n,t);if(i){let a=ca.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),cn(i.status))this._cleanupTaskProgressHandler(n)}},getTaskResult:(n)=>r.getTaskResult(n,t),updateTaskStatus:async(n,o,s)=>{let i=await r.getTask(n,t);if(!i)throw new Z(H.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(cn(i.status))throw new Z(H.InvalidParams,`Cannot update task "${n}" from terminal status "${i.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await r.updateTaskStatus(n,o,s,t);let a=await r.getTask(n,t);if(a){let c=ca.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),cn(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function fO(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function mO(e,t){let r={...e};for(let n in t){let o=n,s=t[o];if(s===void 0)continue;let i=r[o];if(fO(i)&&fO(s))r[o]={...i,...s};else r[o]=s}return r}var y1=In(Ty(),1),w1=In(g1(),1);function kte(){let e=new y1.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return w1.default(e),e}class Ny{constructor(e){this._ajv=e??kte()}getValidator(e){let t="$id"in e&&typeof e.$id==="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return(r)=>{if(t(r))return{valid:!0,data:r,errorMessage:void 0};else return{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(t.errors)}}}}class Ly{constructor(e){this._client=e}async*callToolStream(e,t=Ar,r){let n=this._client,o={...r,task:r?.task??(n.isToolTask(e.name)?{}:void 0)},s=n.requestStream({method:"tools/call",params:e},t,o),i=n.getToolOutputValidator(e.name);for await(let a of s){if(a.type==="result"&&i){let c=a.result;if(!c.structuredContent&&!c.isError){yield{type:"error",error:new Z(H.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(c.structuredContent)try{let u=i(c.structuredContent);if(!u.valid){yield{type:"error",error:new Z(H.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof Z){yield{type:"error",error:u};return}yield{type:"error",error:new Z(H.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};return}}yield a}}async getTask(e,t){return this._client.getTask({taskId:e},t)}async getTaskResult(e,t,r){return this._client.getTaskResult({taskId:e},t,r)}async listTasks(e,t){return this._client.listTasks(e?{cursor:e}:void 0,t)}async cancelTask(e,t){return this._client.cancelTask({taskId:e},t)}requestStream(e,t,r){return this._client.requestStream(e,t,r)}}function b1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function _1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}function pd(e,t){if(!e||t===null||typeof t!=="object")return;if(e.type==="object"&&e.properties&&typeof e.properties==="object"){let r=t,n=e.properties;for(let o of Object.keys(n)){let s=n[o];if(r[o]===void 0&&Object.prototype.hasOwnProperty.call(s,"default"))r[o]=s.default;if(r[o]!==void 0)pd(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")pd(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")pd(r,t)}}function xte(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}class jy extends Ug{constructor(e,t){super(t);if(this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=t?.capabilities??{},this._jsonSchemaValidator=t?.jsonSchemaValidator??new Ny,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",Cg,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",Ag,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",xg,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new Ly(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=mO(this._capabilities,e)}setRequestHandler(e,t){let n=ll(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=dl(n);if(typeof o!=="string")throw Error("Schema method literal must be a string");let s=o;if(s==="elicitation/create"){let i=async(a,c)=>{let u=Jt(jg,a);if(!u.success){let b=u.error instanceof Error?u.error.message:String(u.error);throw new Z(H.InvalidParams,`Invalid elicitation request: ${b}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:d,supportsUrlMode:f}=xte(this._capabilities.elicitation);if(l.mode==="form"&&!d)throw new Z(H.InvalidParams,"Client does not support form-mode elicitation requests");if(l.mode==="url"&&!f)throw new Z(H.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(t(a,c));if(l.task){let b=Jt(Yn,m);if(!b.success){let T=b.error instanceof Error?b.error.message:String(b.error);throw new Z(H.InvalidParams,`Invalid task creation result: ${T}`)}return b.data}let h=Jt(Dg,m);if(!h.success){let b=h.error instanceof Error?h.error.message:String(h.error);throw new Z(H.InvalidParams,`Invalid elicitation result: ${b}`)}let g=h.data,y=l.mode==="form"?l.requestedSchema:void 0;if(l.mode==="form"&&g.action==="accept"&&g.content&&y){if(this._capabilities.elicitation?.form?.applyDefaults)try{pd(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Jt(zg,a);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new Z(H.InvalidParams,`Invalid sampling request: ${g}`)}let{params:l}=u.data,d=await Promise.resolve(t(a,c));if(l.task){let g=Jt(Yn,d);if(!g.success){let y=g.error instanceof Error?g.error.message:String(g.error);throw new Z(H.InvalidParams,`Invalid task creation result: ${y}`)}return g.data}let m=l.tools||l.toolChoice?Lg:Ng,h=Jt(m,d);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new Z(H.InvalidParams,`Invalid sampling result: ${g}`)}return h.data};return super.setRequestHandler(e,i)}return super.setRequestHandler(e,t)}assertCapability(e,t){if(!this._serverCapabilities?.[e])throw Error(`Server does not support ${e} (required for ${t})`)}async connect(e,t){if(await super.connect(e),e.sessionId!==void 0)return;try{let r=await this.request({method:"initialize",params:{protocolVersion:Jo,capabilities:this._capabilities,clientInfo:this._clientInfo}},wg,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!KP.includes(r.protocolVersion))throw Error(`Server's protocol version is not supported: ${r.protocolVersion}`);if(this._serverCapabilities=r.capabilities,this._serverVersion=r.serverInfo,e.setProtocolVersion)e.setProtocolVersion(r.protocolVersion);if(this._instructions=r.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig)this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0}catch(r){throw this.close(),r}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(!this._capabilities)return;switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){b1(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;_1(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Jn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},Mg,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Jn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},Ig,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},$g,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},_g,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},vg,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},kg,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Jn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Jn,t)}async callTool(e,t=Ar,r){if(this.isToolTaskRequired(e.name))throw new Z(H.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let n=await this.request({method:"tools/call",params:e},t,r),o=this.getToolOutputValidator(e.name);if(o){if(!n.structuredContent&&!n.isError)throw new Z(H.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(n.structuredContent)try{let s=o(n.structuredContent);if(!s.valid)throw new Z(H.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){if(s instanceof Z)throw s;throw new Z(H.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)}}return n}isToolTask(e){if(!this._serverCapabilities?.tasks?.requests?.tools?.call)return!1;return this._cachedKnownTaskTools.has(e)}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let t of e){if(t.outputSchema){let n=this._jsonSchemaValidator.getValidator(t.outputSchema);this._cachedToolOutputValidators.set(t.name,n)}let r=t.execution?.taskSupport;if(r==="required"||r==="optional")this._cachedKnownTaskTools.add(t.name);if(r==="required")this._cachedRequiredTaskTools.add(t.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,t){let r=await this.request({method:"tools/list",params:e},Rg,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=lO.safeParse(r);if(!o.success)throw Error(`Invalid ${e} listChanged options: ${o.error.message}`);if(typeof r.onChanged!=="function")throw Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:i}=o.data,{onChanged:a}=r,c=async()=>{if(!s){a(null,null);return}try{let l=await n();a(null,l)}catch(l){let d=l instanceof Error?l:Error(String(l));a(d,null)}},u=()=>{if(i){let l=this._listChangedDebounceTimers.get(e);if(l)clearTimeout(l);let d=setTimeout(c,i);this._listChangedDebounceTimers.set(e,d)}else c()};this.setNotificationHandler(t,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}/*!
|
|
546
|
+
`),P$($t.default.dim("Setting up Tripwire in your coding agents")),i.length===0)return Le.warn("No AI coding tools found"),$i("Install a supported coding agent, then run this again."),1;Le.step(`Detected ${KP.format(i.map(({agent:h})=>h.name))}`);let c=i;if(s){let h=await J3(i);if(h===null)return lu("Cancelled"),1;c=h}if(c.length===0)return $i("No agents selected"),0;let u=s?Ti():null;u?.start("Installing the Tripwire MCP and skill");let l=await Promise.all(c.map(async({agent:h})=>({agent:h,result:await gg(h,r,a)})));if(u?.stop("Installed the Tripwire MCP and skill"),!u)Le.step("Installed the Tripwire MCP and skill");for(let h of l)(h.result.kind==="done"?Le.success:Le.error)(`${h.agent.name}
|
|
547
|
+
${H3(e,h)}`);let d=!0;if(s){if(d=await Q3(e,l),l.some(({result:h})=>h.kind==="done"))await tJ(e,n)}else eJ(l,o,n);let f=l.filter(({result:h})=>h.kind==="done").map(({agent:h})=>h.name);if(f.length>0)$i(`Done. Restart ${KP.format(f)}.`);else $i("Nothing was installed");return l.every(({result:h})=>h.kind==="done")&&d?0:1}import{dirname as Fd,resolve as Ez}from"node:path";import{chmodSync as rJ,mkdirSync as nJ,readFileSync as oJ,renameSync as sJ,rmSync as iJ,writeFileSync as aJ}from"node:fs";import{join as yg}from"node:path";var cJ=w({accessToken:p().min(1),refreshToken:p().min(1).optional(),expiresAt:P().optional(),mcpUrl:p(),authUrl:p()}),dl="tripwire-cli",pl="default";function bg(e){if(!e)return null;try{let t=cJ.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function uJ(e){return yg(e.env.XDG_CONFIG_HOME||yg(e.home,".config"),"tripwire","credentials.json")}function wg(e){let t=uJ(e);return{kind:"file",location:t,read:async()=>{try{return bg(oJ(t,"utf8"))}catch{return null}},write:async(r)=>{let n=yg(t,"..");nJ(n,{recursive:!0,mode:448});let o=`${t}.${process.pid}.tmp`;aJ(o,JSON.stringify(r),{mode:384}),rJ(o,384),sJ(o,t)},clear:async()=>{iJ(t,{force:!0})}}}function lJ(e){return Buffer.from(e,"utf8").toString("hex")}function dJ(e,t){return{kind:"keychain",location:"macOS keychain",read:async()=>{let r=await e.run(t,["find-generic-password","-a",pl,"-s",dl,"-w"]);return r.ok?bg(r.stdout):null},write:async(r)=>{let n=`add-generic-password -U -a ${pl} -s ${dl} -l Tripwire -X ${lJ(JSON.stringify(r))}
|
|
548
|
+
`;if(!(await e.run(t,["-i"],n)).ok)throw Error("Could not save the token to the macOS keychain")},clear:async()=>{await e.run(t,["delete-generic-password","-a",pl,"-s",dl])}}}function pJ(e,t){let r=["service",dl,"account",pl];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?bg(n.stdout):null},write:async(n)=>{if(!(await e.run(t,["store","--label=Tripwire",...r],JSON.stringify(n))).ok)throw Error("Could not save the token to the keyring")},clear:async()=>{await e.run(t,["clear",...r])}}}function YP(e,t){let r=wg(t);return{kind:e.kind,location:e.location,read:async()=>await e.read()??await r.read(),write:(n)=>e.write(n),clear:async()=>{await e.clear(),await r.clear()}}}function Yo(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return wg(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return YP(dJ(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return YP(pJ(e,t),e)}return wg(e)}class na extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var fJ=30000;async function _g(e,t){let r=bo(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=Yo(e),s=await o.read();if(!s)throw new na;if(s.expiresAt&&s.expiresAt-fJ<t.now()){let i=await jk(t,s).catch((a)=>{if(a instanceof Qs)throw a;throw new na("Session expired. Run tripwire login.")});return await o.write(i),{token:i.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||i.mcpUrl,source:o.kind}}return{token:s.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||s.mcpUrl,source:o.kind}}function fl(e){return!!e._zod}function Xt(e,t){if(fl(e))return dp(e,t);return e.safeParse(t)}function ml(e){if(!e)return;let t;if(fl(e))t=e._zod?.def?.shape;else t=e.shape;if(!t)return;if(typeof t==="function")try{return t()}catch{return}return t}function hl(e){if(fl(e)){let s=e._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n;return}var Qo="2025-11-25";var XP=[Qo,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],un="io.modelcontextprotocol/related-task",yl="2.0",Ue=gc((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),QP=ee([p(),P().int()]),eO=p(),Rwe=fe({ttl:P().optional(),pollInterval:P().optional()}),gJ=w({ttl:P().optional()}),yJ=w({taskId:p()}),Sg=fe({progressToken:QP.optional(),[un]:yJ.optional()}),Tt=w({_meta:Sg.optional()}),oa=Tt.extend({task:gJ.optional()}),tO=(e)=>oa.safeParse(e).success,Ye=w({method:p(),params:Tt.loose().optional()}),Mt=w({_meta:Sg.optional()}),qt=w({method:p(),params:Mt.loose().optional()}),Xe=fe({_meta:Sg.optional()}),wl=ee([p(),P().int()]),rO=w({jsonrpc:C(yl),id:wl,...Ye.shape}).strict(),sa=(e)=>rO.safeParse(e).success,nO=w({jsonrpc:C(yl),...qt.shape}).strict(),oO=(e)=>nO.safeParse(e).success,vg=w({jsonrpc:C(yl),id:wl,result:Xe}).strict(),Yn=(e)=>vg.safeParse(e).success;var G;(function(e){e[e.ConnectionClosed=-32000]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(G||(G={}));var kg=w({jsonrpc:C(yl),id:wl.optional(),error:w({code:P().int(),message:p(),data:ne().optional()})}).strict();var sO=(e)=>kg.safeParse(e).success;var bl=ee([rO,nO,vg,kg]),Cwe=ee([vg,kg]),Xn=Xe.strict(),wJ=Mt.extend({requestId:wl.optional(),reason:p().optional()}),_l=qt.extend({method:C("notifications/cancelled"),params:wJ}),bJ=w({src:p(),mimeType:p().optional(),sizes:v(p()).optional(),theme:z(["light","dark"]).optional()}),ia=w({icons:v(bJ).optional()}),Xo=w({name:p(),title:p().optional()}),iO=Xo.extend({...Xo.shape,...ia.shape,version:p(),websiteUrl:p().optional(),description:p().optional()}),_J=hc(w({applyDefaults:L().optional()}),K(p(),ne())),SJ=yc((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},hc(w({form:_J.optional(),url:Ue.optional()}),K(p(),ne()).optional())),vJ=fe({list:Ue.optional(),cancel:Ue.optional(),requests:fe({sampling:fe({createMessage:Ue.optional()}).optional(),elicitation:fe({create:Ue.optional()}).optional()}).optional()}),kJ=fe({list:Ue.optional(),cancel:Ue.optional(),requests:fe({tools:fe({call:Ue.optional()}).optional()}).optional()}),xJ=w({experimental:K(p(),Ue).optional(),sampling:w({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:SJ.optional(),roots:w({listChanged:L().optional()}).optional(),tasks:vJ.optional(),extensions:K(p(),Ue).optional()}),$J=Tt.extend({protocolVersion:p(),capabilities:xJ,clientInfo:iO}),TJ=Ye.extend({method:C("initialize"),params:$J});var EJ=w({experimental:K(p(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:w({listChanged:L().optional()}).optional(),resources:w({subscribe:L().optional(),listChanged:L().optional()}).optional(),tools:w({listChanged:L().optional()}).optional(),tasks:kJ.optional(),extensions:K(p(),Ue).optional()}),xg=Xe.extend({protocolVersion:p(),capabilities:EJ,serverInfo:iO,instructions:p().optional()}),aO=qt.extend({method:C("notifications/initialized"),params:Mt.optional()}),cO=(e)=>aO.safeParse(e).success,Sl=Ye.extend({method:C("ping"),params:Tt.optional()}),PJ=w({progress:P(),total:Te(P()),message:Te(p())}),OJ=w({...Mt.shape,...PJ.shape,progressToken:QP}),vl=qt.extend({method:C("notifications/progress"),params:OJ}),IJ=Tt.extend({cursor:eO.optional()}),aa=Ye.extend({params:IJ.optional()}),ca=Xe.extend({nextCursor:eO.optional()}),AJ=z(["working","input_required","completed","failed","cancelled"]),ua=w({taskId:p(),status:AJ,ttl:ee([P(),wo()]),createdAt:p(),lastUpdatedAt:p(),pollInterval:Te(P()),statusMessage:Te(p())}),Qn=Xe.extend({task:ua}),RJ=Mt.merge(ua),la=qt.extend({method:C("notifications/tasks/status"),params:RJ}),kl=Ye.extend({method:C("tasks/get"),params:Tt.extend({taskId:p()})}),xl=Xe.merge(ua),$l=Ye.extend({method:C("tasks/result"),params:Tt.extend({taskId:p()})}),zwe=Xe.loose(),Tl=aa.extend({method:C("tasks/list")}),El=ca.extend({tasks:v(ua)}),Pl=Ye.extend({method:C("tasks/cancel"),params:Tt.extend({taskId:p()})}),uO=Xe.merge(ua),lO=w({uri:p(),mimeType:Te(p()),_meta:K(p(),ne()).optional()}),dO=lO.extend({text:p()}),$g=p().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),pO=lO.extend({blob:$g}),da=z(["user","assistant"]),es=w({audience:v(da).optional(),priority:P().min(0).max(1).optional(),lastModified:xk({offset:!0}).optional()}),fO=w({...Xo.shape,...ia.shape,uri:p(),description:Te(p()),mimeType:Te(p()),size:Te(P()),annotations:es.optional(),_meta:Te(fe({}))}),CJ=w({...Xo.shape,...ia.shape,uriTemplate:p(),description:Te(p()),mimeType:Te(p()),annotations:es.optional(),_meta:Te(fe({}))}),zJ=aa.extend({method:C("resources/list")}),Tg=ca.extend({resources:v(fO)}),NJ=aa.extend({method:C("resources/templates/list")}),Eg=ca.extend({resourceTemplates:v(CJ)}),Pg=Tt.extend({uri:p()}),LJ=Pg,jJ=Ye.extend({method:C("resources/read"),params:LJ}),Og=Xe.extend({contents:v(ee([dO,pO]))}),Ig=qt.extend({method:C("notifications/resources/list_changed"),params:Mt.optional()}),DJ=Pg,MJ=Ye.extend({method:C("resources/subscribe"),params:DJ}),qJ=Pg,FJ=Ye.extend({method:C("resources/unsubscribe"),params:qJ}),UJ=Mt.extend({uri:p()}),WJ=qt.extend({method:C("notifications/resources/updated"),params:UJ}),VJ=w({name:p(),description:Te(p()),required:Te(L())}),ZJ=w({...Xo.shape,...ia.shape,description:Te(p()),arguments:Te(v(VJ)),_meta:Te(fe({}))}),BJ=aa.extend({method:C("prompts/list")}),Ag=ca.extend({prompts:v(ZJ)}),KJ=Tt.extend({name:p(),arguments:K(p(),p()).optional()}),HJ=Ye.extend({method:C("prompts/get"),params:KJ}),Rg=w({type:C("text"),text:p(),annotations:es.optional(),_meta:K(p(),ne()).optional()}),Cg=w({type:C("image"),data:$g,mimeType:p(),annotations:es.optional(),_meta:K(p(),ne()).optional()}),zg=w({type:C("audio"),data:$g,mimeType:p(),annotations:es.optional(),_meta:K(p(),ne()).optional()}),GJ=w({type:C("tool_use"),name:p(),id:p(),input:K(p(),ne()),_meta:K(p(),ne()).optional()}),JJ=w({type:C("resource"),resource:ee([dO,pO]),annotations:es.optional(),_meta:K(p(),ne()).optional()}),YJ=fO.extend({type:C("resource_link")}),Ng=ee([Rg,Cg,zg,YJ,JJ]),XJ=w({role:da,content:Ng}),Lg=Xe.extend({description:p().optional(),messages:v(XJ)}),jg=qt.extend({method:C("notifications/prompts/list_changed"),params:Mt.optional()}),QJ=w({title:p().optional(),readOnlyHint:L().optional(),destructiveHint:L().optional(),idempotentHint:L().optional(),openWorldHint:L().optional()}),e6=w({taskSupport:z(["required","optional","forbidden"]).optional()}),mO=w({...Xo.shape,...ia.shape,description:p().optional(),inputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:v(p()).optional()}).catchall(ne()),outputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:v(p()).optional()}).catchall(ne()).optional(),annotations:QJ.optional(),execution:e6.optional(),_meta:K(p(),ne()).optional()}),t6=aa.extend({method:C("tools/list")}),Dg=ca.extend({tools:v(mO)}),Cr=Xe.extend({content:v(Ng).default([]),structuredContent:K(p(),ne()).optional(),isError:L().optional()}),Nwe=Cr.or(Xe.extend({toolResult:ne()})),r6=oa.extend({name:p(),arguments:K(p(),ne()).optional()}),n6=Ye.extend({method:C("tools/call"),params:r6}),Mg=qt.extend({method:C("notifications/tools/list_changed"),params:Mt.optional()}),hO=w({autoRefresh:L().default(!0),debounceMs:P().int().nonnegative().default(300)}),gO=z(["debug","info","notice","warning","error","critical","alert","emergency"]),o6=Tt.extend({level:gO}),s6=Ye.extend({method:C("logging/setLevel"),params:o6}),i6=Mt.extend({level:gO,logger:p().optional(),data:ne()}),a6=qt.extend({method:C("notifications/message"),params:i6}),c6=w({name:p().optional()}),u6=w({hints:v(c6).optional(),costPriority:P().min(0).max(1).optional(),speedPriority:P().min(0).max(1).optional(),intelligencePriority:P().min(0).max(1).optional()}),l6=w({mode:z(["auto","required","none"]).optional()}),d6=w({type:C("tool_result"),toolUseId:p().describe("The unique identifier for the corresponding tool call."),content:v(Ng).default([]),structuredContent:w({}).loose().optional(),isError:L().optional(),_meta:K(p(),ne()).optional()}),p6=At("type",[Rg,Cg,zg]),gl=At("type",[Rg,Cg,zg,GJ,d6]),f6=w({role:da,content:ee([gl,v(gl)]),_meta:K(p(),ne()).optional()}),m6=oa.extend({messages:v(f6),modelPreferences:u6.optional(),systemPrompt:p().optional(),includeContext:z(["none","thisServer","allServers"]).optional(),temperature:P().optional(),maxTokens:P().int(),stopSequences:v(p()).optional(),metadata:Ue.optional(),tools:v(mO).optional(),toolChoice:l6.optional()}),qg=Ye.extend({method:C("sampling/createMessage"),params:m6}),Fg=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens"]).or(p())),role:da,content:p6}),Ug=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens","toolUse"]).or(p())),role:da,content:ee([gl,v(gl)])}),h6=w({type:C("boolean"),title:p().optional(),description:p().optional(),default:L().optional()}),g6=w({type:C("string"),title:p().optional(),description:p().optional(),minLength:P().optional(),maxLength:P().optional(),format:z(["email","uri","date","date-time"]).optional(),default:p().optional()}),y6=w({type:z(["number","integer"]),title:p().optional(),description:p().optional(),minimum:P().optional(),maximum:P().optional(),default:P().optional()}),w6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:v(p()),default:p().optional()}),b6=w({type:C("string"),title:p().optional(),description:p().optional(),oneOf:v(w({const:p(),title:p()})),default:p().optional()}),_6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:v(p()),enumNames:v(p()).optional(),default:p().optional()}),S6=ee([w6,b6]),v6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({type:C("string"),enum:v(p())}),default:v(p()).optional()}),k6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({anyOf:v(w({const:p(),title:p()}))}),default:v(p()).optional()}),x6=ee([v6,k6]),$6=ee([_6,S6,x6]),T6=ee([$6,h6,g6,y6]),E6=oa.extend({mode:C("form").optional(),message:p(),requestedSchema:w({type:C("object"),properties:K(p(),T6),required:v(p()).optional()})}),P6=oa.extend({mode:C("url"),message:p(),elicitationId:p(),url:p().url()}),O6=ee([E6,P6]),Wg=Ye.extend({method:C("elicitation/create"),params:O6}),I6=Mt.extend({elicitationId:p()}),A6=qt.extend({method:C("notifications/elicitation/complete"),params:I6}),Vg=Xe.extend({action:z(["accept","decline","cancel"]),content:yc((e)=>e===null?void 0:e,K(p(),ee([p(),P(),L(),v(p())])).optional())}),R6=w({type:C("ref/resource"),uri:p()});var C6=w({type:C("ref/prompt"),name:p()}),z6=Tt.extend({ref:ee([C6,R6]),argument:w({name:p(),value:p()}),context:w({arguments:K(p(),p()).optional()}).optional()}),N6=Ye.extend({method:C("completion/complete"),params:z6});var Zg=Xe.extend({completion:fe({values:v(p()).max(100),total:Te(P().int()),hasMore:Te(L())})}),L6=w({uri:p().startsWith("file://"),name:p().optional(),_meta:K(p(),ne()).optional()}),j6=Ye.extend({method:C("roots/list"),params:Tt.optional()}),D6=Xe.extend({roots:v(L6)}),M6=qt.extend({method:C("notifications/roots/list_changed"),params:Mt.optional()}),Lwe=ee([Sl,TJ,N6,s6,HJ,BJ,zJ,NJ,jJ,MJ,FJ,n6,t6,kl,$l,Tl,Pl]),jwe=ee([_l,vl,aO,M6,la]),Dwe=ee([Xn,Fg,Ug,Vg,D6,xl,El,Qn]),Mwe=ee([Sl,qg,Wg,j6,kl,$l,Tl,Pl]),qwe=ee([_l,vl,a6,WJ,Ig,Mg,jg,la,A6]),Fwe=ee([Xn,xg,Zg,Lg,Ag,Tg,Eg,Og,Cr,Dg,xl,El,Qn]);class Z extends Error{constructor(e,t,r){super(`MCP error ${e}: ${t}`);this.code=e,this.data=r,this.name="McpError"}static fromError(e,t,r){if(e===G.UrlElicitationRequired&&r){let n=r;if(n.elicitations)return new yO(n.elicitations,t)}return new Z(e,t,r)}}class yO extends Z{constructor(e,t=`URL elicitation${e.length>1?"s":""} required`){super(G.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}function ln(e){return e==="completed"||e==="failed"||e==="cancelled"}var q6=Symbol("Let zodToJsonSchema decide on which parser to use");var _be=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Bg(e){let r=ml(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=hl(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function Kg(e,t){let r=Xt(e,t);if(!r.success)throw r.error;return r.data}var B6=60000;class Hg{constructor(e){if(this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(_l,(t)=>{this._oncancel(t)}),this.setNotificationHandler(vl,(t)=>{this._onprogress(t)}),this.setRequestHandler(Sl,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(kl,async(t,r)=>{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(G.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler($l,async(t,r)=>{let n=async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new Z(G.InvalidParams,`Task not found: ${o}`);if(this._taskMessageQueue){let i;while(i=await this._taskMessageQueue.dequeue(o,r.sessionId)){if(i.type==="response"||i.type==="error"){let a=i.message,c=a.id,u=this._requestResolvers.get(c);if(u)if(this._requestResolvers.delete(c),i.type==="response")u(a);else{let l=a,d=new Z(l.error.code,l.error.message,l.error.data);u(d)}else{let l=i.type==="response"?"Response":"Error";this._onerror(Error(`${l} handler missing for request ${c}`))}continue}await this._transport?.send(i.message,{relatedRequestId:r.requestId})}}let s=await this._taskStore.getTask(o,r.sessionId);if(!s)throw new Z(G.InvalidParams,`Task not found: ${o}`);if(!ln(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(ln(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[un]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(Tl,async(t,r)=>{try{let{tasks:n,nextCursor:o}=await this._taskStore.listTasks(t.params?.cursor,r.sessionId);return{tasks:n,nextCursor:o,_meta:{}}}catch(n){throw new Z(G.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(Pl,async(t,r)=>{try{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(G.InvalidParams,`Task not found: ${t.params.taskId}`);if(ln(n.status))throw new Z(G.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(t.params.taskId,"cancelled","Client cancelled task execution.",r.sessionId),this._clearTaskQueue(t.params.taskId,r.sessionId);let o=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!o)throw new Z(G.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(n){if(n instanceof Z)throw n;throw new Z(G.InvalidRequest,`Failed to cancel task: ${n instanceof Error?n.message:String(n)}`)}})}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,r,n,o=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(n,t),startTime:Date.now(),timeout:t,maxTotalTimeout:r,resetTimeoutOnProgress:o,onTimeout:n})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let r=Date.now()-t.startTime;if(t.maxTotalTimeout&&r>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),Z.fromError(G.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:r});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);if(t)clearTimeout(t.timeoutId),this._timeoutInfo.delete(e)}async connect(e){if(this._transport)throw Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let r=this.transport?.onerror;this._transport.onerror=(o)=>{r?.(o),this._onerror(o)};let n=this._transport?.onmessage;this._transport.onmessage=(o,s)=>{if(n?.(o,s),Yn(o)||sO(o))this._onresponse(o);else if(sa(o))this._onrequest(o,s);else if(oO(o))this._onnotification(o);else this._onerror(Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let r of this._timeoutInfo.values())clearTimeout(r.timeoutId);this._timeoutInfo.clear();for(let r of this._requestHandlerAbortControllers.values())r.abort();this._requestHandlerAbortControllers.clear();let t=Z.fromError(G.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let r of e.values())r(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;if(t===void 0)return;Promise.resolve().then(()=>t(e)).catch((r)=>this._onerror(Error(`Uncaught error in notification handler: ${r}`)))}_onrequest(e,t){let r=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,n=this._transport,o=e.params?._meta?.[un]?.taskId,s=n?.sessionId,i=this._taskStore,a=!0,c;if(o&&i&&this._taskMessageQueue&&s!==void 0)a=!1,c=(async()=>{if(!await i.getTask(o,s))throw new Z(G.InvalidParams,`Task not found: ${o}`);a=!0})();if(r===void 0){let m={jsonrpc:"2.0",id:e.id,error:{code:G.MethodNotFound,message:"Method not found"}};if(o&&c){let h={type:"error",message:m,timestamp:Date.now()};c.then(()=>this._enqueueTaskMessage(o,h,s),()=>n?.send(m)).catch((g)=>this._onerror(Error(`Failed to send an error response: ${g}`)))}else if(o&&this._taskMessageQueue)this._enqueueTaskMessage(o,{type:"error",message:m,timestamp:Date.now()},n?.sessionId).catch((h)=>this._onerror(Error(`Failed to enqueue error response: ${h}`)));else n?.send(m).catch((h)=>this._onerror(Error(`Failed to send an error response: ${h}`)));return}let u=new AbortController;this._requestHandlerAbortControllers.set(e.id,u);let l=tO(e.params)?e.params.task:void 0,d=this._taskStore?this.requestTaskStore(e,n?.sessionId):void 0,f={signal:u.signal,sessionId:n?.sessionId,_meta:e.params?._meta,sendNotification:async(m)=>{if(u.signal.aborted)return;let h={relatedRequestId:e.id};if(o)h.relatedTask={taskId:o};await this.notification(m,h)},sendRequest:async(m,h,g)=>{if(u.signal.aborted)throw new Z(G.ConnectionClosed,"Request was cancelled");let y={...g,relatedRequestId:e.id};if(o&&!y.relatedTask)y.relatedTask={taskId:o};let b=y.relatedTask?.taskId??o;if(b&&d)await d.updateTaskStatus(b,"input_required");return await this.request(m,h,y)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:o,taskStore:d,taskRequestedTtl:l?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};(c??Promise.resolve()).then(()=>{if(c&&u.signal.aborted)throw new Z(G.ConnectionClosed,"Request was cancelled");if(l)this.assertTaskHandlerCapability(e.method)}).then(()=>r(e,f)).then(async(m)=>{if(u.signal.aborted)return;let h={result:m,jsonrpc:"2.0",id:e.id};if(o&&this._taskMessageQueue)await this._enqueueTaskMessage(o,{type:"response",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)},async(m)=>{if(u.signal.aborted)return;let h={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(m.code)?m.code:G.InternalError,message:m.message??"Internal error",...m.data!==void 0&&{data:m.data}}};if(o&&this._taskMessageQueue&&a)await this._enqueueTaskMessage(o,{type:"error",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)}).catch((m)=>this._onerror(Error(`Failed to send response: ${m}`))).finally(()=>{if(this._requestHandlerAbortControllers.get(e.id)===u)this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...r}=e.params,n=Number(t),o=this._progressHandlers.get(n);if(!o){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let s=this._responseHandlers.get(n),i=this._timeoutInfo.get(n);if(i&&s&&i.resetTimeoutOnProgress)try{this._resetTimeout(n)}catch(a){this._responseHandlers.delete(n),this._progressHandlers.delete(n),this._cleanupTimeout(n),s(a);return}o(r)}_onresponse(e){let t=Number(e.id),r=this._requestResolvers.get(t);if(r){if(this._requestResolvers.delete(t),Yn(e))r(e);else{let s=new Z(e.error.code,e.error.message,e.error.data);r(s)}return}let n=this._responseHandlers.get(t);if(n===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let o=!1;if(Yn(e)&&e.result&&typeof e.result==="object"){let s=e.result;if(s.task&&typeof s.task==="object"){let i=s.task;if(typeof i.taskId==="string")o=!0,this._taskProgressTokens.set(i.taskId,t)}}if(!o)this._progressHandlers.delete(t);if(Yn(e))n(e);else{let s=Z.fromError(e.error.code,e.error.message,e.error.data);n(s)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,r){let{task:n}=r??{};if(!n){try{yield{type:"result",result:await this.request(e,t,r)}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(G.InternalError,String(s))}}return}let o;try{let s=await this.request(e,Qn,r);if(s.task)o=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new Z(G.InternalError,"Task creation did not return a task");while(!0){let i=await this.getTask({taskId:o},r);if(yield{type:"taskStatus",task:i},ln(i.status)){if(i.status==="completed")yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};else if(i.status==="failed")yield{type:"error",error:new Z(G.InternalError,`Task ${o} failed`)};else if(i.status==="cancelled")yield{type:"error",error:new Z(G.InternalError,`Task ${o} was cancelled`)};return}if(i.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};return}let a=i.pollInterval??this._options?.defaultTaskPollInterval??1000;await new Promise((c)=>setTimeout(c,a)),r?.signal?.throwIfAborted()}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(G.InternalError,String(s))}}}request(e,t,r){let{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s,task:i,relatedTask:a}=r??{};return new Promise((c,u)=>{let l=(b)=>{u(b)};if(!this._transport){l(Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{if(this.assertCapabilityForMethod(e.method),i)this.assertTaskCapability(e.method)}catch(b){l(b);return}r?.signal?.throwIfAborted();let d=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:d};if(r?.onprogress)this._progressHandlers.set(d,r.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}};if(i)f.params={...f.params,task:i};if(a)f.params={...f.params,_meta:{...f.params?._meta||{},[un]:a}};let m=(b)=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(b)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((k)=>this._onerror(Error(`Failed to send cancellation: ${k}`)));let T=b instanceof Z?b:new Z(G.RequestTimeout,String(b));u(T)};this._responseHandlers.set(d,(b)=>{if(r?.signal?.aborted)return;if(b instanceof Error)return u(b);try{let T=Xt(t,b.result);if(!T.success)u(T.error);else c(T.data)}catch(T){u(T)}}),r?.signal?.addEventListener("abort",()=>{m(r?.signal?.reason)});let h=r?.timeout??B6,g=()=>m(Z.fromError(G.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(d,h,r?.maxTotalTimeout,g,r?.resetTimeoutOnProgress??!1);let y=a?.taskId;if(y){let b=(T)=>{let k=this._responseHandlers.get(d);if(k)k(T);else this._onerror(Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,b),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch((T)=>{this._cleanupTimeout(d),u(T)})}else this._transport.send(f,{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((b)=>{this._cleanupTimeout(d),u(b)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},xl,t)}async getTaskResult(e,t,r){return this.request({method:"tasks/result",params:e},t,r)}async listTasks(e,t){return this.request({method:"tasks/list",params:e},El,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},uO,t)}async notification(e,t){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(e.method);let r=t?.relatedTask?.taskId;if(r){let i={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[un]:t.relatedTask}}};await this._enqueueTaskMessage(r,{type:"notification",message:i,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let i={...e,jsonrpc:"2.0"};if(t?.relatedTask)i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[un]:t.relatedTask}}};this._transport?.send(i,t).catch((a)=>this._onerror(a))});return}let s={...e,jsonrpc:"2.0"};if(t?.relatedTask)s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[un]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=Bg(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=Kg(e,n);return Promise.resolve(t(s,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let r=Bg(e);this._notificationHandlers.set(r,(n)=>{let o=Kg(e,n);return Promise.resolve(t(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);if(t!==void 0)this._progressHandlers.delete(t),this._taskProgressTokens.delete(e)}async _enqueueTaskMessage(e,t,r){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,r??this._transport?.sessionId,n)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let r=await this._taskMessageQueue.dequeueAll(e,t);for(let n of r)if(n.type==="request"&&sa(n.message)){let o=n.message.id,s=this._requestResolvers.get(o);if(s)s(new Z(G.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o);else this._onerror(Error(`Resolver missing for request ${o} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t,r){let n=this._options?.defaultTaskPollInterval??1000;try{let o=await this._taskStore?.getTask(e,r);if(o?.pollInterval)n=o.pollInterval}catch{}return new Promise((o,s)=>{if(t.aborted){s(new Z(G.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);t.addEventListener("abort",()=>{clearTimeout(i),s(new Z(G.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,t){let r=this._taskStore;if(!r)throw Error("No task store configured");return{createTask:async(n)=>{if(!e)throw Error("No request provided");return await r.createTask(n,e.id,{method:e.method,params:e.params},t)},getTask:async(n)=>{let o=await r.getTask(n,t);if(!o)throw new Z(G.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(n,o,s)=>{await r.storeTaskResult(n,o,s,t);let i=await r.getTask(n,t);if(i){let a=la.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),ln(i.status))this._cleanupTaskProgressHandler(n)}},getTaskResult:(n)=>r.getTaskResult(n,t),updateTaskStatus:async(n,o,s)=>{let i=await r.getTask(n,t);if(!i)throw new Z(G.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(ln(i.status))throw new Z(G.InvalidParams,`Cannot update task "${n}" from terminal status "${i.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await r.updateTaskStatus(n,o,s,t);let a=await r.getTask(n,t);if(a){let c=la.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),ln(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function wO(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function bO(e,t){let r={...e};for(let n in t){let o=n,s=t[o];if(s===void 0)continue;let i=r[o];if(wO(i)&&wO(s))r[o]={...i,...s};else r[o]=s}return r}var v1=Rn(Ry(),1),k1=Rn(S1(),1);function Ate(){let e=new v1.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return k1.default(e),e}class Fy{constructor(e){this._ajv=e??Ate()}getValidator(e){let t="$id"in e&&typeof e.$id==="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return(r)=>{if(t(r))return{valid:!0,data:r,errorMessage:void 0};else return{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(t.errors)}}}}class Uy{constructor(e){this._client=e}async*callToolStream(e,t=Cr,r){let n=this._client,o={...r,task:r?.task??(n.isToolTask(e.name)?{}:void 0)},s=n.requestStream({method:"tools/call",params:e},t,o),i=n.getToolOutputValidator(e.name);for await(let a of s){if(a.type==="result"&&i){let c=a.result;if(!c.structuredContent&&!c.isError){yield{type:"error",error:new Z(G.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(c.structuredContent)try{let u=i(c.structuredContent);if(!u.valid){yield{type:"error",error:new Z(G.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof Z){yield{type:"error",error:u};return}yield{type:"error",error:new Z(G.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};return}}yield a}}async getTask(e,t){return this._client.getTask({taskId:e},t)}async getTaskResult(e,t,r){return this._client.getTaskResult({taskId:e},t,r)}async listTasks(e,t){return this._client.listTasks(e?{cursor:e}:void 0,t)}async cancelTask(e,t){return this._client.cancelTask({taskId:e},t)}requestStream(e,t,r){return this._client.requestStream(e,t,r)}}function x1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function $1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}function gd(e,t){if(!e||t===null||typeof t!=="object")return;if(e.type==="object"&&e.properties&&typeof e.properties==="object"){let r=t,n=e.properties;for(let o of Object.keys(n)){let s=n[o];if(r[o]===void 0&&Object.prototype.hasOwnProperty.call(s,"default"))r[o]=s.default;if(r[o]!==void 0)gd(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")gd(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")gd(r,t)}}function Rte(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}class Wy extends Hg{constructor(e,t){super(t);if(this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=t?.capabilities??{},this._jsonSchemaValidator=t?.jsonSchemaValidator??new Fy,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",Mg,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",jg,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",Ig,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new Uy(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=bO(this._capabilities,e)}setRequestHandler(e,t){let n=ml(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=hl(n);if(typeof o!=="string")throw Error("Schema method literal must be a string");let s=o;if(s==="elicitation/create"){let i=async(a,c)=>{let u=Xt(Wg,a);if(!u.success){let b=u.error instanceof Error?u.error.message:String(u.error);throw new Z(G.InvalidParams,`Invalid elicitation request: ${b}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:d,supportsUrlMode:f}=Rte(this._capabilities.elicitation);if(l.mode==="form"&&!d)throw new Z(G.InvalidParams,"Client does not support form-mode elicitation requests");if(l.mode==="url"&&!f)throw new Z(G.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(t(a,c));if(l.task){let b=Xt(Qn,m);if(!b.success){let T=b.error instanceof Error?b.error.message:String(b.error);throw new Z(G.InvalidParams,`Invalid task creation result: ${T}`)}return b.data}let h=Xt(Vg,m);if(!h.success){let b=h.error instanceof Error?h.error.message:String(h.error);throw new Z(G.InvalidParams,`Invalid elicitation result: ${b}`)}let g=h.data,y=l.mode==="form"?l.requestedSchema:void 0;if(l.mode==="form"&&g.action==="accept"&&g.content&&y){if(this._capabilities.elicitation?.form?.applyDefaults)try{gd(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Xt(qg,a);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new Z(G.InvalidParams,`Invalid sampling request: ${g}`)}let{params:l}=u.data,d=await Promise.resolve(t(a,c));if(l.task){let g=Xt(Qn,d);if(!g.success){let y=g.error instanceof Error?g.error.message:String(g.error);throw new Z(G.InvalidParams,`Invalid task creation result: ${y}`)}return g.data}let m=l.tools||l.toolChoice?Ug:Fg,h=Xt(m,d);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new Z(G.InvalidParams,`Invalid sampling result: ${g}`)}return h.data};return super.setRequestHandler(e,i)}return super.setRequestHandler(e,t)}assertCapability(e,t){if(!this._serverCapabilities?.[e])throw Error(`Server does not support ${e} (required for ${t})`)}async connect(e,t){if(await super.connect(e),e.sessionId!==void 0)return;try{let r=await this.request({method:"initialize",params:{protocolVersion:Qo,capabilities:this._capabilities,clientInfo:this._clientInfo}},xg,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!XP.includes(r.protocolVersion))throw Error(`Server's protocol version is not supported: ${r.protocolVersion}`);if(this._serverCapabilities=r.capabilities,this._serverVersion=r.serverInfo,e.setProtocolVersion)e.setProtocolVersion(r.protocolVersion);if(this._instructions=r.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig)this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0}catch(r){throw this.close(),r}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(!this._capabilities)return;switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){x1(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;$1(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Xn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},Zg,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Xn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},Lg,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},Ag,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},Tg,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},Eg,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},Og,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Xn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Xn,t)}async callTool(e,t=Cr,r){if(this.isToolTaskRequired(e.name))throw new Z(G.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let n=await this.request({method:"tools/call",params:e},t,r),o=this.getToolOutputValidator(e.name);if(o){if(!n.structuredContent&&!n.isError)throw new Z(G.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(n.structuredContent)try{let s=o(n.structuredContent);if(!s.valid)throw new Z(G.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){if(s instanceof Z)throw s;throw new Z(G.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)}}return n}isToolTask(e){if(!this._serverCapabilities?.tasks?.requests?.tools?.call)return!1;return this._cachedKnownTaskTools.has(e)}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let t of e){if(t.outputSchema){let n=this._jsonSchemaValidator.getValidator(t.outputSchema);this._cachedToolOutputValidators.set(t.name,n)}let r=t.execution?.taskSupport;if(r==="required"||r==="optional")this._cachedKnownTaskTools.add(t.name);if(r==="required")this._cachedRequiredTaskTools.add(t.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,t){let r=await this.request({method:"tools/list",params:e},Dg,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=hO.safeParse(r);if(!o.success)throw Error(`Invalid ${e} listChanged options: ${o.error.message}`);if(typeof r.onChanged!=="function")throw Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:i}=o.data,{onChanged:a}=r,c=async()=>{if(!s){a(null,null);return}try{let l=await n();a(null,l)}catch(l){let d=l instanceof Error?l:Error(String(l));a(d,null)}},u=()=>{if(i){let l=this._listChangedDebounceTimers.get(e);if(l)clearTimeout(l);let d=setTimeout(c,i);this._listChangedDebounceTimers.set(e,d)}else c()};this.setNotificationHandler(t,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}/*!
|
|
549
549
|
* content-type
|
|
550
550
|
* Copyright(c) 2015 Douglas Christopher Wilson
|
|
551
551
|
* MIT Licensed
|
|
552
|
-
*/var v1=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var $te=/\\([\u000b\u0020-\u00ff])/g;var Tte=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var S1=Ete;function Ete(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?Pte(e):e;if(typeof t!=="string")throw TypeError("argument string is required to be a string");var r=t.indexOf(";"),n=r!==-1?t.slice(0,r).trim():t.trim();if(!Tte.test(n))throw TypeError("invalid media type");var o=new Ote(n.toLowerCase());if(r!==-1){var s,i,a;v1.lastIndex=r;while(i=v1.exec(t)){if(i.index!==r)throw TypeError("invalid parameter format");if(r+=i[0].length,s=i[1].toLowerCase(),a=i[2],a.charCodeAt(0)===34){if(a=a.slice(1,-1),a.indexOf("\\")!==-1)a=a.replace($te,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function Pte(e){var t;if(typeof e.getHeader==="function")t=e.getHeader("content-type");else if(typeof e.headers==="object")t=e.headers&&e.headers["content-type"];if(typeof t!=="string")throw TypeError("content-type header is missing from object");return t}function Ote(e){this.parameters=Object.create(null),this.type=e}function k1(e){if(!e)return;try{return S1(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function fd(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function x1(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...fd(t.headers),...fd(n.headers)}:t.headers};return e(r,o)}}var Ate=5,Rte=[301,302,303,307,308];function Cte(e,t){if(e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port)return!0;return e.hostname===t.hostname&&e.protocol==="http:"&&e.port===""&&t.protocol==="https:"&&t.port===""}function $1(e,t){let r=Rte.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function md(e,t,r,n,o=0){let s=$1(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===Ate||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!Cte(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>md(e,s,r,u,o+1)??u)}var T1=new WeakSet;function Dy(e){let t=(r,n)=>(e??fetch)(r,n);return T1.add(t),t}function no(e=fetch){if(T1.has(e))return e;return(t,r)=>{if(r?.redirect==="error"||r?.redirect==="manual")return e(t,r);return Promise.resolve(e(t,{...r,redirect:"manual"})).then((n)=>md(e,t,r,n)??n)}}function hd(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=$1(e,r);if(!n)return;if(n.username=n.password=n.search=n.hash="",n.protocol==="http:"&&new URL(r).protocol==="https:")return n.protocol="https:",`Redirect to plain http not followed; try ${n.href} instead`;return`Redirect to ${n.href} not followed`}var My;My=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function zte(e){return(await My).getRandomValues(new Uint8Array(e))}async function Nte(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await zte(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function Lte(e){return await Nte(e)}async function jte(e){let t=await(await My).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function qy(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await Lte(e),r=await jte(t);return{code_verifier:t,code_challenge:r}}var et=Ks().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:yk.custom,message:"URL must be parseable",fatal:!0}),rp}).refine((e)=>{let t=new URL(e);return t.protocol!=="javascript:"&&t.protocol!=="data:"&&t.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),P1=ve({resource:p().url(),authorization_servers:k(et).optional(),jwks_uri:p().url().optional(),scopes_supported:k(p()).optional(),bearer_methods_supported:k(p()).optional(),resource_signing_alg_values_supported:k(p()).optional(),resource_name:p().optional(),resource_documentation:p().optional(),resource_policy_uri:p().url().optional(),resource_tos_uri:p().url().optional(),tls_client_certificate_bound_access_tokens:D().optional(),authorization_details_types_supported:k(p()).optional(),dpop_signing_alg_values_supported:k(p()).optional(),dpop_bound_access_tokens_required:D().optional()}),Fy=ve({issuer:p(),authorization_endpoint:et,token_endpoint:et,registration_endpoint:et.optional(),scopes_supported:k(p()).optional(),response_types_supported:k(p()),response_modes_supported:k(p()).optional(),grant_types_supported:k(p()).optional(),token_endpoint_auth_methods_supported:k(p()).optional(),token_endpoint_auth_signing_alg_values_supported:k(p()).optional(),service_documentation:et.optional(),revocation_endpoint:et.optional(),revocation_endpoint_auth_methods_supported:k(p()).optional(),revocation_endpoint_auth_signing_alg_values_supported:k(p()).optional(),introspection_endpoint:p().optional(),introspection_endpoint_auth_methods_supported:k(p()).optional(),introspection_endpoint_auth_signing_alg_values_supported:k(p()).optional(),code_challenge_methods_supported:k(p()).optional(),client_id_metadata_document_supported:D().optional()}),Dte=ve({issuer:p(),authorization_endpoint:et,token_endpoint:et,userinfo_endpoint:et.optional(),jwks_uri:et,registration_endpoint:et.optional(),scopes_supported:k(p()).optional(),response_types_supported:k(p()),response_modes_supported:k(p()).optional(),grant_types_supported:k(p()).optional(),acr_values_supported:k(p()).optional(),subject_types_supported:k(p()),id_token_signing_alg_values_supported:k(p()),id_token_encryption_alg_values_supported:k(p()).optional(),id_token_encryption_enc_values_supported:k(p()).optional(),userinfo_signing_alg_values_supported:k(p()).optional(),userinfo_encryption_alg_values_supported:k(p()).optional(),userinfo_encryption_enc_values_supported:k(p()).optional(),request_object_signing_alg_values_supported:k(p()).optional(),request_object_encryption_alg_values_supported:k(p()).optional(),request_object_encryption_enc_values_supported:k(p()).optional(),token_endpoint_auth_methods_supported:k(p()).optional(),token_endpoint_auth_signing_alg_values_supported:k(p()).optional(),display_values_supported:k(p()).optional(),claim_types_supported:k(p()).optional(),claims_supported:k(p()).optional(),service_documentation:p().optional(),claims_locales_supported:k(p()).optional(),ui_locales_supported:k(p()).optional(),claims_parameter_supported:D().optional(),request_parameter_supported:D().optional(),request_uri_parameter_supported:D().optional(),require_request_uri_registration:D().optional(),op_policy_uri:et.optional(),op_tos_uri:et.optional(),client_id_metadata_document_supported:D().optional()}),O1=w({...Dte.shape,...Fy.pick({code_challenge_methods_supported:!0}).shape}),I1=w({access_token:p(),id_token:p().optional(),token_type:p(),expires_in:Aj().optional(),scope:p().optional(),refresh_token:p().optional(),issuer:p().optional().catch(void 0)}).strip(),A1=w({error:p(),error_description:p().optional(),error_uri:p().optional()}),E1=et.optional().or(C("").transform(()=>{return})),Mte=w({redirect_uris:k(et),token_endpoint_auth_method:p().optional(),grant_types:k(p()).optional(),response_types:k(p()).optional(),client_name:p().optional(),client_uri:et.optional(),logo_uri:E1,scope:p().optional(),contacts:k(p()).optional(),tos_uri:E1,policy_uri:p().optional(),jwks_uri:et.optional(),jwks:uk().optional(),software_id:p().optional(),software_version:p().optional(),software_statement:p().optional()}).strip(),qte=w({client_id:p(),client_secret:p().optional(),client_id_issued_at:P().optional(),client_secret_expires_at:P().optional(),issuer:p().optional().catch(void 0)}).strip(),R1=Mte.merge(qte),Dke=w({error:p(),error_description:p().optional()}).strip(),Mke=w({token:p(),token_type_hint:p().optional()}).strip();function C1(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function z1({requestedResource:e,configuredResource:t}){let r=typeof e==="string"?new URL(e):new URL(e.href),n=typeof t==="string"?new URL(t):new URL(t.href);if(r.origin!==n.origin)return!1;if(r.pathname.length<n.pathname.length)return!1;let o=r.pathname.endsWith("/")?r.pathname:r.pathname+"/",s=n.pathname.endsWith("/")?n.pathname:n.pathname+"/";return o.startsWith(s)}class De extends Error{constructor(e,t){super(e);this.errorUri=t,this.name=this.constructor.name}toResponseObject(){let e={error:this.errorCode,error_description:this.message};if(this.errorUri)e.error_uri=this.errorUri;return e}get errorCode(){return this.constructor.errorCode}}class gd extends De{}gd.errorCode="invalid_request";class bs extends De{}bs.errorCode="invalid_client";class _s extends De{}_s.errorCode="invalid_grant";class vs extends De{}vs.errorCode="unauthorized_client";class yd extends De{}yd.errorCode="unsupported_grant_type";class wd extends De{}wd.errorCode="invalid_scope";class bd extends De{}bd.errorCode="access_denied";class Pn extends De{}Pn.errorCode="server_error";class _d extends De{}_d.errorCode="temporarily_unavailable";class vd extends De{}vd.errorCode="unsupported_response_type";class Sd extends De{}Sd.errorCode="unsupported_token_type";class kd extends De{}kd.errorCode="invalid_token";class xd extends De{}xd.errorCode="method_not_allowed";class $d extends De{}$d.errorCode="too_many_requests";class Ss extends De{}Ss.errorCode="invalid_client_metadata";class Td extends De{}Td.errorCode="insufficient_scope";class Ed extends De{}Ed.errorCode="invalid_target";var N1={[gd.errorCode]:gd,[bs.errorCode]:bs,[_s.errorCode]:_s,[vs.errorCode]:vs,[yd.errorCode]:yd,[wd.errorCode]:wd,[bd.errorCode]:bd,[Pn.errorCode]:Pn,[_d.errorCode]:_d,[vd.errorCode]:vd,[Sd.errorCode]:Sd,[kd.errorCode]:kd,[xd.errorCode]:xd,[$d.errorCode]:$d,[Ss.errorCode]:Ss,[Td.errorCode]:Td,[Ed.errorCode]:Ed};class On extends Error{constructor(e){super(e??"Unauthorized")}}function Fte(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var Uy="code",Wy="S256";function Ute(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Fte(e.token_endpoint_auth_method)&&(t.length===0||t.includes(e.token_endpoint_auth_method)))return e.token_endpoint_auth_method;if(t.length===0)return r?"client_secret_basic":"none";if(r&&t.includes("client_secret_basic"))return"client_secret_basic";if(r&&t.includes("client_secret_post"))return"client_secret_post";if(t.includes("none"))return"none";return r?"client_secret_post":"none"}function Wte(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":Vte(o,s,r);return;case"client_secret_post":Zte(o,s,n);return;case"none":Bte(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function Vte(e,t,r){if(!t)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${e}:${t}`);r.set("Authorization",`Basic ${n}`)}function Zte(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function Bte(e,t){t.set("client_id",e)}async function j1(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=A1.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(N1[o]||Pn)(s||"",i)}catch(n){let o=e instanceof Response?hd(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new Pn(s)}}function Kte(e,t){let[r,n]=[e,t];try{[r,n]=[new URL(e).href,new URL(t).href]}catch{}return r===n||r.endsWith("/")&&r.slice(0,-1)===n||n.endsWith("/")&&n.slice(0,-1)===r}function By(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return Kte(e.issuer,t)?e:void 0}var Hte=I1.omit({issuer:!0}),Gte=R1.omit({issuer:!0});function D1(e,t){return Error(`OAuth client information is bound to authorization server ${e.issuer} and is not presented to ${t}. Clear the stored client information, or correct \`expectedIssuer\`, if the authorization server has moved.`)}async function ka(e,t){try{return await Vy(e,t)}catch(r){if(r instanceof bs||r instanceof vs)return await e.invalidateCredentials?.("all"),await Vy(e,t);else if(r instanceof _s)return await e.invalidateCredentials?.("tokens"),await Vy(e,t);throw r}}async function Vy(e,{serverUrl:t,authorizationCode:r,scope:n,resourceMetadataUrl:o,fetchFn:s}){let i=await e.discoveryState?.(),a,c,u,l=o;if(!l&&i?.resourceMetadataUrl)l=new URL(i.resourceMetadataUrl);if(i?.authorizationServerUrl){if(c=i.authorizationServerUrl,a=i.resourceMetadata,u=i.authorizationServerMetadata??await q1(c,{fetchFn:s}),!a)try{a=await M1(t,{resourceMetadataUrl:l},s)}catch{}if(u!==i.authorizationServerMetadata||a!==i.resourceMetadata)await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}else{let j=await rre(t,{resourceMetadataUrl:l,fetchFn:s});c=j.authorizationServerUrl,u=j.authorizationServerMetadata,a=j.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}let d=String(c),f=await Yte(t,e,a),m=f&&a&&!e.validateResourceURL?a.resource:f,h=n||a?.scopes_supported?.join(" ")||e.clientMetadata.scope,g=await Promise.resolve(e.clientInformation()),y=By(g,d),b=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!b)throw D1(g,d);let T=y?.issuer==null?y:void 0,S=async()=>{try{if(T)await e.saveClientInformation?.({...T,issuer:d})}catch{}};if(!y){if(r!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let j=u?.client_id_metadata_document_supported===!0,Y=e.clientMetadataUrl;if(Y&&!Jte(Y))throw new Ss(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${Y}`);if(j&&Y)y={client_id:Y,issuer:d},await e.saveClientInformation?.(y);else{if(!e.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");y={...await are(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:d},await e.saveClientInformation(y)}}let I=!e.redirectUrl;if(r!==void 0||I){let j=await ire(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await S(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}let _=By(await e.tokens(),d);if(_?.refresh_token&&_.issuer==null)console.warn("[mcp-sdk] stored OAuth tokens have no 'issuer' property (saved by an earlier version, or by a provider that does not keep it) and are used as-is; make sure your OAuthClientProvider stores what saveTokens() and saveClientInformation() receive unchanged.");if(_?.refresh_token)try{let j=await sre(c,{metadata:u,clientInformation:y,refreshToken:_.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await S(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}catch(j){if(!(j instanceof De)||j instanceof Pn);else throw j}let v=e.state?await e.state():void 0,{authorizationUrl:x,codeVerifier:A}=await nre(c,{metadata:u,clientInformation:y,state:v,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(A),await e.redirectToAuthorization(x),"REDIRECT"}function Jte(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function Yte(e,t,r){let n=C1(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!z1({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function Ky(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Zy(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Zy(e,"scope")||void 0,a=Zy(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Zy(e,t){let r=e.headers.get("WWW-Authenticate");if(!r)return null;let n=new RegExp(`${t}=(?:"([^"]+)"|([^\\s,]+))`),o=r.match(n);if(o)return o[1]||o[2];return null}async function M1(e,t,r=fetch){let n=await ere(e,"oauth-protected-resource",r,{protocolVersion:t?.protocolVersion,metadataUrl:t?.resourceMetadataUrl});if(!n||n.status===404)throw await n?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!n.ok)throw await n.body?.cancel(),Error(`HTTP ${n.status} trying to load well-known OAuth protected resource metadata.`);return P1.parse(await n.json())}async function Hy(e,t,r=fetch){try{return await no(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return Hy(e,void 0,r);else return;throw n}}function Xte(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function L1(e,t,r=fetch){return await Hy(e,{"MCP-Protocol-Version":t},r)}function Qte(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function ere(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??Jo,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=Xte(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await L1(i,s,r);if(!n?.metadataUrl&&Qte(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await L1(c,s,r)}return a}function tre(e){let t=typeof e==="string"?new URL(e):e,r=t.pathname!=="/",n=[];if(!r)return n.push({url:new URL("/.well-known/oauth-authorization-server",t.origin),type:"oauth"}),n.push({url:new URL("/.well-known/openid-configuration",t.origin),type:"oidc"}),n;let o=t.pathname;if(o.endsWith("/"))o=o.slice(0,-1);return n.push({url:new URL(`/.well-known/oauth-authorization-server${o}`,t.origin),type:"oauth"}),n.push({url:new URL(`/.well-known/openid-configuration${o}`,t.origin),type:"oidc"}),n.push({url:new URL(`${o}/.well-known/openid-configuration`,t.origin),type:"oidc"}),n}async function q1(e,{fetchFn:t=fetch,protocolVersion:r=Jo}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=tre(e);for(let{url:s,type:i}of o){let a=await Hy(s,n,t);if(!a)continue;if(!a.ok){if(await a.body?.cancel(),a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${i==="oauth"?"OAuth":"OpenID provider"} metadata from ${s}`)}if(i==="oauth")return Fy.parse(await a.json());else return O1.parse(await a.json())}return}async function rre(e,t){let r,n;try{if(r=await M1(e,{resourceMetadataUrl:t?.resourceMetadataUrl},t?.fetchFn),r.authorization_servers&&r.authorization_servers.length>0)n=r.authorization_servers[0]}catch{}if(!n)n=String(new URL("/",e));let o=await q1(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function F1(e){return typeof e==="string"?e:e.href}async function nre(e,{metadata:t,clientInformation:r,redirectUrl:n,scope:o,state:s,resource:i}){let a;if(t){if(a=new URL(t.authorization_endpoint),!t.response_types_supported.includes(Uy))throw Error(`Incompatible auth server: does not support response type ${Uy}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(Wy))throw Error(`Incompatible auth server: does not support code challenge method ${Wy}`)}else a=new URL("/authorize",e);let c=await qy(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",Uy),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",Wy),a.searchParams.set("redirect_uri",String(n)),s)a.searchParams.set("state",s);if(o)a.searchParams.set("scope",o);if(o?.includes("offline_access"))a.searchParams.append("prompt","consent");if(i)a.searchParams.set("resource",F1(i));return{authorizationUrl:a,codeVerifier:u}}function ore(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function U1(e,{metadata:t,tokenRequestParams:r,clientInformation:n,addClientAuthentication:o,resource:s,fetchFn:i}){let a=t?.token_endpoint?new URL(t.token_endpoint):new URL("/token",e),c=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(s)r.set("resource",F1(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],d=Ute(n,l);Wte(d,n,c,r)}let u=await no(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await j1(u);return Hte.parse(await u.json())}async function sre(e,{metadata:t,clientInformation:r,refreshToken:n,resource:o,addClientAuthentication:s,fetchFn:i}){let a=new URLSearchParams({grant_type:"refresh_token",refresh_token:n}),c=await U1(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function ire(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),d=By(l,String(t));if(l&&!d)throw D1(l,String(t));return d},a=await i(),c=e.clientMetadata.scope,u;if(e.prepareTokenRequest)u=await e.prepareTokenRequest(c);if(!u){if(!o)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!e.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");let l=await e.codeVerifier();u=ore(o,l,e.redirectUrl)}return a??(a=await i()),U1(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function are(e,{metadata:t,clientMetadata:r,scope:n,fetchFn:o}){let s;if(t){if(!t.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");s=new URL(t.registration_endpoint)}else s=new URL("/register",e);let i=await no(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await j1(i);return Gte.parse(await i.json())}class Pd extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}var W1=10,cre=13,oo=32;function Gy(e){}function B1(e){if(typeof e=="function")throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=Gy,onError:r=Gy,onRetry:n=Gy,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",d=0,f,m=!1;function h(_){if(m)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,_.charCodeAt(0)===239&&_.charCodeAt(1)===187&&_.charCodeAt(2)===191&&(_=_.slice(3))),i.length===0){let A=y(_);A!==""&&(i.push(A),a=A.length),g();return}if(_.indexOf(`
|
|
553
|
-
`)===-1&&_.indexOf("\r")===-1){i.push(_),a+=_.length,g();return}i.push(_);let
|
|
554
|
-
`,
|
|
555
|
-
`,
|
|
556
|
-
`,
|
|
557
|
-
${Y}`,d++}else
|
|
558
|
-
`,
|
|
559
|
-
`,
|
|
560
|
-
${oe}`,d++;return}if(
|
|
561
|
-
${
|
|
562
|
-
`),u=a.structuredContent?
|
|
552
|
+
*/var T1=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var Cte=/\\([\u000b\u0020-\u00ff])/g;var zte=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var E1=Nte;function Nte(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?Lte(e):e;if(typeof t!=="string")throw TypeError("argument string is required to be a string");var r=t.indexOf(";"),n=r!==-1?t.slice(0,r).trim():t.trim();if(!zte.test(n))throw TypeError("invalid media type");var o=new jte(n.toLowerCase());if(r!==-1){var s,i,a;T1.lastIndex=r;while(i=T1.exec(t)){if(i.index!==r)throw TypeError("invalid parameter format");if(r+=i[0].length,s=i[1].toLowerCase(),a=i[2],a.charCodeAt(0)===34){if(a=a.slice(1,-1),a.indexOf("\\")!==-1)a=a.replace(Cte,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function Lte(e){var t;if(typeof e.getHeader==="function")t=e.getHeader("content-type");else if(typeof e.headers==="object")t=e.headers&&e.headers["content-type"];if(typeof t!=="string")throw TypeError("content-type header is missing from object");return t}function jte(e){this.parameters=Object.create(null),this.type=e}function P1(e){if(!e)return;try{return E1(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function yd(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function O1(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...yd(t.headers),...yd(n.headers)}:t.headers};return e(r,o)}}var Mte=5,qte=[301,302,303,307,308];function Fte(e,t){if(e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port)return!0;return e.hostname===t.hostname&&e.protocol==="http:"&&e.port===""&&t.protocol==="https:"&&t.port===""}function I1(e,t){let r=qte.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function wd(e,t,r,n,o=0){let s=I1(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===Mte||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!Fte(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>wd(e,s,r,u,o+1)??u)}var A1=new WeakSet;function Vy(e){let t=(r,n)=>(e??fetch)(r,n);return A1.add(t),t}function so(e=fetch){if(A1.has(e))return e;return(t,r)=>{if(r?.redirect==="error"||r?.redirect==="manual")return e(t,r);return Promise.resolve(e(t,{...r,redirect:"manual"})).then((n)=>wd(e,t,r,n)??n)}}function bd(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=I1(e,r);if(!n)return;if(n.username=n.password=n.search=n.hash="",n.protocol==="http:"&&new URL(r).protocol==="https:")return n.protocol="https:",`Redirect to plain http not followed; try ${n.href} instead`;return`Redirect to ${n.href} not followed`}var Zy;Zy=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function Ute(e){return(await Zy).getRandomValues(new Uint8Array(e))}async function Wte(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await Ute(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function Vte(e){return await Wte(e)}async function Zte(e){let t=await(await Zy).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function By(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await Vte(e),r=await Zte(t);return{code_verifier:t,code_challenge:r}}var et=Js().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:kk.custom,message:"URL must be parseable",fatal:!0}),ip}).refine((e)=>{let t=new URL(e);return t.protocol!=="javascript:"&&t.protocol!=="data:"&&t.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),C1=fe({resource:p().url(),authorization_servers:v(et).optional(),jwks_uri:p().url().optional(),scopes_supported:v(p()).optional(),bearer_methods_supported:v(p()).optional(),resource_signing_alg_values_supported:v(p()).optional(),resource_name:p().optional(),resource_documentation:p().optional(),resource_policy_uri:p().url().optional(),resource_tos_uri:p().url().optional(),tls_client_certificate_bound_access_tokens:L().optional(),authorization_details_types_supported:v(p()).optional(),dpop_signing_alg_values_supported:v(p()).optional(),dpop_bound_access_tokens_required:L().optional()}),Ky=fe({issuer:p(),authorization_endpoint:et,token_endpoint:et,registration_endpoint:et.optional(),scopes_supported:v(p()).optional(),response_types_supported:v(p()),response_modes_supported:v(p()).optional(),grant_types_supported:v(p()).optional(),token_endpoint_auth_methods_supported:v(p()).optional(),token_endpoint_auth_signing_alg_values_supported:v(p()).optional(),service_documentation:et.optional(),revocation_endpoint:et.optional(),revocation_endpoint_auth_methods_supported:v(p()).optional(),revocation_endpoint_auth_signing_alg_values_supported:v(p()).optional(),introspection_endpoint:p().optional(),introspection_endpoint_auth_methods_supported:v(p()).optional(),introspection_endpoint_auth_signing_alg_values_supported:v(p()).optional(),code_challenge_methods_supported:v(p()).optional(),client_id_metadata_document_supported:L().optional()}),Bte=fe({issuer:p(),authorization_endpoint:et,token_endpoint:et,userinfo_endpoint:et.optional(),jwks_uri:et,registration_endpoint:et.optional(),scopes_supported:v(p()).optional(),response_types_supported:v(p()),response_modes_supported:v(p()).optional(),grant_types_supported:v(p()).optional(),acr_values_supported:v(p()).optional(),subject_types_supported:v(p()),id_token_signing_alg_values_supported:v(p()),id_token_encryption_alg_values_supported:v(p()).optional(),id_token_encryption_enc_values_supported:v(p()).optional(),userinfo_signing_alg_values_supported:v(p()).optional(),userinfo_encryption_alg_values_supported:v(p()).optional(),userinfo_encryption_enc_values_supported:v(p()).optional(),request_object_signing_alg_values_supported:v(p()).optional(),request_object_encryption_alg_values_supported:v(p()).optional(),request_object_encryption_enc_values_supported:v(p()).optional(),token_endpoint_auth_methods_supported:v(p()).optional(),token_endpoint_auth_signing_alg_values_supported:v(p()).optional(),display_values_supported:v(p()).optional(),claim_types_supported:v(p()).optional(),claims_supported:v(p()).optional(),service_documentation:p().optional(),claims_locales_supported:v(p()).optional(),ui_locales_supported:v(p()).optional(),claims_parameter_supported:L().optional(),request_parameter_supported:L().optional(),request_uri_parameter_supported:L().optional(),require_request_uri_registration:L().optional(),op_policy_uri:et.optional(),op_tos_uri:et.optional(),client_id_metadata_document_supported:L().optional()}),z1=w({...Bte.shape,...Ky.pick({code_challenge_methods_supported:!0}).shape}),N1=w({access_token:p(),id_token:p().optional(),token_type:p(),expires_in:Lj().optional(),scope:p().optional(),refresh_token:p().optional(),issuer:p().optional().catch(void 0)}).strip(),L1=w({error:p(),error_description:p().optional(),error_uri:p().optional()}),R1=et.optional().or(C("").transform(()=>{return})),Kte=w({redirect_uris:v(et),token_endpoint_auth_method:p().optional(),grant_types:v(p()).optional(),response_types:v(p()).optional(),client_name:p().optional(),client_uri:et.optional(),logo_uri:R1,scope:p().optional(),contacts:v(p()).optional(),tos_uri:R1,policy_uri:p().optional(),jwks_uri:et.optional(),jwks:hk().optional(),software_id:p().optional(),software_version:p().optional(),software_statement:p().optional()}).strip(),Hte=w({client_id:p(),client_secret:p().optional(),client_id_issued_at:P().optional(),client_secret_expires_at:P().optional(),issuer:p().optional().catch(void 0)}).strip(),j1=Kte.merge(Hte),_xe=w({error:p(),error_description:p().optional()}).strip(),Sxe=w({token:p(),token_type_hint:p().optional()}).strip();function D1(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function M1({requestedResource:e,configuredResource:t}){let r=typeof e==="string"?new URL(e):new URL(e.href),n=typeof t==="string"?new URL(t):new URL(t.href);if(r.origin!==n.origin)return!1;if(r.pathname.length<n.pathname.length)return!1;let o=r.pathname.endsWith("/")?r.pathname:r.pathname+"/",s=n.pathname.endsWith("/")?n.pathname:n.pathname+"/";return o.startsWith(s)}class Me extends Error{constructor(e,t){super(e);this.errorUri=t,this.name=this.constructor.name}toResponseObject(){let e={error:this.errorCode,error_description:this.message};if(this.errorUri)e.error_uri=this.errorUri;return e}get errorCode(){return this.constructor.errorCode}}class _d extends Me{}_d.errorCode="invalid_request";class vs extends Me{}vs.errorCode="invalid_client";class ks extends Me{}ks.errorCode="invalid_grant";class xs extends Me{}xs.errorCode="unauthorized_client";class Sd extends Me{}Sd.errorCode="unsupported_grant_type";class vd extends Me{}vd.errorCode="invalid_scope";class kd extends Me{}kd.errorCode="access_denied";class In extends Me{}In.errorCode="server_error";class xd extends Me{}xd.errorCode="temporarily_unavailable";class $d extends Me{}$d.errorCode="unsupported_response_type";class Td extends Me{}Td.errorCode="unsupported_token_type";class Ed extends Me{}Ed.errorCode="invalid_token";class Pd extends Me{}Pd.errorCode="method_not_allowed";class Od extends Me{}Od.errorCode="too_many_requests";class $s extends Me{}$s.errorCode="invalid_client_metadata";class Id extends Me{}Id.errorCode="insufficient_scope";class Ad extends Me{}Ad.errorCode="invalid_target";var q1={[_d.errorCode]:_d,[vs.errorCode]:vs,[ks.errorCode]:ks,[xs.errorCode]:xs,[Sd.errorCode]:Sd,[vd.errorCode]:vd,[kd.errorCode]:kd,[In.errorCode]:In,[xd.errorCode]:xd,[$d.errorCode]:$d,[Td.errorCode]:Td,[Ed.errorCode]:Ed,[Pd.errorCode]:Pd,[Od.errorCode]:Od,[$s.errorCode]:$s,[Id.errorCode]:Id,[Ad.errorCode]:Ad};class An extends Error{constructor(e){super(e??"Unauthorized")}}function Gte(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var Hy="code",Gy="S256";function Jte(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Gte(e.token_endpoint_auth_method)&&(t.length===0||t.includes(e.token_endpoint_auth_method)))return e.token_endpoint_auth_method;if(t.length===0)return r?"client_secret_basic":"none";if(r&&t.includes("client_secret_basic"))return"client_secret_basic";if(r&&t.includes("client_secret_post"))return"client_secret_post";if(t.includes("none"))return"none";return r?"client_secret_post":"none"}function Yte(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":Xte(o,s,r);return;case"client_secret_post":Qte(o,s,n);return;case"none":ere(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function Xte(e,t,r){if(!t)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${e}:${t}`);r.set("Authorization",`Basic ${n}`)}function Qte(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function ere(e,t){t.set("client_id",e)}async function U1(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=L1.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(q1[o]||In)(s||"",i)}catch(n){let o=e instanceof Response?bd(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new In(s)}}function tre(e,t){let[r,n]=[e,t];try{[r,n]=[new URL(e).href,new URL(t).href]}catch{}return r===n||r.endsWith("/")&&r.slice(0,-1)===n||n.endsWith("/")&&n.slice(0,-1)===r}function Xy(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return tre(e.issuer,t)?e:void 0}var rre=N1.omit({issuer:!0}),nre=j1.omit({issuer:!0});function W1(e,t){return Error(`OAuth client information is bound to authorization server ${e.issuer} and is not presented to ${t}. Clear the stored client information, or correct \`expectedIssuer\`, if the authorization server has moved.`)}async function $a(e,t){try{return await Jy(e,t)}catch(r){if(r instanceof vs||r instanceof xs)return await e.invalidateCredentials?.("all"),await Jy(e,t);else if(r instanceof ks)return await e.invalidateCredentials?.("tokens"),await Jy(e,t);throw r}}async function Jy(e,{serverUrl:t,authorizationCode:r,scope:n,resourceMetadataUrl:o,fetchFn:s}){let i=await e.discoveryState?.(),a,c,u,l=o;if(!l&&i?.resourceMetadataUrl)l=new URL(i.resourceMetadataUrl);if(i?.authorizationServerUrl){if(c=i.authorizationServerUrl,a=i.resourceMetadata,u=i.authorizationServerMetadata??await Z1(c,{fetchFn:s}),!a)try{a=await V1(t,{resourceMetadataUrl:l},s)}catch{}if(u!==i.authorizationServerMetadata||a!==i.resourceMetadata)await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}else{let D=await lre(t,{resourceMetadataUrl:l,fetchFn:s});c=D.authorizationServerUrl,u=D.authorizationServerMetadata,a=D.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}let d=String(c),f=await sre(t,e,a),m=f&&a&&!e.validateResourceURL?a.resource:f,h=n||a?.scopes_supported?.join(" ")||e.clientMetadata.scope,g=await Promise.resolve(e.clientInformation()),y=Xy(g,d),b=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!b)throw W1(g,d);let T=y?.issuer==null?y:void 0,k=async()=>{try{if(T)await e.saveClientInformation?.({...T,issuer:d})}catch{}};if(!y){if(r!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let D=u?.client_id_metadata_document_supported===!0,Y=e.clientMetadataUrl;if(Y&&!ore(Y))throw new $s(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${Y}`);if(D&&Y)y={client_id:Y,issuer:d},await e.saveClientInformation?.(y);else{if(!e.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");y={...await hre(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:d},await e.saveClientInformation(y)}}let I=!e.redirectUrl;if(r!==void 0||I){let D=await mre(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await k(),await e.saveTokens({...D,issuer:d}),"AUTHORIZED"}let _=Xy(await e.tokens(),d);if(_?.refresh_token&&_.issuer==null)console.warn("[mcp-sdk] stored OAuth tokens have no 'issuer' property (saved by an earlier version, or by a provider that does not keep it) and are used as-is; make sure your OAuthClientProvider stores what saveTokens() and saveClientInformation() receive unchanged.");if(_?.refresh_token)try{let D=await fre(c,{metadata:u,clientInformation:y,refreshToken:_.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await k(),await e.saveTokens({...D,issuer:d}),"AUTHORIZED"}catch(D){if(!(D instanceof Me)||D instanceof In);else throw D}let S=e.state?await e.state():void 0,{authorizationUrl:x,codeVerifier:A}=await dre(c,{metadata:u,clientInformation:y,state:S,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(A),await e.redirectToAuthorization(x),"REDIRECT"}function ore(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function sre(e,t,r){let n=D1(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!M1({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function Qy(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Yy(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Yy(e,"scope")||void 0,a=Yy(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Yy(e,t){let r=e.headers.get("WWW-Authenticate");if(!r)return null;let n=new RegExp(`${t}=(?:"([^"]+)"|([^\\s,]+))`),o=r.match(n);if(o)return o[1]||o[2];return null}async function V1(e,t,r=fetch){let n=await cre(e,"oauth-protected-resource",r,{protocolVersion:t?.protocolVersion,metadataUrl:t?.resourceMetadataUrl});if(!n||n.status===404)throw await n?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!n.ok)throw await n.body?.cancel(),Error(`HTTP ${n.status} trying to load well-known OAuth protected resource metadata.`);return C1.parse(await n.json())}async function ew(e,t,r=fetch){try{return await so(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return ew(e,void 0,r);else return;throw n}}function ire(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function F1(e,t,r=fetch){return await ew(e,{"MCP-Protocol-Version":t},r)}function are(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function cre(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??Qo,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=ire(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await F1(i,s,r);if(!n?.metadataUrl&&are(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await F1(c,s,r)}return a}function ure(e){let t=typeof e==="string"?new URL(e):e,r=t.pathname!=="/",n=[];if(!r)return n.push({url:new URL("/.well-known/oauth-authorization-server",t.origin),type:"oauth"}),n.push({url:new URL("/.well-known/openid-configuration",t.origin),type:"oidc"}),n;let o=t.pathname;if(o.endsWith("/"))o=o.slice(0,-1);return n.push({url:new URL(`/.well-known/oauth-authorization-server${o}`,t.origin),type:"oauth"}),n.push({url:new URL(`/.well-known/openid-configuration${o}`,t.origin),type:"oidc"}),n.push({url:new URL(`${o}/.well-known/openid-configuration`,t.origin),type:"oidc"}),n}async function Z1(e,{fetchFn:t=fetch,protocolVersion:r=Qo}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=ure(e);for(let{url:s,type:i}of o){let a=await ew(s,n,t);if(!a)continue;if(!a.ok){if(await a.body?.cancel(),a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${i==="oauth"?"OAuth":"OpenID provider"} metadata from ${s}`)}if(i==="oauth")return Ky.parse(await a.json());else return z1.parse(await a.json())}return}async function lre(e,t){let r,n;try{if(r=await V1(e,{resourceMetadataUrl:t?.resourceMetadataUrl},t?.fetchFn),r.authorization_servers&&r.authorization_servers.length>0)n=r.authorization_servers[0]}catch{}if(!n)n=String(new URL("/",e));let o=await Z1(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function B1(e){return typeof e==="string"?e:e.href}async function dre(e,{metadata:t,clientInformation:r,redirectUrl:n,scope:o,state:s,resource:i}){let a;if(t){if(a=new URL(t.authorization_endpoint),!t.response_types_supported.includes(Hy))throw Error(`Incompatible auth server: does not support response type ${Hy}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(Gy))throw Error(`Incompatible auth server: does not support code challenge method ${Gy}`)}else a=new URL("/authorize",e);let c=await By(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",Hy),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",Gy),a.searchParams.set("redirect_uri",String(n)),s)a.searchParams.set("state",s);if(o)a.searchParams.set("scope",o);if(o?.includes("offline_access"))a.searchParams.append("prompt","consent");if(i)a.searchParams.set("resource",B1(i));return{authorizationUrl:a,codeVerifier:u}}function pre(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function K1(e,{metadata:t,tokenRequestParams:r,clientInformation:n,addClientAuthentication:o,resource:s,fetchFn:i}){let a=t?.token_endpoint?new URL(t.token_endpoint):new URL("/token",e),c=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(s)r.set("resource",B1(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],d=Jte(n,l);Yte(d,n,c,r)}let u=await so(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await U1(u);return rre.parse(await u.json())}async function fre(e,{metadata:t,clientInformation:r,refreshToken:n,resource:o,addClientAuthentication:s,fetchFn:i}){let a=new URLSearchParams({grant_type:"refresh_token",refresh_token:n}),c=await K1(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function mre(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),d=Xy(l,String(t));if(l&&!d)throw W1(l,String(t));return d},a=await i(),c=e.clientMetadata.scope,u;if(e.prepareTokenRequest)u=await e.prepareTokenRequest(c);if(!u){if(!o)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!e.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");let l=await e.codeVerifier();u=pre(o,l,e.redirectUrl)}return a??(a=await i()),K1(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function hre(e,{metadata:t,clientMetadata:r,scope:n,fetchFn:o}){let s;if(t){if(!t.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");s=new URL(t.registration_endpoint)}else s=new URL("/register",e);let i=await so(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await U1(i);return nre.parse(await i.json())}class Rd extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}var H1=10,gre=13,io=32;function tw(e){}function Y1(e){if(typeof e=="function")throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=tw,onError:r=tw,onRetry:n=tw,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",d=0,f,m=!1;function h(_){if(m)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,_.charCodeAt(0)===239&&_.charCodeAt(1)===187&&_.charCodeAt(2)===191&&(_=_.slice(3))),i.length===0){let A=y(_);A!==""&&(i.push(A),a=A.length),g();return}if(_.indexOf(`
|
|
553
|
+
`)===-1&&_.indexOf("\r")===-1){i.push(_),a+=_.length,g();return}i.push(_);let S=i.join("");i.length=0,a=0;let x=y(S);x!==""&&(i.push(x),a=x.length),g()}function g(){s!==void 0&&(a+l.length<=s||(m=!0,i.length=0,a=0,u=void 0,l="",d=0,f=void 0,r(new Rd(`Buffered data exceeded max buffer size of ${s} characters`,{type:"max-buffer-size-exceeded"}))))}function y(_){let S=0;if(_.indexOf("\r")===-1){let x=_.indexOf(`
|
|
554
|
+
`,S);for(;x!==-1;){if(S===x){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0,S=x+1,x=_.indexOf(`
|
|
555
|
+
`,S);continue}let A=_.charCodeAt(S);if(G1(_,S,A)){let D=_.charCodeAt(S+5)===io?S+6:S+5,Y=_.slice(D,x);if(d===0&&_.charCodeAt(x+1)===H1){t({id:u,event:f,data:Y}),u=void 0,l="",f=void 0,S=x+2,x=_.indexOf(`
|
|
556
|
+
`,S);continue}l=d===0?Y:`${l}
|
|
557
|
+
${Y}`,d++}else J1(_,S,A)?f=_.slice(_.charCodeAt(S+6)===io?S+7:S+6,x)||void 0:b(_,S,x);S=x+1,x=_.indexOf(`
|
|
558
|
+
`,S)}return _.slice(S)}for(;S<_.length;){let x=_.indexOf("\r",S),A=_.indexOf(`
|
|
559
|
+
`,S),D=-1;if(x!==-1&&A!==-1?D=x<A?x:A:x!==-1?x===_.length-1?D=-1:D=x:A!==-1&&(D=A),D===-1)break;b(_,S,D),S=D+1,_.charCodeAt(S-1)===gre&&_.charCodeAt(S)===H1&&S++}return _.slice(S)}function b(_,S,x){if(S===x){k();return}let A=_.charCodeAt(S);if(G1(_,S,A)){let W=_.charCodeAt(S+5)===io?S+6:S+5,oe=_.slice(W,x);l=d===0?oe:`${l}
|
|
560
|
+
${oe}`,d++;return}if(J1(_,S,A)){f=_.slice(_.charCodeAt(S+6)===io?S+7:S+6,x)||void 0;return}if(A===105&&_.charCodeAt(S+1)===100&&_.charCodeAt(S+2)===58){let W=_.slice(_.charCodeAt(S+3)===io?S+4:S+3,x);u=W.includes("\x00")?void 0:W;return}if(A===58){if(o){let W=_.slice(S,x);o(W.slice(_.charCodeAt(S+1)===io?2:1))}return}let D=_.slice(S,x),Y=D.indexOf(":");if(Y===-1){T(D,"",D);return}let ie=D.slice(0,Y),ae=D.charCodeAt(Y+1)===io?2:1,qe=D.slice(Y+ae);T(ie,qe,D)}function T(_,S,x){switch(_){case"event":f=S||void 0;break;case"data":l=d===0?S:`${l}
|
|
561
|
+
${S}`,d++;break;case"id":u=S.includes("\x00")?void 0:S;break;case"retry":/^\d+$/.test(S)?n(parseInt(S,10)):r(new Rd(`Invalid \`retry\` value: "${S}"`,{type:"invalid-retry",value:S,line:x}));break;default:r(new Rd(`Unknown field "${_.length>20?`${_.slice(0,20)}…`:_}"`,{type:"unknown-field",field:_,value:S,line:x}));break}}function k(){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0}function I(_={}){if(_.consume&&i.length>0){let S=i.join("");b(S,0,S.length)}c=!0,u=void 0,l="",d=0,f=void 0,i.length=0,a=0,m=!1}return{feed:h,reset:I}}function G1(e,t,r){return r===100&&e.charCodeAt(t+1)===97&&e.charCodeAt(t+2)===116&&e.charCodeAt(t+3)===97&&e.charCodeAt(t+4)===58}function J1(e,t,r){return r===101&&e.charCodeAt(t+1)===118&&e.charCodeAt(t+2)===101&&e.charCodeAt(t+3)===110&&e.charCodeAt(t+4)===116&&e.charCodeAt(t+5)===58}class rw extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:n}={}){let o;super({start(s){o=Y1({onEvent:(i)=>{s.enqueue(i)},onError(i){typeof e=="function"&&e(i),(e==="terminate"||i.type==="max-buffer-size-exceeded")&&s.error(i)},onRetry:t,onComment:r,maxBufferSize:n})},transform(s){o.feed(s)}})}}var yre={initialReconnectionDelay:1000,maxReconnectionDelay:30000,reconnectionDelayGrowFactor:1.5,maxRetries:2};class Dr extends Error{constructor(e,t){super(`Streamable HTTP error: ${t}`);this.code=e}}class nw{constructor(e,t){if(this._hasCompletedAuthFlow=!1,this._url=e,this._resourceMetadataUrl=void 0,this._scope=void 0,this._requestInit=t?.requestInit,this._authProvider=t?.authProvider,this._fetch=t?.fetch,this._fetchWithInit=O1(t?.fetch,t?.requestInit),this._followRedirects=t?.redirectPolicy==="follow",this._followRedirects)this._fetch=Vy(this._fetch),this._fetchWithInit=Vy(this._fetchWithInit);this._sessionId=t?.sessionId,this._reconnectionOptions=t?.reconnectionOptions??yre}_unfollowedRedirect(e,t){let r=bd(e,t);return r&&!this._followRedirects?`${r} (redirectPolicy: 'same-origin')`:r}async _authThenStart(){if(!this._authProvider)throw new An("No auth provider");let e;try{e=await $a(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(t){throw this.onerror?.(t),t}if(e!=="AUTHORIZED")throw new An;return await this._startOrAuthSse({resumptionToken:void 0})}async _commonHeaders(){let e={};if(this._authProvider){let r=await this._authProvider.tokens();if(r)e.Authorization=`Bearer ${r.access_token}`}if(this._sessionId)e["mcp-session-id"]=this._sessionId;if(this._protocolVersion)e["mcp-protocol-version"]=this._protocolVersion;let t=yd(this._requestInit?.headers);return new Headers({...e,...t})}async _startOrAuthSse(e){let{resumptionToken:t}=e;try{let r=await this._commonHeaders();if(r.set("Accept","text/event-stream"),t)r.set("last-event-id",t);let n=this._fetch??fetch,o={method:"GET",headers:r,signal:this._abortController?.signal},s=await n(this._url,this._followRedirects?o:{...o,redirect:"manual"}),i=this._followRedirects?void 0:wd(n,this._url,o,s);if(i)s=await i;if(!s.ok){if(await s.body?.cancel(),s.status===401&&this._authProvider)return await this._authThenStart();if(s.status===405)return;throw new Dr(s.status,`Failed to open SSE stream: ${this._unfollowedRedirect(s,this._url)??s.statusText}`)}this._handleSseStream(s.body,e,!0)}catch(r){throw this.onerror?.(r),r}}_getNextReconnectionDelay(e){if(this._serverRetryMs!==void 0)return this._serverRetryMs;let t=this._reconnectionOptions.initialReconnectionDelay,r=this._reconnectionOptions.reconnectionDelayGrowFactor,n=this._reconnectionOptions.maxReconnectionDelay;return Math.min(t*Math.pow(r,e),n)}_scheduleReconnection(e,t=0){let r=this._reconnectionOptions.maxRetries;if(t>=r){this.onerror?.(Error(`Maximum reconnection attempts (${r}) exceeded.`));return}let n=this._getNextReconnectionDelay(t);this._reconnectionTimeout=setTimeout(()=>{this._startOrAuthSse(e).catch((o)=>{this.onerror?.(Error(`Failed to reconnect SSE stream: ${o instanceof Error?o.message:String(o)}`)),this._scheduleReconnection(e,t+1)})},n)}_handleSseStream(e,t,r){if(!e)return;let{onresumptiontoken:n,replayMessageId:o}=t,s,i=!1,a=!1;(async()=>{try{let u=e.pipeThrough(new TextDecoderStream).pipeThrough(new rw({onRetry:(f)=>{this._serverRetryMs=f}})).getReader();while(!0){let{value:f,done:m}=await u.read();if(m)break;if(f.id)s=f.id,i=!0,n?.(f.id);if(!f.data)continue;if(!f.event||f.event==="message")try{let h=bl.parse(JSON.parse(f.data));if(Yn(h)){if(a=!0,o!==void 0)h.id=o}this.onmessage?.(h)}catch(h){this.onerror?.(h)}}if((r||i)&&!a&&this._abortController&&!this._abortController.signal.aborted)this._scheduleReconnection({resumptionToken:s,onresumptiontoken:n,replayMessageId:o},0)}catch(u){if(this.onerror?.(Error(`SSE stream disconnected: ${u}`)),(r||i)&&!a&&this._abortController&&!this._abortController.signal.aborted)try{this._scheduleReconnection({resumptionToken:s,onresumptiontoken:n,replayMessageId:o},0)}catch(f){this.onerror?.(Error(`Failed to reconnect: ${f instanceof Error?f.message:String(f)}`))}}})()}async start(){if(this._abortController)throw Error("StreamableHTTPClientTransport already started! If using Client class, note that connect() calls start() automatically.");this._abortController=new AbortController}async finishAuth(e){if(!this._authProvider)throw new An("No auth provider");if(await $a(this._authProvider,{serverUrl:this._url,authorizationCode:e,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new An("Failed to authorize")}async close(){if(this._reconnectionTimeout)clearTimeout(this._reconnectionTimeout),this._reconnectionTimeout=void 0;this._abortController?.abort(),this.onclose?.()}async send(e,t){try{let{resumptionToken:r,onresumptiontoken:n}=t||{};if(r){this._startOrAuthSse({resumptionToken:r,replayMessageId:sa(e)?e.id:void 0}).catch((f)=>this.onerror?.(f));return}let o=await this._commonHeaders();o.set("content-type","application/json"),o.set("accept","application/json, text/event-stream");let s={...this._requestInit,method:"POST",headers:o,body:JSON.stringify(e),signal:this._abortController?.signal},i=await so(this._fetch??fetch)(this._url,s),a=i.headers.get("mcp-session-id");if(a)this._sessionId=a;if(!i.ok){let f=await i.text().catch(()=>null);if(i.status===401&&this._authProvider){if(this._hasCompletedAuthFlow)throw new Dr(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:m,scope:h}=Qy(i);if(this._resourceMetadataUrl=m,this._scope=h,await $a(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new An;return this._hasCompletedAuthFlow=!0,this.send(e)}if(i.status===403&&this._authProvider){let{resourceMetadataUrl:m,scope:h,error:g}=Qy(i);if(g==="insufficient_scope"){let y=i.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===y)throw new Dr(403,"Server returned 403 after trying upscoping");if(h)this._scope=h;if(m)this._resourceMetadataUrl=m;if(this._lastUpscopingHeader=y??void 0,await $a(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch})!=="AUTHORIZED")throw new An;return this.send(e)}}throw new Dr(i.status,`Error POSTing to endpoint: ${this._unfollowedRedirect(i,this._url)??f}`)}if(this._hasCompletedAuthFlow=!1,this._lastUpscopingHeader=void 0,i.status===202){if(await i.body?.cancel(),cO(e))this._startOrAuthSse({resumptionToken:void 0}).catch((f)=>this.onerror?.(f));return}let u=(Array.isArray(e)?e:[e]).filter((f)=>("method"in f)&&("id"in f)&&f.id!==void 0).length>0,l=i.headers.get("content-type"),d=P1(l);if(u)if(d==="text/event-stream")this._handleSseStream(i.body,{onresumptiontoken:n},!1);else if(d==="application/json"){let f=await i.json(),m=Array.isArray(f)?f.map((h)=>bl.parse(h)):[bl.parse(f)];for(let h of m)this.onmessage?.(h)}else throw await i.body?.cancel(),new Dr(-1,`Unexpected content type: ${l}`);else await i.body?.cancel()}catch(r){throw this.onerror?.(r),r}}get sessionId(){return this._sessionId}async terminateSession(){if(!this._sessionId)return;try{let e=await this._commonHeaders(),t={...this._requestInit,method:"DELETE",headers:e,signal:this._abortController?.signal},r=await so(this._fetch??fetch)(this._url,t);if(await r.body?.cancel(),!r.ok&&r.status!==405)throw new Dr(r.status,`Failed to terminate session: ${this._unfollowedRedirect(r,this._url)??r.statusText}`);this._sessionId=void 0}catch(e){throw this.onerror?.(e),e}}setProtocolVersion(e){this._protocolVersion=e}get protocolVersion(){return this._protocolVersion}async resumeStream(e,t){await this._startOrAuthSse({resumptionToken:e,onresumptiontoken:t?.onresumptiontoken})}}function wre(e){try{let t=Rt().safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function bre(e){if(e instanceof Dr&&e.code===401)return!0;return/\b401\b|unauthorized/i.test(e.message)}async function Cd(e,t,r,n){let o=new nw(new URL(e.mcpUrl),{requestInit:{headers:{Authorization:`Bearer ${e.token}`}},fetch:n}),s=new Wy({name:"tripwire-cli",version:wc});try{await s.connect(o);let i=await s.callTool({name:t,arguments:r},Cr),a=Cr.parse(i),c=a.content.flatMap((l)=>l.type==="text"?[l.text]:[]).join(`
|
|
562
|
+
`),u=a.structuredContent?Rt().safeParse(a.structuredContent):null;return{isError:a.isError===!0,text:c,data:u?.success?u.data:wre(c)}}catch(i){if(i instanceof Error&&bre(i))throw new na("The Tripwire server rejected the token. Run tripwire login.");throw i}finally{await s.close().catch(()=>{return})}}var se=Rn(nu(),1);import{emitKeypressEvents as _re}from"node:readline";import{stripVTControlCharacters as Sre}from"node:util";var wt=se.default.dim("│"),vre=se.default.dim("─");function ow(e){return e.filter((t)=>t.disabled===void 0)}function kre(e,t){let r=t.toLowerCase();return e.label.toLowerCase().includes(r)||e.value.toLowerCase().includes(r)}function Q1(e,t){return t?e.filter((r)=>kre(r,t)):[...e]}function ez(e,t){let r=ow(e),n=r.filter((o)=>t.has(o.value)).length;if(n===0)return"none";return n===r.length?"all":"partial"}function xre(e,t,r){let n=Q1(e,t.query);if(r.name==="return")return t.selected.size>0?{state:t,done:"submit"}:{state:t};if(r.name==="escape"||r.ctrl&&r.name==="c")return{state:t,done:"cancel"};if(r.name==="up")return{state:{...t,cursor:Math.max(0,t.cursor-1)}};if(r.name==="down")return{state:{...t,cursor:Math.min(n.length,t.cursor+1)}};if(r.name==="space"){let o=new Set(t.selected);if(t.cursor===0){let s=ez(e,o)==="all";for(let i of ow(e))if(s)o.delete(i.value);else o.add(i.value)}else{let s=n[t.cursor-1];if(s&&s.disabled===void 0)if(o.has(s.value))o.delete(s.value);else o.add(s.value)}return{state:{...t,selected:o}}}if(r.name==="backspace")return{state:{...t,query:t.query.slice(0,-1),cursor:0}};if(r.sequence&&r.sequence.length===1&&!r.ctrl&&!r.meta)return{state:{...t,query:t.query+r.sequence,cursor:0}};return{state:t}}function $re(e,t,r){let n=t?se.default.cyan("❯"):" ";if(e.disabled!==void 0){let a=t?se.default.underline(e.label):e.label;return`${wt} ${n} ${se.default.dim(`- ${a} (${e.disabled})`)}`}let o=r.has(e.value)?se.default.green("●"):se.default.dim("○"),s=t?se.default.underline(e.label):e.label,i=e.hint?se.default.dim(` (${e.hint})`):"";return`${wt} ${n} ${o} ${s}${i}`}function X1(e,t){return e.filter((r)=>t.has(r.value)).map((r)=>r.label)}function Tre(e,t,r){let{message:n,items:o,maxVisible:s=8}=e;if(r==="submit")return[`${se.default.green("◇")} ${se.default.bold(n)}`,`${wt} ${se.default.dim(X1(o,t.selected).join(", "))}`];if(r==="cancel")return[`${se.default.red("■")} ${se.default.bold(n)}`,`${wt} ${se.default.strikethrough(se.default.dim("Cancelled"))}`];let i=Q1(o,t.query),a=[`${se.default.green("◆")} ${se.default.bold(n)}`,`${wt} ${se.default.dim("Search:")} ${t.query}${se.default.inverse(" ")}`,`${wt} ${se.default.dim("↑↓ move, space select, enter confirm")}`,wt],c=ow(o),u=c.filter((h)=>t.selected.has(h.value)).length,l=ez(o,t.selected),d=l==="all"?se.default.green("●"):l==="partial"?se.default.yellow("◐"):se.default.dim("○"),f=t.cursor===0;if(a.push(`${wt} ${f?se.default.cyan("❯"):" "} ${d} ${f?se.default.underline(se.default.bold("Select All")):se.default.bold("Select All")} ${se.default.dim(`(${u}/${c.length})`)}`,`${wt} ${vre.repeat(36)}`),i.length===0)a.push(`${wt} ${se.default.dim("No matches found")}`);else{let h=t.cursor-1,g=Math.max(0,Math.min(h-Math.floor(s/2),i.length-s)),y=Math.min(i.length,g+s);i.slice(g,y).forEach((T,k)=>{a.push($re(T,g+k===h,t.selected))});let b=[g>0?`↑ ${g} more`:"",y<i.length?`↓ ${i.length-y} more`:""].filter(Boolean);if(b.length>0)a.push(`${wt} ${se.default.dim(b.join(" "))}`)}let m=X1(o,t.selected);if(a.push(wt),m.length===0)a.push(`${wt} ${se.default.dim("Selected: (none)")}`);else{let h=m.length<=3?m.join(", "):`${m.slice(0,3).join(", ")} +${m.length-3} more`;a.push(`${wt} ${se.default.green("Selected:")} ${h}`)}return a.push(se.default.dim("└")),a}function Ere(e,t){let r=Math.max(1,t);return e.reduce((n,o)=>n+Math.max(1,Math.ceil(Sre(o).length/r)),0)}function tz(e,t,r){return new Promise((n)=>{let o={query:"",cursor:0,selected:new Set(t)},s=0,i=(l)=>{let d=Tre(e,o,l),f=s>0?`\x1B[${s}A\x1B[J`:"";r.write(`${f}${d.join(`
|
|
563
563
|
`)}
|
|
564
|
-
`),s=
|
|
565
|
-
`),r}function
|
|
566
|
-
`)}import{existsSync as
|
|
564
|
+
`),s=Ere(d,r.columns())},a=(l)=>{if(i(l),r.input.off("keypress",c),r.input.off("end",u),r.input.isTTY)r.input.setRawMode?.(!1);r.input.pause(),n(l==="submit"?[...o.selected]:null)},c=(l,d)=>{if(!d)return;let f=xre(e.items,o,d);if(o=f.state,f.done){a(f.done);return}i()},u=()=>a("cancel");if(_re(r.input),r.input.isTTY)r.input.setRawMode?.(!0);r.input.on("keypress",c),r.input.on("end",u),r.input.resume(),i()})}import{existsSync as rz,mkdirSync as Pre,readFileSync as Ore,rmSync as Ire,writeFileSync as Are}from"node:fs";import{dirname as zd,join as Ta,resolve as sw}from"node:path";var nz=Ta(".tripwire","project.json"),Nd=w({org:p().min(1).optional(),repo:p().min(1),workflows:K(p().min(1),p().min(1)).optional()});class Ld extends Error{path;constructor(e){super(`${e} is not a valid Tripwire link. Run tripwire link <repo> to rewrite it.`);this.path=e}}function Rre(e){let t=new Ld(e),r;try{r=Rt().parse(JSON.parse(Ore(e,"utf8")))}catch{throw t}let n=Nd.safeParse(r);if(!n.success)throw t;return n.data}function Ea(e,t){let r=t===void 0?void 0:sw(t),n=sw(e);while(!0){let o=Ta(n,nz);if(rz(o))return{path:o,link:Rre(o)};let s=zd(n);if(n===r||s===n)return null;n=s}}function jd(e,t){let r=Ta(sw(e),nz);Pre(zd(r),{recursive:!0});let n=Nd.parse(t);return Are(r,`${JSON.stringify(n,null,"\t")}
|
|
565
|
+
`),r}function oz(e){Ire(e,{force:!0})}function sz(e,t){let r=e||t?.link.repo;if(!r)throw Error("No repo given. Pass one, or run tripwire link <repo> in this project.");return r}function iz(e,t,r){return e||t||r?.link.org}function iw(e,t){return JSON.stringify(Nd.parse(e))===JSON.stringify(Nd.parse(t))}function aw(e){return Object.fromEntries([...e].map(([t,r])=>[r,t]).sort(([t],[r])=>t.localeCompare(r)))}function az(e,t,r,n){if(!t||!n||rz(Ta(r,e)))return e;return Ta(zd(zd(n.path)),e)}var Cre=new Set(["1","true","yes"]);function cz(e){return e!==void 0&&Cre.has(e.trim().toLowerCase())}function uz(e,t){if(cz(e.TRIPWIRE_NO_BROWSER)||e.BROWSER==="none")return!1;if(cz(e.CI))return!1;let r=Boolean(e.DISPLAY||e.WAYLAND_DISPLAY);if((e.SSH_CONNECTION||e.SSH_TTY)&&!r)return!1;if(t==="darwin"||t==="win32")return!0;return r}var zre=2000,Nre=5;async function lz(e,t){let r=e,n=0;while(r.status==="pending")try{r=await t.read(C0),n=0}catch(o){if(n+=1,n>=Nre)throw o;await t.sleep(zre)}return r}function Lre(e){return`${e} ${e===1?"workflow":"workflows"}`}function cw(e){return`Waiting for someone to accept ${Lre(e.workflows.length)} on ${e.repo}`}function dz(e,t){return ve(e.workflows.map((r)=>[r.outcome??"skipped",[r.name,r.url].filter(Boolean).join(" ")]),t)}function pz(e,t){switch(e.status){case"rejected":return"The push was declined. Nothing was saved.";case"expired":return"The review link expired. Nothing was saved. Push again.";case"stale":return`These workflows changed on the server after the push. Nothing was saved. Run tripwire workflows diff ${t}, then push again.`;default:return"The push was not accepted. Nothing was saved."}}function fz(e,t){return e.map((r)=>cr(`${r.name} was not sent for review. ${r.issues.join(" ")}`,t)).join(`
|
|
566
|
+
`)}import{existsSync as lw,mkdirSync as jre,readFileSync as Dre,writeFileSync as hz}from"node:fs";import{basename as Mre,dirname as dw,join as gz,resolve as Dd}from"node:path";import{pathToFileURL as qre}from"node:url";var Pa="tripwire.ts",Fre=w({typescript:ee([p(),L()]).optional()});function Ure(){if(process.versions.bun)return!0;let e=Fre.safeParse(process.features);return e.success&&Boolean(e.data.typescript)}function yz(e){let t=gz(dw(Dd(e)),Co);return jre(dw(t),{recursive:!0}),hz(t,R0(`/**
|
|
567
567
|
* The \`tripwire.ts\` authoring API. A workflow file default-exports
|
|
568
568
|
* \`workflows({ ... })\`; each entry compiles to one stored WorkflowDefinition.
|
|
569
569
|
*
|
|
@@ -967,15 +967,15 @@ export function authoring<C extends AuthoringCatalog>() {
|
|
|
967
967
|
},
|
|
968
968
|
};
|
|
969
969
|
}
|
|
970
|
-
`)),t}async function
|
|
970
|
+
`)),t}async function Md(e){let t=Dd(e);if(!lw(t))throw Error(`No ${e} here. Run tripwire workflows pull <repo> to start one.`);if(!Ure())throw Error("Loading tripwire.ts needs Node 22.18 or later, or Bun. Run it with bunx @tripwire-sh/cli instead.");let r=gz(dw(t),Co);if(!lw(r))yz(t);let n=`${qre(t).href}?at=${Date.now()}`;return v0(await import(n))}var Wre=w({workflows:v(w({id:p(),appId:p().optional(),name:p().optional(),enabled:L().optional(),definition:lt}))});function pw(e){return Wre.parse(e).workflows.map((t)=>({id:t.id,appId:t.appId,name:t.name??t.definition.name,enabled:t.enabled??!1,definition:t.definition}))}function Vre(e){return[...new Set(e.nodes.flatMap((t)=>t.type==="trigger"?t.kinds:[]))]}function Zre(e){let t=A0(e);return t.ok?void 0:`cannot be written as code. ${t.reason}`}function wz(e,t){return e.map((r)=>{let n=Zre(r.definition);if(n)return{value:r.id,label:r.name,disabled:n};let o=r.appId?t.get(r.appId):void 0,s=o?.state??(r.enabled?"on":"off"),i=vm(Vre(r.definition),o?.schedules??[]),a=i.length>2?`${i.slice(0,2).join(", ")} +${i.length-2} more`:i.join(", "),c=[Jc[s].toLowerCase(),a].filter(Boolean).join(", ");return{value:r.id,label:r.name,hint:c}})}function bz(e,t){return e.filter((r)=>r.disabled===void 0).filter((r)=>t===null||t.includes(r.value)).map((r)=>r.value)}function _z(e,t,r=new Map){let n=qn(e.map((s)=>s.definition),r),o=(s,i)=>s.id===i||s.appId===i||s.name===i||n.get(s.id)===i;return{picked:e.filter((s)=>t.some((i)=>o(s,i))),unknown:t.filter((s)=>!e.some((i)=>o(i,s)))}}function Bre(e,t){let r=new Map(t.map((s)=>[s.id,s])),n=e.map((s)=>r.get(s.id)??s),o=new Set(e.map((s)=>s.id));return{definitions:[...n,...t.filter((s)=>!o.has(s.id))],kept:e.filter((s)=>!r.has(s.id)).map((s)=>s.name)}}var Kre=K(p(),Rt());function Sz(e){let t=new Set(e.flatMap((r)=>r.nodes.flatMap((n)=>n.type==="rule"&&n.ref.startsWith("custom-")?[n.ref]:[])));return[...Ge,...[...t].map((r)=>{let[n=r,o="1"]=r.split("@");return{ruleId:n,version:Number(o),name:n,configSchema:Kre}})]}function mz(e){return`${e} ${e===1?"workflow":"workflows"}`}function vz(e){let t=e.pulled-e.count;return t>0?`${mz(e.count)}, ${t} left out`:mz(e.count)}async function kz(e){let t=Dd(e);if(!lw(t))return{kind:"none"};try{let r=await Md(e);return r.ok?{kind:"code",text:Dre(t,"utf8"),definitions:r.definitions}:{kind:"unreadable"}}catch{return{kind:"unreadable"}}}function uw(e,t){return Qc(e,{importFrom:Co,keys:t}).code}function Hre(e){return e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Gre(e,t,r,n){if(t.kind==="unreadable")return`${e} does not compile, so a pull cannot keep its other workflows. Fix it, or pass --force to replace it.`;if(t.kind!=="code")return null;let o=r.filter((i)=>{let a=t.definitions.find((c)=>c.id===i.id);return a!==void 0&&uw([a])!==uw([i])}).map((i)=>i.name),s=Mre(e);if(o.length>0)return`${Hre(o)} in ${s} ${o.length===1?"differs":"differ"} from the server. Run tripwire workflows diff <repo> to compare, or pass --force to take the server's version.`;if(uw(t.definitions,n)!==t.text)return`${s} has edits a pull would rewrite. Pass --force to rewrite it, or diff it first.`;return null}function xz(e,t,r,n={kind:"none"},o=new Map){let s=Dd(e),i=Bre(n.kind==="code"?n.definitions:[],t),{code:a,warnings:c,written:u,keys:l}=Qc(i.definitions,{importFrom:Co,keys:o}),d=n.kind==="code"&&n.text===a,f=r||d?null:Gre(e,n,t,o);if(f)throw Error(f);let m=yz(s);hz(s,a);let h=new Set(t.map((g)=>g.id));return{file:s,module:m,count:u.filter((g)=>h.has(g)).length,pulled:t.length,kept:i.kept,warnings:c,keys:l}}function $z(e,t){return e.map((r)=>{let n=[[r.valid?"ok":"error",r.valid?t.good(`${r.id} can be turned on`):t.bad(`${r.id} cannot be turned on yet`)]];for(let o of r.issues)n.push([o.severity==="error"?"fix":"warn",`${o.step}: ${o.message}`]);for(let o of r.schedules)n.push(["runs",`${o.nodeId}: ${o.description??o.summary}`]);return ve(n,t)}).join(`
|
|
971
971
|
|
|
972
|
-
`)}var
|
|
972
|
+
`)}var Jre=w({json:L().optional(),org:p().optional()}),Yre=fe({user:fe({name:p().nullish(),email:p().nullish()})}),Xre=1000;function Qre(){try{return{link:Ea(process.cwd())}}catch(e){return{link:null,linkError:e instanceof Error?e:Error(String(e))}}}function er(e,t){let r=Jre.parse(e.optsWithGlobals()),{link:n,linkError:o}=Qre();return{json:r.json===!0,org:iz(r.org,t.env.TRIPWIRE_ORG,n),link:n,linkError:o,style:_i(process.stdout.isTTY===!0,t.env),errStyle:_i(process.stderr.isTTY===!0,t.env)}}function ke(e){process.stdout.write(e.endsWith(`
|
|
973
973
|
`)?e:`${e}
|
|
974
|
-
`)}function
|
|
974
|
+
`)}function bt(e){process.stderr.write(e.endsWith(`
|
|
975
975
|
`)?e:`${e}
|
|
976
|
-
`)}function
|
|
976
|
+
`)}function ene(e){let t=e.indexOf("=");if(t<=0)throw Error(`Expected key=value, got ${e}`);let r=e.slice(0,t),n=e.slice(t+1);try{let o=Rt().safeParse(JSON.parse(n));return[r,o.success?o.data:n]}catch{return[r,n]}}function co(e,t,r){if(r.json){let n=t.isError?{error:zo(t.text,t.data)}:t.data??{text:t.text};return ke(JSON.stringify(n,null,2)),t.isError?1:0}if(t.isError)return bt(cr(zo(t.text,t.data),r.errStyle)),1;return ke(Y0(e,t.data,r.style)??(t.text||JSON.stringify(t.data,null,2))),0}function ao(e,t){if(t.json)ke(JSON.stringify({error:zo(e.message)},null,2));else bt(cr(zo(e.message),t.errStyle));return 1}function Pz(e,t){return e.org?{org:e.org,...t}:t}function tne(e,t){if(!t&&e.linkError)throw e.linkError;return sz(t,e.link)}function Mr(e,t,r,n){let o=er(t,e.system);try{return n(tne(o,r))}catch(s){process.exitCode=ao(s instanceof Error?s:Error(String(s)),o);return}}function Oz(e){let{org:t,repo:r}=e.link;return[["linked",t?`${r} in org ${t}`:r],["file",e.path]]}function qd(e,t,r){return az(r,t.getOptionValueSource("file")==="default",process.cwd(),er(t,e.system).link)}function rne(e,t,r){if(!r||!t.link||e.isError)return e;let n=K(p(),Rt()).safeParse(e.data);return n.success?{...e,data:{...n.data,link:{...t.link.link,path:t.link.path}}}:e}async function Et(e,t,r,n,o=!1){let s=er(t,e.system);try{let i=await _g(e.system,e.auth),a=await Cd(i,r,Pz(s,n),e.fetch);if(process.exitCode=co(r,s.json?rne(a,s,o):a,s),o&&s.link&&!s.json&&!a.isError)ke(ve(Oz(s.link),s.style))}catch(i){process.exitCode=ao(i instanceof Error?i:Error(String(i)),s)}}async function nne(e,t){let r=er(t,e.system),n=t.opts().browser,o=Ok(e.system.env),s=bo(e.system.env);try{let i=await zk(e.auth,o,s),a=i.verification_uri_complete??i.verification_uri;if(bt(ve([["code",G0(i.user_code)],["open",a],["","Waiting for you to allow it in the browser"]],r.errStyle)),n&&e.openUrl)await e.openUrl(a).catch(()=>{return});let c=await Lk(e.auth,o,s,i),u=await sne(e.system,c);if(r.json)ke(JSON.stringify({signedIn:!0,store:u},null,2));else{let l=await one(e,c);ke(ve([["done",l?`Signed in as ${l}`:"Signed in"]],r.style))}}catch(i){process.exitCode=ao(i instanceof Error?i:Error(String(i)),r)}}async function Tz(e,t){try{let r=await Cd({token:t.accessToken,mcpUrl:e.system.env.TRIPWIRE_MCP_URL||t.mcpUrl,source:"file"},"whoami",{},e.fetch),n=Yre.safeParse(r.data);if(!n.success)return null;let{name:o,email:s}=n.data.user;return o?.trim()||s?.trim()||null}catch{return null}}async function one(e,t){let r=await Tz(e,t);if(r)return r;return await e.auth.sleep(Xre),await Tz(e,t)}async function sne(e,t){let r=Yo(e);try{return await r.write(t),r.location}catch{let n=Yo({...e,env:{...e.env,TRIPWIRE_CREDENTIAL_STORE:"file"}});return await n.write(t),n.location}}async function ine(e,t){let r=er(t,e.system),n=Yo(e.system),o=await n.read();if(o)await Dk(e.auth,o);if(await n.clear(),r.json)ke(JSON.stringify({signedIn:!1},null,2));else ke(ve([["done",o?"Signed out":"Not signed in"]],r.style))}var hw=w({workflows:v(w({id:p(),valid:L().optional(),outcome:p().optional(),reason:p().optional(),url:p().optional(),enabled:L().optional(),issues:v(ee([p(),w({step:p(),message:p(),severity:p().optional()}).transform((e)=>e.severity==="warning"?"":`${e.step}: ${e.message}`)])).optional(),changes:v(w({change:z(["added","removed","changed"]),subject:p(),text:p()})).optional()}))}),ane={added:"+",removed:"-",changed:"~"};function Iz(e){return(e.issues??[]).filter(Boolean).join(" ")}function cne(e,t){let r=Iz(e)||`Run tripwire workflows validate --repo ${t} to see why.`;return e.reason==="live-cannot-run"?`${e.id} is on, so this version was not saved. ${r}`:`${e.id} was not saved. ${r}`}function Az(e,t,r){let n=hw.safeParse(e);if(!n.success)return JSON.stringify(e,null,2);return n.data.workflows.map((o)=>{let i=(o.changes??[]).map((a)=>` ${ane[a.change]} ${a.subject} ${a.text}`);return[t.label(r(o)),...i].join(`
|
|
977
977
|
`)}).join(`
|
|
978
978
|
|
|
979
|
-
`)}function
|
|
980
|
-
`)}async function Ez(e,t){let r=await Nd(e);if(r.ok)return r.definitions;if(t.json)ke(JSON.stringify({valid:!1,issues:r.issues},null,2));else wt(aw(r.issues,t));return null}async function Dr(e,t,r,n){let o=await mg(e.system,e.auth);return await Od(o,r,kz(t,n),e.fetch)}async function Dd(e,t,r){let n=Xt(e,t.system);try{process.exitCode=await r(n)}catch(o){process.exitCode=so(o instanceof Error?o:Error(String(o)),n)}}function tne(e,t){let r=jd(Sz(e)),n=$a(r,r),o=!n||n.link.repo!==t.repo||n.link.org!==t.org;if(n&&ew(n.link,t))return{path:n.path,linked:o};return{path:Cd(r,t),linked:o}}function lw(e,t){let r=$a(jd(Sz(e)));return{found:r,mapping:r&&r.link.repo===t?r.link.workflows??{}:{}}}function Ea(e){return new Map(e.matches.map((t)=>[t.id,t.key]))}async function rne(e,t,r){let n=await Dr(e,t,"get_workflow",{repo:r});return n.isError?[]:iw(n.data).map((o)=>o.definition)}async function dw(e,t,r,n,o){let{mapping:s}=lw(n,r),i=o.some((u)=>!s[u.id]),a=i?await rne(e,t,r):[],c=Zc(o,a,s);for(let u of c.matches){if(u.by==="new"&&i)wt(tu(`${u.key} matches no workflow on the server, so a push adds it as a new one.`,t.errStyle));if(u.by==="name"){let l=a.find((d)=>d.id===u.id)?.name;wt(tu(`${u.key} has no saved id in .tripwire/project.json, so it matches ${l??u.id} on the server by its name.`,t.errStyle))}}return c}function cw(e,t,r){let{found:n}=lw(e,t);if(!n||n.link.repo!==t)return;let o=new Set(r.matches.map((c)=>c.id)),s=Object.entries(n.link.workflows??{}).filter(([,c])=>!o.has(c)),i=tw(new Map([...s.map(([c,u])=>[u,c]),...Ea(r)])),a={...n.link,workflows:i};if(!ew(n.link,a))Cd(jd(jd(n.path)),a)}var nne=ve({workflows:k(ve({id:p()}))});function pw(e,t){let r=nne.safeParse(e);if(!r.success)return e;return At().parse({...r.data,workflows:r.data.workflows.map((n)=>({...n,id:t.get(n.id)??n.id}))})}var one=["on","off","cant-run","needs-fixes","cant-turn-on"],sne=k(ve({id:p(),state:z(one).optional(),schedules:k(p()).optional()}));async function ine(e,t,r){let n=await Dr(e,t,"list_workflows",{repo:r}),o=sne.safeParse(n.data);return new Map((o.success?o.data:[]).map((s)=>[s.id,{state:s.state,schedules:s.schedules}]))}function ane(e){return e.kind==="code"?e.definitions.map((t)=>t.id):null}async function cne(e,t,r,n,o){let s=fz(n,await ine(e,t,r));if(s.filter((a)=>!a.disabled).length<2)return n;let i=await J1({message:"Pick workflows to pull",items:s,maxVisible:12},mz(s,ane(o)),{input:process.stdin,write:(a)=>process.stdout.write(a),columns:()=>process.stdout.columns||80});return i?n.filter((a)=>i.includes(a.id)):null}function une(e){let t=e.length===1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`;return e.length===1?`${t}, not pulled and left as it was`:`${t}, not pulled and left as they were`}function lne(e,t,r,n,o){return Dd(t,e,async(s)=>{let i=await Dr(e,s,"get_workflow",{repo:r});if(i.isError)return io("get_workflow",i,s);let a=iw(i.data),c=await wz(o.file),{mapping:u}=lw(o.file,r),l=c.kind==="code"?Zc(c.definitions,a.map((T)=>T.definition),u):null,d=c.kind==="code"&&l?{...c,definitions:l.definitions}:c,f=new Map([...Object.entries(u).map(([T,S])=>[S,T]),...l?Ea(l):[]]),m=new Map([...f,...Dn(a.map((T)=>T.definition),f)]),h=a;if(n.length>0){let T=hz(a,n,m);if(T.unknown.length>0)throw Error(`No workflow ${T.unknown.join(", ")} on ${r}. Run tripwire workflows list <repo> to see them.`);h=T.picked}else if(process.stdin.isTTY&&process.stdout.isTTY&&!(s.json||o.all||o.yes)){let T=await cne(e,s,r,a,d);if(!T)return iu("Pull cancelled"),0;h=T}let g=bz(o.file,h.map((T)=>T.definition),o.force===!0,d,m),y=o.link?tne(o.file,{org:s.org,repo:r,workflows:tw(g.keys)}):null;if(s.json)return ke(JSON.stringify({...g,keys:Object.fromEntries(g.keys),link:y?.path??null},null,2)),0;let b=[["wrote",`${g.file} (${yz(g)})`]];if(g.kept.length>0)b.push(["kept",une(g.kept)]);if(b.push(["helpers",g.module]),y?.linked)b.push(["linked",`${r} in ${y.path}`]);return b.push(...g.warnings.map((T)=>["note",T])),ke(Se(b,s.style)),0})}function dne(e,t,r){return Dd(t,e,async(n)=>{let o=await Nd(r.file),s=o.ok?[]:o.issues,{definitions:i}=o,a=[],c=null;if(i.length>0&&r.repo){let l=await dw(e,n,r.repo,r.file,i),d=await Dr(e,n,"validate_workflow",{repo:r.repo,definitions:Md(l.definitions)});if(d.isError){if(s.length>0)wt(aw(s,n));return io("validate_workflow",d,n)}c=d.data,a=yne.parse(pw(d.data,Ea(l))).workflows}else if(i.length>0){a=w0(i,gz(i));let l=n.link?.link;i=Zc(i,[],l?l.workflows??{}:{}).definitions}let u=s.length===0&&a.every((l)=>l.valid);if(n.json)return ke(JSON.stringify(c!==null&&s.length===0?c:{valid:u,issues:s,workflows:a,definitions:r.repo?void 0:i},null,2)),u?0:1;if(s.length>0)wt(aw(s,n));if(a.length>0)ke(_z(a,n.style));return u?0:1})}function pne(e,t,r,n){return Dd(t,e,async(o)=>{let s=await Ez(n.file,o);if(!s)return 1;let i=await dw(e,o,r,n.file,s),a=await Dr(e,o,"validate_workflow",{repo:r,definitions:Md(i.definitions)});if(o.json||a.isError)return io("validate_workflow",a,o);let c={...a,data:pw(a.data,Ea(i))};ke(Tz(c.data,o.style,(d)=>(d.changes??[]).length===0?`${d.id}: no changes`:d.id));let u=uw.safeParse(c.data),l=u.success?u.data.workflows.filter((d)=>d.valid===!1):[];for(let d of l){let f=$z(d);wt(tu(d.enabled?`${d.id} is on, so a push will be refused. ${f}`:`${d.id} could not be turned on after a push. ${f}`,o.errStyle))}return 0})}async function fne(e,t,r,n,o){let s=await Dr(e,t,"apply_workflow",{repo:r,definitions:Md(o.definitions)});if(s.isError)return io("apply_workflow",s,t);cw(n,r,o);let i=t.json?s:{...s,data:pw(s.data,Ea(o))},a=uw.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.outcome==="refused"):[];if(t.json)return ke(JSON.stringify(i.data??{text:i.text},null,2)),c.length>0?1:0;ke(Tz(i.data,t.style,(u)=>[u.id,u.outcome,u.url].filter(Boolean).join(" ")));for(let u of c)wt(ir(ene(u,r),t.errStyle));return c.length>0?1:0}async function mne(e,t,r,n){let o=await Dr(e,{...t,org:r.org},"get_workflow_push",{push:r.id,waitSeconds:n});if(o.isError)throw Error(Ao(o.text,o.data));return fm.parse(o.data)}async function hne(e,t,r){let n=process.stderr.isTTY&&!t.json?xi({output:process.stderr}):null;if(n?.start(rw(r)),!n&&!t.json)wt(Se([["",rw(r)]],t.errStyle));try{let o=await sz(r,{read:(s)=>mne(e,t,r,s),sleep:e.auth.sleep});return n?.stop(O0[o.status]),o}catch(o){throw n?.error("Lost track of the review"),o}}function gne(e,t,r,n){return Dd(t,e,async(o)=>{let s=await Ez(n.file,o);if(!s)return 1;let i=await dw(e,o,r,n.file,s);if(n.force)return await fne(e,o,r,n.file,i);let a=await Dr(e,o,"propose_workflow_push",{repo:r,definitions:Md(i.definitions)});if(a.isError)return io("propose_workflow_push",a,o);let c=A0.parse(a.data);if(c.result==="unchanged"){if(cw(n.file,r,i),o.json)ke(JSON.stringify(c,null,2));else ke(Se([["done","No changes to push"]],o.style));return 0}if(c.result==="blocked"){if(o.json)ke(JSON.stringify(c,null,2));else wt(cz(c.workflows,o.errStyle));return 1}let{push:u}=c;if(o.json&&!n.wait)return ke(JSON.stringify(u,null,2)),0;if(!o.json)wt(Se([["review",u.url]],o.errStyle));if(n.browser&&e.openUrl&&oz(e.system.env,e.system.platform))await e.openUrl(u.url).catch(()=>{return});let l=await hne(e,o,u);if(l.status==="accepted")cw(n.file,r,i);if(o.json)ke(JSON.stringify(l,null,2));else if(l.status==="accepted")ke(iz(l,o.style));else wt(ir(az(l,r),o.errStyle));return I0(l.status)})}var yne=w({workflows:k(w({id:p(),name:p(),valid:D(),issues:k(w({rule:p(),severity:z(["error","warning"]),step:p(),message:p()})),schedules:k(w({nodeId:p(),summary:p(),timezone:p(),defaulted:D(),description:p().optional()}))}))});function Md(e){return At().parse(JSON.parse(JSON.stringify(e)))}async function wne(e,t,r){let n=Xt(t,e.system);try{let o=await Dr(e,n,"list_workflows",{repo:r});if(o.isError){process.exitCode=io("list_workflows",o,n);return}let s=$a(process.cwd(),process.cwd()),i={org:n.org,repo:r,workflows:s?.link.repo===r?s.link.workflows:void 0},a=Cd(process.cwd(),i),c={path:a,link:{...i}};if(n.json){ke(JSON.stringify({...c.link,path:a},null,2));return}ke(Se(xz(c),n.style))}catch(o){process.exitCode=so(o instanceof Error?o:Error(String(o)),n)}}function bne(e,t){let r=Xt(t,e.system),n=r.link?.path??(r.linkError instanceof Rd?r.linkError.path:null);if(n)Q1(n);if(r.json){ke(JSON.stringify({unlinked:n},null,2));return}ke(Se([["done",n?`Unlinked, removed ${n}`:"Not linked"]],r.style))}function Pz(e,t){e.command("login").description("Sign in with the OAuth device flow and store the token").option("--no-browser","Print the link without opening a browser").action((i,a)=>Gre(t,a)),e.command("logout").description("Revoke and remove the stored token").action((i,a)=>Xre(t,a)),e.command("whoami").description("Show the signed-in account, access status and orgs").action((i,a)=>Tt(t,a,"whoami",{},!0)),e.command("status").description("Show setup status and the next step").action((i,a)=>Tt(t,a,"setup_status",{},!0)),e.command("link <repo>").description("Save the repo (and --org) to .tripwire/project.json here, so later commands can leave them out").action((i,a,c)=>wne(t,c,i)),e.command("unlink").description("Remove the nearest .tripwire/project.json").action((i,a)=>bne(t,a)),e.command("repos").description("List repos and their gate state").action((i,a)=>Tt(t,a,"list_repos",{}));let r=e.command("rules").description("Read and change rules");r.command("list [repo]").description("List a repo's rules (default: the linked repo), or the rule catalog when there is no repo").option("--catalog","List the rule catalog").action((i,a,c)=>{let u=Xt(c,t.system).link;return i||u&&!a.catalog?jr(t,c,i,(l)=>Tt(t,c,"get_repo_rules",{repo:l})):Tt(t,c,"list_rule_catalog",{})}),r.command("set <repoOrRule> [ruleId]").usage("[options] [repo] <ruleId>").description("Turn a rule on or off and set its params").option("--enable","Turn the rule on").option("--disable","Turn the rule off").option("--param <key=value>","Set a param, repeatable. Values parse as JSON when they can",(i,a)=>[...a,i],[]).action((i,a,c,u)=>{let[l,d]=a===void 0?[void 0,i]:[i,a],f={ruleId:d};if(c.enable||c.disable)f.enabled=c.enable===!0;try{if(c.param.length>0)f.config=Object.fromEntries(c.param.map(Bre));if(f.enabled===void 0&&f.config===void 0)throw Error("Pass --enable, --disable or --param.")}catch(m){process.exitCode=so(m instanceof Error?m:Error(String(m)),Xt(u,t.system));return}return jr(t,u,l,(m)=>Tt(t,u,"set_rule",{repo:m,...f}))}),e.command("gate").description("Control the Tripwire gate on a repo").command("on [repo]").description("Turn the gate on for a repo").action((i,a,c)=>jr(t,c,i,(u)=>Tt(t,c,"turn_on_gate",{repo:u})));let n=e.command("workflows").description("Manage workflows as tripwire.ts code: pull, validate, diff and push");n.command("pull [repo] [workflows...]").description("Write a repo's workflows to tripwire.ts, with the typed helpers and the repo link in .tripwire/").option("--file <path>","Where to write the code",Ta).option("--all","Pull every workflow without asking").option("-y, --yes","Skip the picker").option("--force","Overwrite workflows that differ from the server").option("--no-link","Do not save the repo to .tripwire/project.json").action((i,a,c,u)=>jr(t,u,i,(l)=>lne(t,u,l,a,{...c,file:Ld(t,u,c.file)}))),n.command("validate").description("Compile tripwire.ts and check it; with --repo, against that repo's rules").option("--file <path>","The workflow file",Ta).option("--repo <repo>","Also check against this repo, custom rules included").action((i,a)=>dne(t,a,{...i,file:Ld(t,a,i.file)})),n.command("diff [repo]").description("Show what a push of tripwire.ts would change on the repo").option("--file <path>","The workflow file",Ta).action((i,a,c)=>jr(t,c,i,(u)=>pne(t,c,u,{...a,file:Ld(t,c,a.file)}))),n.command("push [repo]").description("Send tripwire.ts for review in the browser, then save it once accepted. New workflows start off").option("--file <path>","The workflow file",Ta).option("--force","Save without review").option("--no-browser","Print the review link without opening a browser").option("--wait","With --json, wait for the review").action((i,a,c)=>jr(t,c,i,(u)=>gne(t,c,u,{...a,file:Ld(t,c,a.file)}))),n.command("list [repo]").description("List a repo's workflows").action((i,a,c)=>jr(t,c,i,(u)=>Tt(t,c,"list_workflows",{repo:u})));for(let i of["enable","disable"])n.command(`${i} <repoOrWorkflow> [workflowId]`).usage("[options] [repo] <workflowId>").description(`${i==="enable"?"Enable":"Disable"} a workflow`).action((a,c,u,l)=>{let[d,f]=c===void 0?[void 0,a]:[a,c];return jr(t,l,d,(m)=>Tt(t,l,"set_workflow_enabled",{repo:m,workflowId:f,enabled:i==="enable"}))});let o=e.command("runs").description("Inspect runs");o.command("list").description("List recent runs").option("--repo <repo>","Only runs for this repo").option("--limit <n>","How many runs to show",(i)=>Number.parseInt(i,10)).action((i,a)=>{let c={};if(i.repo)c.repo=i.repo;if(i.limit)c.limit=i.limit;return Tt(t,a,"list_runs",c)}),o.command("show <runId>").description("Show one run with its rule results").action((i,a,c)=>Tt(t,c,"get_run",{runId:i}));let s=e.command("queue").description("Work the human review queue");s.command("list").description("List items waiting for human review").option("--repo <repo>","Only items for this repo").action((i,a)=>Tt(t,a,"list_moderation_queue",i.repo?{repo:i.repo}:{})),s.command("decide <first> <second> [third]").usage("[options] [repo] <itemId> <action>").description("Decide an item: approve, remove or ban. A ban returns a link a human must open").action((i,a,c,u,l)=>{let[d,f,m]=c===void 0?[void 0,i,a]:[i,a,c];if(!["approve","remove","ban"].includes(m)){process.exitCode=so(Error(Z0(m)),Xt(l,t.system));return}return jr(t,l,d,(h)=>Tt(t,l,"decide_moderation",{repo:h,itemId:f,decision:m}))})}var _ne=new Set(["install","login","logout","whoami","status","link","unlink","repos","rules","gate","workflows","runs","queue","help"]),vne=new Set(["--help","-h","--version","-V"]),Sne=new Set(["--org"]);function kne(e){if(e.some((n)=>vne.has(n)))return{kind:"run",argv:e};let t=0;while(t<e.length){let n=e[t]??"";if(!n.startsWith("-"))break;t+=Sne.has(n)?2:1}let r=e[t];if(r===void 0)return{kind:"help"};if(_ne.has(r))return{kind:"run",argv:e};return{kind:"unknown",command:r}}async function Oz(e,t){let r=kne(t),n=$ne(e);if(r.kind==="unknown"){process.stderr.write(`${ir(`Unknown command ${r.command}. Run tripwire --help.`,wi(process.stderr.isTTY===!0,e.env))}
|
|
981
|
-
`),process.exitCode=1;return}if(r.kind==="help"){n.outputHelp();return}await n.parseAsync(r.argv,{from:"user"})}async function
|
|
979
|
+
`)}function fw(e,t){return e.map((r)=>cr(w0(r),t.errStyle)).join(`
|
|
980
|
+
`)}async function Rz(e,t){let r=await Md(e);if(r.ok)return r.definitions;if(t.json)ke(JSON.stringify({valid:!1,issues:r.issues},null,2));else bt(fw(r.issues,t));return null}async function qr(e,t,r,n){let o=await _g(e.system,e.auth);return await Cd(o,r,Pz(t,n),e.fetch)}async function Ud(e,t,r){let n=er(e,t.system);try{process.exitCode=await r(n)}catch(o){process.exitCode=ao(o instanceof Error?o:Error(String(o)),n)}}function une(e,t){let r=Fd(Ez(e)),n=Ea(r,r),o=!n||n.link.repo!==t.repo||n.link.org!==t.org;if(n&&iw(n.link,t))return{path:n.path,linked:o};return{path:jd(r,t),linked:o}}function gw(e,t){let r=Ea(Fd(Ez(e)));return{found:r,mapping:r&&r.link.repo===t?r.link.workflows??{}:{}}}function Oa(e){return new Map(e.matches.map((t)=>[t.id,t.key]))}async function lne(e,t,r){let n=await qr(e,t,"get_workflow",{repo:r});return n.isError?[]:pw(n.data).map((o)=>o.definition)}async function yw(e,t,r,n,o){let{mapping:s}=gw(n,r),i=o.some((u)=>!s[u.id]),a=i?await lne(e,t,r):[],c=Gc(o,a,s);for(let u of c.matches){if(u.by==="new"&&i)bt(su(`${u.key} matches no workflow on the server, so a push adds it as a new one.`,t.errStyle));if(u.by==="name"){let l=a.find((d)=>d.id===u.id)?.name;bt(su(`${u.key} has no saved id in .tripwire/project.json, so it matches ${l??u.id} on the server by its name.`,t.errStyle))}}return c}function mw(e,t,r){let{found:n}=gw(e,t);if(!n||n.link.repo!==t)return;let o=new Set(r.matches.map((c)=>c.id)),s=Object.entries(n.link.workflows??{}).filter(([,c])=>!o.has(c)),i=aw(new Map([...s.map(([c,u])=>[u,c]),...Oa(r)])),a={...n.link,workflows:i};if(!iw(n.link,a))jd(Fd(Fd(n.path)),a)}var dne=fe({workflows:v(fe({id:p()}))});function ww(e,t){let r=dne.safeParse(e);if(!r.success)return e;return Rt().parse({...r.data,workflows:r.data.workflows.map((n)=>({...n,id:t.get(n.id)??n.id}))})}var pne=["on","off","cant-run","needs-fixes","cant-turn-on"],fne=v(fe({id:p(),state:z(pne).optional(),schedules:v(p()).optional()}));async function mne(e,t,r){let n=await qr(e,t,"list_workflows",{repo:r}),o=fne.safeParse(n.data);return new Map((o.success?o.data:[]).map((s)=>[s.id,{state:s.state,schedules:s.schedules}]))}function hne(e){return e.kind==="code"?e.definitions.map((t)=>t.id):null}async function gne(e,t,r,n,o){let s=wz(n,await mne(e,t,r));if(s.filter((a)=>!a.disabled).length<2)return n;let i=await tz({message:"Pick workflows to pull",items:s,maxVisible:12},bz(s,hne(o)),{input:process.stdin,write:(a)=>process.stdout.write(a),columns:()=>process.stdout.columns||80});return i?n.filter((a)=>i.includes(a.id)):null}function yne(e){let t=e.length===1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`;return e.length===1?`${t}, not pulled and left as it was`:`${t}, not pulled and left as they were`}function wne(e,t,r,n,o){return Ud(t,e,async(s)=>{let i=await qr(e,s,"get_workflow",{repo:r});if(i.isError)return co("get_workflow",i,s);let a=pw(i.data),c=await kz(o.file),{mapping:u}=gw(o.file,r),l=c.kind==="code"?Gc(c.definitions,a.map((T)=>T.definition),u):null,d=c.kind==="code"&&l?{...c,definitions:l.definitions}:c,f=new Map([...Object.entries(u).map(([T,k])=>[k,T]),...l?Oa(l):[]]),m=new Map([...f,...qn(a.map((T)=>T.definition),f)]),h=a;if(n.length>0){let T=_z(a,n,m);if(T.unknown.length>0)throw Error(`No workflow ${T.unknown.join(", ")} on ${r}. Run tripwire workflows list <repo> to see them.`);h=T.picked}else if(process.stdin.isTTY&&process.stdout.isTTY&&!(s.json||o.all||o.yes)){let T=await gne(e,s,r,a,d);if(!T)return lu("Pull cancelled"),0;h=T}let g=xz(o.file,h.map((T)=>T.definition),o.force===!0,d,m),y=o.link?une(o.file,{org:s.org,repo:r,workflows:aw(g.keys)}):null;if(s.json)return ke(JSON.stringify({...g,keys:Object.fromEntries(g.keys),link:y?.path??null},null,2)),0;let b=[["wrote",`${g.file} (${vz(g)})`]];if(g.kept.length>0)b.push(["kept",yne(g.kept)]);if(b.push(["helpers",g.module]),y?.linked)b.push(["linked",`${r} in ${y.path}`]);return b.push(...g.warnings.map((T)=>["note",T])),ke(ve(b,s.style)),0})}function bne(e,t,r){return Ud(t,e,async(n)=>{let o=await Md(r.file),s=o.ok?[]:o.issues,{definitions:i}=o,a=[],c=null;if(i.length>0&&r.repo){let l=await yw(e,n,r.repo,r.file,i),d=await qr(e,n,"validate_workflow",{repo:r.repo,definitions:Wd(l.definitions)});if(d.isError){if(s.length>0)bt(fw(s,n));return co("validate_workflow",d,n)}c=d.data,a=$ne.parse(ww(d.data,Oa(l))).workflows}else if(i.length>0){a=k0(i,Sz(i));let l=n.link?.link;i=Gc(i,[],l?l.workflows??{}:{}).definitions}let u=s.length===0&&a.every((l)=>l.valid);if(n.json)return ke(JSON.stringify(c!==null&&s.length===0?c:{valid:u,issues:s,workflows:a,definitions:r.repo?void 0:i},null,2)),u?0:1;if(s.length>0)bt(fw(s,n));if(a.length>0)ke($z(a,n.style));return u?0:1})}function _ne(e,t,r,n){return Ud(t,e,async(o)=>{let s=await Rz(n.file,o);if(!s)return 1;let i=await yw(e,o,r,n.file,s),a=await qr(e,o,"validate_workflow",{repo:r,definitions:Wd(i.definitions)});if(o.json||a.isError)return co("validate_workflow",a,o);let c={...a,data:ww(a.data,Oa(i))};ke(Az(c.data,o.style,(d)=>(d.changes??[]).length===0?`${d.id}: no changes`:d.id));let u=hw.safeParse(c.data),l=u.success?u.data.workflows.filter((d)=>d.valid===!1):[];for(let d of l){let f=Iz(d);bt(su(d.enabled?`${d.id} is on, so a push will be refused. ${f}`:`${d.id} could not be turned on after a push. ${f}`,o.errStyle))}return 0})}async function Sne(e,t,r,n,o){let s=await qr(e,t,"apply_workflow",{repo:r,definitions:Wd(o.definitions)});if(s.isError)return co("apply_workflow",s,t);mw(n,r,o);let i=t.json?s:{...s,data:ww(s.data,Oa(o))},a=hw.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.outcome==="refused"):[];if(t.json)return ke(JSON.stringify(i.data??{text:i.text},null,2)),c.length>0?1:0;ke(Az(i.data,t.style,(u)=>[u.id,u.outcome,u.url].filter(Boolean).join(" ")));for(let u of c)bt(cr(cne(u,r),t.errStyle));return c.length>0?1:0}async function vne(e,t,r,n){let o=await qr(e,{...t,org:r.org},"get_workflow_push",{push:r.id,waitSeconds:n});if(o.isError)throw Error(zo(o.text,o.data));return bm.parse(o.data)}async function kne(e,t,r){let n=process.stderr.isTTY&&!t.json?Ti({output:process.stderr}):null;if(n?.start(cw(r)),!n&&!t.json)bt(ve([["",cw(r)]],t.errStyle));try{let o=await lz(r,{read:(s)=>vne(e,t,r,s),sleep:e.auth.sleep});return n?.stop(z0[o.status]),o}catch(o){throw n?.error("Lost track of the review"),o}}function xne(e,t,r,n){return Ud(t,e,async(o)=>{let s=await Rz(n.file,o);if(!s)return 1;let i=await yw(e,o,r,n.file,s);if(n.force)return await Sne(e,o,r,n.file,i);let a=await qr(e,o,"propose_workflow_push",{repo:r,definitions:Wd(i.definitions)});if(a.isError)return co("propose_workflow_push",a,o);let c=L0.parse(a.data);if(c.result==="unchanged"){if(mw(n.file,r,i),o.json)ke(JSON.stringify(c,null,2));else ke(ve([["done","No changes to push"]],o.style));return 0}if(c.result==="blocked"){if(o.json)ke(JSON.stringify(c,null,2));else bt(fz(c.workflows,o.errStyle));return 1}let{push:u}=c;if(o.json&&!n.wait)return ke(JSON.stringify(u,null,2)),0;if(!o.json)bt(ve([["review",u.url]],o.errStyle));if(n.browser&&e.openUrl&&uz(e.system.env,e.system.platform))await e.openUrl(u.url).catch(()=>{return});let l=await kne(e,o,u);if(l.status==="accepted")mw(n.file,r,i);if(o.json)ke(JSON.stringify(l,null,2));else if(l.status==="accepted")ke(dz(l,o.style));else bt(cr(pz(l,r),o.errStyle));return N0(l.status)})}var $ne=w({workflows:v(w({id:p(),name:p(),valid:L(),issues:v(w({rule:p(),severity:z(["error","warning"]),step:p(),message:p()})),schedules:v(w({nodeId:p(),summary:p(),timezone:p(),defaulted:L(),description:p().optional()}))}))});function Wd(e){return Rt().parse(JSON.parse(JSON.stringify(e)))}async function Tne(e,t,r){let n=er(t,e.system);try{let o=await qr(e,n,"list_workflows",{repo:r});if(o.isError){process.exitCode=co("list_workflows",o,n);return}let s=Ea(process.cwd(),process.cwd()),i={org:n.org,repo:r,workflows:s?.link.repo===r?s.link.workflows:void 0},a=jd(process.cwd(),i),c={path:a,link:{...i}};if(n.json){ke(JSON.stringify({...c.link,path:a},null,2));return}ke(ve(Oz(c),n.style))}catch(o){process.exitCode=ao(o instanceof Error?o:Error(String(o)),n)}}function Ene(e,t){let r=er(t,e.system),n=r.link?.path??(r.linkError instanceof Ld?r.linkError.path:null);if(n)oz(n);if(r.json){ke(JSON.stringify({unlinked:n},null,2));return}ke(ve([["done",n?`Unlinked, removed ${n}`:"Not linked"]],r.style))}function Cz(e,t){e.command("login").description("Sign in with the OAuth device flow and store the token").option("--no-browser","Print the link without opening a browser").action((i,a)=>nne(t,a)),e.command("logout").description("Revoke and remove the stored token").action((i,a)=>ine(t,a)),e.command("whoami").description("Show the signed-in account, access status and orgs").action((i,a)=>Et(t,a,"whoami",{},!0)),e.command("status").description("Show setup status and the next step").action((i,a)=>Et(t,a,"setup_status",{},!0)),e.command("link <repo>").description("Save the repo (and --org) to .tripwire/project.json here, so later commands can leave them out").action((i,a,c)=>Tne(t,c,i)),e.command("unlink").description("Remove the nearest .tripwire/project.json").action((i,a)=>Ene(t,a)),e.command("repos").description("List repos and their gate state").action((i,a)=>Et(t,a,"list_repos",{}));let r=e.command("rules").description("Read and change rules");r.command("list [repo]").description("List a repo's rules (default: the linked repo), or the rule catalog when there is no repo").option("--catalog","List the rule catalog").action((i,a,c)=>{let u=er(c,t.system).link;return i||u&&!a.catalog?Mr(t,c,i,(l)=>Et(t,c,"get_repo_rules",{repo:l})):Et(t,c,"list_rule_catalog",{})}),r.command("set <repoOrRule> [ruleId]").usage("[options] [repo] <ruleId>").description("Turn a rule on or off and set its params").option("--enable","Turn the rule on").option("--disable","Turn the rule off").option("--param <key=value>","Set a param, repeatable. Values parse as JSON when they can",(i,a)=>[...a,i],[]).action((i,a,c,u)=>{let[l,d]=a===void 0?[void 0,i]:[i,a],f={ruleId:d};if(c.enable||c.disable)f.enabled=c.enable===!0;try{if(c.param.length>0)f.config=Object.fromEntries(c.param.map(ene));if(f.enabled===void 0&&f.config===void 0)throw Error("Pass --enable, --disable or --param.")}catch(m){process.exitCode=ao(m instanceof Error?m:Error(String(m)),er(u,t.system));return}return Mr(t,u,l,(m)=>Et(t,u,"set_rule",{repo:m,...f}))}),e.command("gate").description("Control the Tripwire gate on a repo").command("on [repo]").description("Turn the gate on for a repo").action((i,a,c)=>Mr(t,c,i,(u)=>Et(t,c,"turn_on_gate",{repo:u})));let n=e.command("workflows").description("Manage workflows as tripwire.ts code: pull, validate, diff and push");n.command("pull [repo] [workflows...]").description("Write a repo's workflows to tripwire.ts, with the typed helpers and the repo link in .tripwire/").option("--file <path>","Where to write the code",Pa).option("--all","Pull every workflow without asking").option("-y, --yes","Skip the picker").option("--force","Overwrite workflows that differ from the server").option("--no-link","Do not save the repo to .tripwire/project.json").action((i,a,c,u)=>Mr(t,u,i,(l)=>wne(t,u,l,a,{...c,file:qd(t,u,c.file)}))),n.command("validate").description("Compile tripwire.ts and check it; with --repo, against that repo's rules").option("--file <path>","The workflow file",Pa).option("--repo <repo>","Also check against this repo, custom rules included").action((i,a)=>bne(t,a,{...i,file:qd(t,a,i.file)})),n.command("diff [repo]").description("Show what a push of tripwire.ts would change on the repo").option("--file <path>","The workflow file",Pa).action((i,a,c)=>Mr(t,c,i,(u)=>_ne(t,c,u,{...a,file:qd(t,c,a.file)}))),n.command("push [repo]").description("Send tripwire.ts for review in the browser, then save it once accepted. New workflows start off").option("--file <path>","The workflow file",Pa).option("--force","Save without review").option("--no-browser","Print the review link without opening a browser").option("--wait","With --json, wait for the review").action((i,a,c)=>Mr(t,c,i,(u)=>xne(t,c,u,{...a,file:qd(t,c,a.file)}))),n.command("list [repo]").description("List a repo's workflows").action((i,a,c)=>Mr(t,c,i,(u)=>Et(t,c,"list_workflows",{repo:u})));for(let i of["enable","disable"])n.command(`${i} <repoOrWorkflow> [workflowId]`).usage("[options] [repo] <workflowId>").description(`${i==="enable"?"Enable":"Disable"} a workflow`).action((a,c,u,l)=>{let[d,f]=c===void 0?[void 0,a]:[a,c];return Mr(t,l,d,(m)=>Et(t,l,"set_workflow_enabled",{repo:m,workflowId:f,enabled:i==="enable"}))});let o=e.command("runs").description("Inspect runs");o.command("list").description("List recent runs").option("--repo <repo>","Only runs for this repo").option("--limit <n>","How many runs to show",(i)=>Number.parseInt(i,10)).action((i,a)=>{let c={};if(i.repo)c.repo=i.repo;if(i.limit)c.limit=i.limit;return Et(t,a,"list_runs",c)}),o.command("show <runId>").description("Show one run with its rule results").action((i,a,c)=>Et(t,c,"get_run",{runId:i}));let s=e.command("queue").description("Work the human review queue");s.command("list").description("List items waiting for human review").option("--repo <repo>","Only items for this repo").action((i,a)=>Et(t,a,"list_moderation_queue",i.repo?{repo:i.repo}:{})),s.command("decide <first> <second> [third]").usage("[options] [repo] <itemId> <action>").description("Decide an item: approve, remove or ban. A ban returns a link a human must open").action((i,a,c,u,l)=>{let[d,f,m]=c===void 0?[void 0,i,a]:[i,a,c];if(!["approve","remove","ban"].includes(m)){process.exitCode=ao(Error(J0(m)),er(l,t.system));return}return Mr(t,l,d,(h)=>Et(t,l,"decide_moderation",{repo:h,itemId:f,decision:m}))})}var Pne=new Set(["install","login","logout","whoami","status","link","unlink","repos","rules","gate","workflows","runs","queue","help"]),One=new Set(["--help","-h","--version","-V"]),Ine=new Set(["--org"]);function Ane(e){if(e.some((n)=>One.has(n)))return{kind:"run",argv:e};let t=0;while(t<e.length){let n=e[t]??"";if(!n.startsWith("-"))break;t+=Ine.has(n)?2:1}let r=e[t];if(r===void 0)return{kind:"help"};if(Pne.has(r))return{kind:"run",argv:e};return{kind:"unknown",command:r}}async function zz(e,t){let r=Ane(t),n=Cne(e);if(r.kind==="unknown"){process.stderr.write(`${cr(`Unknown command ${r.command}. Run tripwire --help.`,_i(process.stderr.isTTY===!0,e.env))}
|
|
981
|
+
`),process.exitCode=1;return}if(r.kind==="help"){n.outputHelp();return}await n.parseAsync(r.argv,{from:"user"})}async function Rne(e,t){let r=e.platform==="darwin"?["open",t]:e.platform==="win32"?["cmd","/c","start","",t]:["xdg-open",t],[n,...o]=r,s=n?e.which(n):null;if(s)await e.run(s,o)}function Cne(e,t={}){let r=new Bw().name("tripwire").description("Set up Tripwire in your coding agents and manage it from the terminal").version(wc).option("--json","Print machine-readable JSON").option("--org <slug>","Org to act on (default: TRIPWIRE_ORG, the linked project, or your only org)").showHelpAfterError();return r.command("install [instruction]").description("Add the Tripwire MCP server and get-started skill to your coding agents. instruction is org-slug#run-code or text for the copied prompt").option("--no-interactive","Install into every detected agent without prompts").option("-y, --yes","Alias for --no-interactive").action(async(n,o,s)=>{let i=s.optsWithGlobals().json===!0,a=process.stdin.isTTY===!0&&process.stdout.isTTY===!0;process.exitCode=await JP(e,{interactive:o.interactive&&!o.yes&&a,json:i,instruction:n})}),Cz(r,{system:e,auth:Rk,openUrl:(n)=>Rne(e,n),...t}),r}import{spawn as Nz}from"node:child_process";import{accessSync as zne,constants as Nne,existsSync as Lz,readdirSync as Lne}from"node:fs";import{homedir as jne}from"node:os";import{delimiter as jz,join as Dz}from"node:path";function Dne(e){try{return zne(e,Nne.X_OK),!0}catch{return!1}}function Mne(e,t,r){let n=(t.PATH??"").split(jz).filter(Boolean),o=r==="win32"?(t.PATHEXT??".EXE;.CMD;.BAT").split(";").filter(Boolean):[""];for(let s of n)for(let i of o){let a=Dz(s,`${e}${i}`);if(Lz(a)&&Dne(a))return a}return null}function qne(e,t,r,n){return new Promise((o)=>{let s=Nz(e,t,{env:r,stdio:[n===void 0?"ignore":"pipe","pipe","pipe"]});if(n!==void 0&&s.stdin)s.stdin.on("error",()=>{return}),s.stdin.end(n);let i="",a="";s.stdout?.setEncoding("utf8"),s.stderr?.setEncoding("utf8"),s.stdout?.on("data",(c)=>{i+=c}),s.stderr?.on("data",(c)=>{a+=c}),s.on("error",(c)=>o({ok:!1,stdout:i,stderr:c.message})),s.on("close",(c)=>o({ok:c===0,stdout:i.trim(),stderr:a.trim()}))})}function Fne(e,t,r){return new Promise((n)=>{let o=Nz(e,t,{env:r,stdio:"inherit"});o.on("error",(s)=>n({ok:!1,stdout:"",stderr:s.message})),o.on("close",(s)=>n({ok:s===0,stdout:"",stderr:""}))})}function Une(e){try{return Lne(e)}catch{return[]}}function Wne(e,t){if(e.TRIPWIRE_APP_DIRS!==void 0)return e.TRIPWIRE_APP_DIRS.split(jz).filter(Boolean);return["/Applications",Dz(t,"Applications")]}function Mz(e=process.env,t=process.platform){let r=e.HOME??e.USERPROFILE??jne();return{platform:t,home:r,env:e,macAppDirs:Wne(e,r),run:(n,o,s)=>qne(n,o,e,s),runInteractive:(n,o)=>Fne(n,o,e),which:(n)=>Mne(n,e,t),exists:Lz,list:Une}}await zz(Mz(),process.argv.slice(2));
|