@tripwire-sh/cli 0.1.1 → 0.1.2
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 +751 -212
- package/package.json +1 -1
package/dist/tripwire.js
CHANGED
|
@@ -1,203 +1,203 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}displayWidth(e){return
|
|
2
|
+
import{createRequire as u1}from"node:module";var QC=Object.create;var{getPrototypeOf:e1,defineProperty:ia,getOwnPropertyNames:t1}=Object;var py=Object.prototype.hasOwnProperty;function r1(e){return this[e]}var n1,o1,vn=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var o=t?n1??=new WeakMap:o1??=new WeakMap,s=o.get(e);if(s)return s}r=e!=null?QC(e1(e)):{};let i=t||!e||!e.__esModule||!py.call(e,"default")?ia(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of t1(e))if(!py.call(i,a))ia(i,a,{get:r1.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 s1=(e)=>e;function i1(e,t){this[e]=s1.bind(null,t)}var a1=(e,t)=>{for(var r in t)ia(e,r,{get:t[r],enumerable:!0,configurable:!0,set:i1.bind(t,r)})};var c1=(e,t,r)=>{for(var n in t)ia(e,n,{get:t[n],set:r[n],enumerable:!0,configurable:!0})},fr=u1(import.meta.url);var as=E(function(l1){class Ql 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 fy extends Ql{constructor(e){super(1,"commander.invalidArgument",e);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}l1.CommanderError=Ql;l1.InvalidArgumentError=fy});var aa=E(function(h1){var{InvalidArgumentError:f1}=as();class my{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 f1(`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 m1(e){let t=e.name()+(e.variadic===!0?"...":"");return e.required?"<"+t+">":"["+t+"]"}h1.Argument=my;h1.humanReadableArgName=m1});var ed=E(function(w1){var{humanReadableArgName:b1}=aa();class hy{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)=>b1(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 gy(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
|
-
${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
|
|
6
|
-
`)}}function
|
|
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 gy(e){let t=/\x1b\[\d*(;\d*)*m/g;return e.replace(t,"")}w1.Help=hy;w1.stripColor=gy});var td=E(function(k1){var{InvalidArgumentError:S1}=as();class by{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=x1(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 S1(`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 yy(this.name().replace(/^no-/,""));return yy(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 wy{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 yy(e){return e.split("-").reduce((t,r)=>t+r[0].toUpperCase()+r.slice(1))}function x1(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}}k1.Option=by;k1.DualOptions=wy});var _y=E(function(P1){function T1(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 O1(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=T1(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""}P1.suggestSimilar=O1});var ky=E(function(j1){var I1=fr("node:events").EventEmitter,Hn=fr("node:child_process"),qe=fr("node:path"),Ar=fr("node:fs"),V=fr("node:process"),{Argument:R1,humanReadableArgName:C1}=aa(),{CommanderError:rd}=as(),{Help:z1,stripColor:N1}=ed(),{Option:vy,DualOptions:L1}=td(),{suggestSimilar:Sy}=_y();class od extends I1{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:()=>nd()??(V.stdout.isTTY&&V.stdout.hasColors?.()),getErrHasColors:()=>nd()??(V.stderr.isTTY&&V.stderr.hasColors?.()),stripColor:(t)=>N1(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 od(e)}createHelp(){return Object.assign(new z1,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 R1(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 rd(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 vy(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 vy)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(Ar.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
|
|
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=qe.resolve(u,l);if(Ar.existsSync(d))return d;if(n.includes(qe.extname(l)))return;let f=n.find((m)=>Ar.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=Ar.realpathSync(this._scriptPath)}catch{u=this._scriptPath}i=qe.resolve(qe.dirname(u),i)}if(i){let u=o(i,s);if(!u&&!e._executableFile&&this._scriptPath){let l=qe.basename(this._scriptPath,qe.extname(this._scriptPath));if(l!==this._name)u=o(i,`${l}-${e._name}`)}s=u||s}r=n.includes(qe.extname(s));let a;if(V.platform!=="win32")if(r)t.unshift(s),t=xy(V.execArgv).concat(t),a=Hn.spawn(V.argv[0],t,{stdio:"inherit"});else a=Hn.spawn(s,t,{stdio:"inherit"});else this._checkForMissingExecutable(s,i,e._name),t.unshift(s),t=xy(V.execArgv).concat(t),a=Hn.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 rd(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 rd(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
|
|
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 L1(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=Sy(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=Sy(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)=>C1(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=qe.basename(e,qe.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 xy(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 nd(){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}j1.Command=od;j1.useColor=nd});var _c=E(function(Ace,_f){var wc=process||{},mk=wc.argv||[],bc=wc.env||{},YM=!(!!bc.NO_COLOR||mk.includes("--no-color"))&&(!!bc.FORCE_COLOR||mk.includes("--color")||wc.platform==="win32"||(wc.stdout||{}).isTTY&&bc.TERM!=="dumb"||!!bc.CI),XM=(e,t,r=e)=>(n)=>{let o=""+n,s=o.indexOf(t,e.length);return~s?e+QM(o,t,r,s)+t:e+o+t},QM=(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)},hk=(e=YM)=>{let t=e?XM:()=>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")}};_f.exports=hk();_f.exports.createColors=hk});var Tf=E(function(Uce,qk){var Ef={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"},Fq={up:(e=1)=>"\x1B[S".repeat(e),down:(e=1)=>"\x1B[T".repeat(e)},Uq={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?Ef.up():"");if(e)t+=Ef.left;return t}};qk.exports={cursor:Ef,scroll:Fq,erase:Uq,beep:"\x07"}});var ae=E(function(V2){var em=Symbol.for("yaml.alias"),j0=Symbol.for("yaml.document"),zc=Symbol.for("yaml.map"),D0=Symbol.for("yaml.pair"),tm=Symbol.for("yaml.scalar"),Nc=Symbol.for("yaml.seq"),Sr=Symbol.for("yaml.node.type"),j2=(e)=>!!e&&typeof e==="object"&&e[Sr]===em,D2=(e)=>!!e&&typeof e==="object"&&e[Sr]===j0,M2=(e)=>!!e&&typeof e==="object"&&e[Sr]===zc,q2=(e)=>!!e&&typeof e==="object"&&e[Sr]===D0,M0=(e)=>!!e&&typeof e==="object"&&e[Sr]===tm,F2=(e)=>!!e&&typeof e==="object"&&e[Sr]===Nc;function q0(e){if(e&&typeof e==="object")switch(e[Sr]){case zc:case Nc:return!0}return!1}function U2(e){if(e&&typeof e==="object")switch(e[Sr]){case em:case zc:case tm:case Nc:return!0}return!1}var W2=(e)=>(M0(e)||q0(e))&&!!e.anchor;V2.ALIAS=em;V2.DOC=j0;V2.MAP=zc;V2.NODE_TYPE=Sr;V2.PAIR=D0;V2.SCALAR=tm;V2.SEQ=Nc;V2.hasAnchor=W2;V2.isAlias=j2;V2.isCollection=q0;V2.isDocument=D2;V2.isMap=M2;V2.isNode=U2;V2.isPair=q2;V2.isScalar=M0;V2.isSeq=F2});var ui=E(function(aF){var De=ae(),lt=Symbol("break visit"),F0=Symbol("skip children"),Qt=Symbol("remove node");function Lc(e,t){let r=U0(t);if(De.isDocument(e)){if(_o(null,e.contents,r,Object.freeze([e]))===Qt)e.contents=null}else _o(null,e,r,Object.freeze([]))}Lc.BREAK=lt;Lc.SKIP=F0;Lc.REMOVE=Qt;function _o(e,t,r,n){let o=W0(e,t,r,n);if(De.isNode(o)||De.isPair(o))return V0(e,n,o),_o(e,o,r,n);if(typeof o!=="symbol"){if(De.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=_o(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===lt)return lt;else if(i===Qt)t.items.splice(s,1),s-=1}}else if(De.isPair(t)){n=Object.freeze(n.concat(t));let s=_o("key",t.key,r,n);if(s===lt)return lt;else if(s===Qt)t.key=null;let i=_o("value",t.value,r,n);if(i===lt)return lt;else if(i===Qt)t.value=null}}return o}async function jc(e,t){let r=U0(t);if(De.isDocument(e)){if(await vo(null,e.contents,r,Object.freeze([e]))===Qt)e.contents=null}else await vo(null,e,r,Object.freeze([]))}jc.BREAK=lt;jc.SKIP=F0;jc.REMOVE=Qt;async function vo(e,t,r,n){let o=await W0(e,t,r,n);if(De.isNode(o)||De.isPair(o))return V0(e,n,o),vo(e,o,r,n);if(typeof o!=="symbol"){if(De.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=await vo(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===lt)return lt;else if(i===Qt)t.items.splice(s,1),s-=1}}else if(De.isPair(t)){n=Object.freeze(n.concat(t));let s=await vo("key",t.key,r,n);if(s===lt)return lt;else if(s===Qt)t.key=null;let i=await vo("value",t.value,r,n);if(i===lt)return lt;else if(i===Qt)t.value=null}}return o}function U0(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 W0(e,t,r,n){if(typeof r==="function")return r(e,t,n);if(De.isMap(t))return r.Map?.(e,t,n);if(De.isSeq(t))return r.Seq?.(e,t,n);if(De.isPair(t))return r.Pair?.(e,t,n);if(De.isScalar(t))return r.Scalar?.(e,t,n);if(De.isAlias(t))return r.Alias?.(e,t,n);return}function V0(e,t,r){let n=t[t.length-1];if(De.isCollection(n))n.items[e]=r;else if(De.isPair(n))if(e==="key")n.key=r;else n.value=r;else if(De.isDocument(n))n.contents=r;else{let o=De.isAlias(n)?"alias":"scalar";throw Error(`Cannot replace node with ${o} parent`)}}aF.visit=Lc;aF.visitAsync=jc});var rm=E(function(fF){var Z0=ae(),lF=ui(),dF={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},pF=(e)=>e.replace(/[!,[\]{}]/g,(t)=>dF[t]);class Pt{constructor(e,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Pt.defaultYaml,e),this.tags=Object.assign({},Pt.defaultTags,t)}clone(){let e=new Pt(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new Pt(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Pt.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Pt.defaultTags);break}return e}add(e,t){if(this.atNextDocument)this.yaml={explicit:Pt.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Pt.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+pF(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&&Z0.isNode(e.contents)){let o={};lF.visit(e.contents,(s,i)=>{if(Z0.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
|
+
`)}}Pt.defaultYaml={explicit:!1,version:"1.2"};Pt.defaultTags={"!!":"tag:yaml.org,2002:"};fF.Directives=Pt});var Dc=E(function(bF){var B0=ae(),hF=ui();function gF(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 H0(e){let t=new Set;return hF.visit(e,{Value(r,n){if(n.anchor)t.add(n.anchor)}}),t}function K0(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function yF(e,t){let r=[],n=new Map,o=null;return{onAnchor:(s)=>{r.push(s),o??(o=H0(e));let i=K0(t,o);return o.add(i),i},setAnchors:()=>{for(let s of r){let i=n.get(s);if(typeof i==="object"&&i.anchor&&(B0.isScalar(i.node)||B0.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}}bF.anchorIsValid=gF;bF.anchorNames=H0;bF.createNodeAnchors=yF;bF.findNewAnchor=K0});var nm=E(function(xF){function li(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=li(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=li(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=li(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=li(e,n,o,s);if(i===void 0)delete n[o];else if(i!==s)n[o]=i}return e.call(t,r,n)}xF.applyReviver=li});var Fr=E(function(EF){var $F=ae();function G0(e,t,r){if(Array.isArray(e))return e.map((n,o)=>G0(n,String(o),r));if(e&&typeof e.toJSON==="function"){if(!r||!$F.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}EF.toJS=G0});var Mc=E(function(AF){var OF=nm(),J0=ae(),PF=Fr();class Y0{constructor(e){Object.defineProperty(this,J0.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(!J0.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=PF.toJS(this,"",s);if(typeof n==="function")for(let{count:a,res:c}of s.anchors.values())n(c,a);return typeof o==="function"?OF.applyReviver(o,{"":i},"",i):i}}AF.NodeBase=Y0});var di=E(function(LF){var RF=Dc(),CF=ui(),So=ae(),zF=Mc(),NF=Fr();class X0 extends zF.NodeBase{constructor(e){super(So.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=[],CF.visit(e,{Node:(o,s)=>{if(So.isAlias(s)||So.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)NF.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=qc(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(RF.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 qc(e,t,r){if(So.isAlias(t)){let n=t.resolve(e),o=r&&n&&r.get(n);return o?o.count*o.aliasCount:0}else if(So.isCollection(t)){let n=0;for(let o of t.items){let s=qc(e,o,r);if(s>n)n=s}return n}else if(So.isPair(t)){let n=qc(e,t.key,r),o=qc(e,t.value,r);return Math.max(n,o)}return 1}LF.Alias=X0});var Ce=E(function(UF){var DF=ae(),MF=Mc(),qF=Fr(),FF=(e)=>!e||typeof e!=="function"&&typeof e!=="object";class An extends MF.NodeBase{constructor(e){super(DF.SCALAR);this.value=e}toJSON(e,t){return t?.keep?this.value:qF.toJS(this.value,e,t)}toString(){return String(this.value)}}An.BLOCK_FOLDED="BLOCK_FOLDED";An.BLOCK_LITERAL="BLOCK_LITERAL";An.PLAIN="PLAIN";An.QUOTE_DOUBLE="QUOTE_DOUBLE";An.QUOTE_SINGLE="QUOTE_SINGLE";UF.Scalar=An;UF.isScalarValue=FF});var pi=E(function(GF){var ZF=di(),In=ae(),Q0=Ce(),BF="tag:yaml.org,2002:";function HF(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 KF(e,t,r){if(In.isDocument(e))e=e.contents;if(In.isNode(e))return e;if(In.isPair(e)){let d=r.schema[In.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 ZF.Alias(c.anchor);else c={anchor:null,node:null},a.set(e,c);if(t?.startsWith("!!"))t=BF+t.slice(2);let u=HF(e,t,i.tags);if(!u){if(e&&typeof e.toJSON==="function")e=e.toJSON();if(!e||typeof e!=="object"){let d=new Q0.Scalar(e);if(c)c.node=d;return d}u=e instanceof Map?i[In.MAP]:(Symbol.iterator in Object(e))?i[In.SEQ]:i[In.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 Q0.Scalar(e);if(t)l.tag=t;else if(!u.default)l.tag=u.tag;if(c)c.node=l;return l}GF.createNode=KF});var Fc=E(function(QF){var YF=pi(),er=ae(),XF=Mc();function om(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 YF.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 e$=(e)=>e==null||typeof e==="object"&&!!e[Symbol.iterator]().next().done;class t$ extends XF.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)=>er.isNode(r)||er.isPair(r)?r.clone(e):r),this.range)t.range=this.range.slice();return t}addIn(e,t){if(e$(e))this.add(t);else{let[r,...n]=e,o=this.get(r,!0);if(er.isCollection(o))o.addIn(n,t);else if(o===void 0&&this.schema)this.set(r,om(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(er.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&&er.isScalar(o)?o.value:o;else return er.isCollection(o)?o.getIn(n,t):void 0}hasAllNullValues(e){return this.items.every((t)=>{if(!er.isPair(t))return!1;let r=t.value;return r==null||e&&er.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 er.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(er.isCollection(o))o.setIn(n,t);else if(o===void 0&&this.schema)this.set(r,om(this.schema,n,t));else throw Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}}}QF.Collection=t$;QF.collectionFromPath=om;QF.isEmptyPath=e$});var fi=E(function(sU){var nU=(e)=>e.replace(/^(?!$)(?: $)?/gm,"#");function sm(e,t){if(/^\n+$/.test(e))return e.substring(1);return t?e.replace(/^(?! *$)/gm,t):e}var oU=(e,t,r)=>e.endsWith(`
|
|
29
|
+
`)?sm(r,t):r.includes(`
|
|
30
30
|
`)?`
|
|
31
|
-
`+
|
|
32
|
-
`){if(r==="block")g=
|
|
33
|
-
`&&m!=="\t"){let
|
|
34
|
-
`&&
|
|
35
|
-
${t}${e.slice(0,
|
|
36
|
-
${t}${e.slice(
|
|
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
|
|
31
|
+
`+sm(r,t):(e.endsWith(" ")?"":" ")+r;sU.indentComment=sm;sU.lineComment=oU;sU.stringifyComment=nU});var n$=E(function(lU){function uU(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,_=-1;if(r==="block"){if(g=r$(e,g,t.length),g!==-1)d=g+c}for(let x;x=e[g+=1];){if(r==="quoted"&&x==="\\"){switch(y=g,e[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}_=g}if(x===`
|
|
32
|
+
`){if(r==="block")g=r$(e,g,t.length);d=g+t.length+c,f=void 0}else{if(x===" "&&m&&m!==" "&&m!==`
|
|
33
|
+
`&&m!=="\t"){let A=e[g+1];if(A&&A!==" "&&A!==`
|
|
34
|
+
`&&A!=="\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=x,x=e[g+=1],h=!0;let A=g>_+1?g-2:y-1;if(l[A])return e;u.push(A),l[A]=!0,d=A+c,f=void 0}else h=!0}m=x}if(h&&a)a();if(u.length===0)return e;if(i)i();let T=e.slice(0,u[0]);for(let x=0;x<u.length;++x){let A=u[x],w=u[x+1]||e.length;if(A===0)T=`
|
|
35
|
+
${t}${e.slice(0,w)}`;else{if(r==="quoted"&&l[A])T+=`${e[A]}\\`;T+=`
|
|
36
|
+
${t}${e.slice(A+1,w)}`}}return T}function r$(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}lU.FOLD_BLOCK="block";lU.FOLD_FLOW="flow";lU.FOLD_QUOTED="quoted";lU.foldFlowLines=uU});var hi=E(function(bU){var Ft=Ce(),Ur=n$(),Wc=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Vc=(e)=>/^(%|---|\.\.\.)/m.test(e);function hU(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||(Vc(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:Ur.foldFlowLines(i,s,Ur.FOLD_QUOTED,Wc(t,!1))}function im(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||(Vc(e)?" ":""),n="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
43
|
+
${r}`)+"'";return t.implicitKey?n:Ur.foldFlowLines(n,r,Ur.FOLD_FLOW,Wc(t,!1))}function xo(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=im;else if(s&&!o)n=mi;else n=r?im:mi}return n(e,t)}var am;try{am=new RegExp(`(^|(?<!
|
|
44
44
|
))
|
|
45
45
|
+(?!
|
|
46
|
-
|$)`,"g")}catch{
|
|
46
|
+
|$)`,"g")}catch{am=/\n+(?!\n|$)/g}function Uc({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 xo(r,n);let u=n.indent||(n.forceBlockIndent||Vc(r)?" ":""),l=i==="literal"?!0:i==="folded"||t===Ft.Scalar.BLOCK_FOLDED?!1:t===Ft.Scalar.BLOCK_LITERAL?!0:!hU(r,c,u.length);if(!r)return l?`|
|
|
47
47
|
`:`>
|
|
48
|
-
`;let
|
|
49
|
-
`&&
|
|
50
|
-
`);if(h===-1)
|
|
51
|
-
`)m=m.slice(0,-1);m=m.replace(
|
|
52
|
-
`)
|
|
53
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),v=!1,S=
|
|
54
|
-
${u}${
|
|
55
|
-
${u}${
|
|
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(
|
|
60
|
-
${t.indent}${a}`}
|
|
61
|
-
${a}:`}else if(y=`${y}:`,f)y+=
|
|
62
|
-
`:"",
|
|
63
|
-
${
|
|
48
|
+
`;let d,f;for(f=r.length;f>0;--f){let w=r[f-1];if(w!==`
|
|
49
|
+
`&&w!=="\t"&&w!==" ")break}let m=r.substring(f),h=m.indexOf(`
|
|
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(am,`$&${u}`)}let g=!1,y,_=-1;for(y=0;y<r.length;++y){let w=r[y];if(w===" ")g=!0;else if(w===`
|
|
52
|
+
`)_=y;else break}let T=r.substring(0,_<y?_+1:y);if(T)r=r.substring(T.length),T=T.replace(/\n+/g,`$&${u}`);let A=(g?u?"2":"1":"")+d;if(e){if(A+=" "+a(e.replace(/ ?[\r\n]+/g," ")),o)o()}if(!l){let w=r.replace(/\n+/g,`
|
|
53
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),v=!1,S=Wc(n,!0);if(i!=="folded"&&t!==Ft.Scalar.BLOCK_FOLDED)S.onOverflow=()=>{v=!0};let I=Ur.foldFlowLines(`${T}${w}${m}`,u,Ur.FOLD_BLOCK,S);if(!v)return`>${A}
|
|
54
|
+
${u}${I}`}return r=r.replace(/\n+/g,`$&${u}`),`|${A}
|
|
55
|
+
${u}${T}${r}${m}`}function gU(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 xo(s,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(s))return a||l||!s.includes(`
|
|
57
|
+
`)?xo(s,t):Uc(e,t,r,n);if(!a&&!l&&o!==Ft.Scalar.PLAIN&&s.includes(`
|
|
58
|
+
`))return Uc(e,t,r,n);if(Vc(s)){if(c==="")return t.forceBlockIndent=!0,Uc(e,t,r,n);else if(a&&c===u)return xo(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 xo(s,t)}return a?d:Ur.foldFlowLines(d,c,Ur.FOLD_FLOW,Wc(t,!1))}function yU(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!==Ft.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value))a=Ft.Scalar.QUOTE_DOUBLE}let c=(l)=>{switch(l){case Ft.Scalar.BLOCK_FOLDED:case Ft.Scalar.BLOCK_LITERAL:return o||s?xo(i.value,t):Uc(i,t,r,n);case Ft.Scalar.QUOTE_DOUBLE:return mi(i.value,t);case Ft.Scalar.QUOTE_SINGLE:return im(i.value,t);case Ft.Scalar.PLAIN:return gU(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}bU.stringifyString=yU});var gi=E(function(TU){var _U=Dc(),Wr=ae(),vU=fi(),SU=hi();function xU(e,t){let r=Object.assign({blockQuote:!0,commentString:vU.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 kU(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(Wr.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 $U(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let o=[],s=(Wr.isScalar(e)||Wr.isCollection(e))&&e.anchor;if(s&&_U.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 EU(e,t,r,n){if(Wr.isPair(e))return e.toString(t,r,n);if(Wr.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=Wr.isNode(e)?e:t.doc.createNode(e,{onTagObj:(c)=>o=c});o??(o=kU(t.doc.schema.tags,s));let i=$U(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):Wr.isScalar(s)?SU.stringifyString(s,t,r,n):s.toString(t,r,n);if(!i)return a;return Wr.isScalar(s)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i}
|
|
60
|
+
${t.indent}${a}`}TU.createStringifyContext=xU;TU.stringify=EU});var i$=E(function(IU){var xr=ae(),o$=Ce(),s$=gi(),yi=fi();function AU({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=xr.isNode(e)&&e.comment||null;if(d){if(f)throw Error("With simple keys, key nodes cannot have comments");if(xr.isCollection(e)||!xr.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||xr.isCollection(e)||(xr.isScalar(e)?e.type===o$.Scalar.BLOCK_FOLDED||e.type===o$.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=s$.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+=yi.lineComment(y,r.indent,u(f));else if(g&&o)o();return y}if(h)f=null;if(m){if(f)y+=yi.lineComment(y,r.indent,u(f));y=`? ${y}
|
|
61
|
+
${a}:`}else if(y=`${y}:`,f)y+=yi.lineComment(y,r.indent,u(f));let _,T,x;if(xr.isNode(t))_=!!t.spaceBefore,T=t.commentBefore,x=t.comment;else if(_=!1,T=null,x=null,t&&typeof t==="object")t=i.createNode(t);if(r.implicitKey=!1,!m&&!f&&xr.isScalar(t))r.indentAtStart=y.length+1;if(g=!1,!l&&c.length>=2&&!r.inFlow&&!m&&xr.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor)r.indent=r.indent.substring(2);let A=!1,w=s$.stringify(t,r,()=>A=!0,()=>g=!0),v=" ";if(f||_||T){if(v=_?`
|
|
62
|
+
`:"",T){let S=u(T);v+=`
|
|
63
|
+
${yi.indentComment(S,r.indent)}`}if(w===""&&!r.inFlow){if(v===`
|
|
64
64
|
`&&x)v=`
|
|
65
65
|
|
|
66
66
|
`}else v+=`
|
|
67
|
-
${r.indent}`}else if(!m&&
|
|
68
|
-
`),
|
|
69
|
-
${r.indent}`}}else if(
|
|
70
|
-
`)v="";if(y+=v+
|
|
67
|
+
${r.indent}`}else if(!m&&xr.isCollection(t)){let S=w[0],I=w.indexOf(`
|
|
68
|
+
`),j=I!==-1,G=r.inFlow??t.flow??t.items.length===0;if(j||!G){let se=!1;if(j&&(S==="&"||S==="!")){let ie=w.indexOf(" ");if(S==="&"&&ie!==-1&&ie<I&&w[ie+1]==="!")ie=w.indexOf(" ",ie+1);if(ie===-1||I<ie)se=!0}if(!se)v=`
|
|
69
|
+
${r.indent}`}}else if(w===""||w[0]===`
|
|
70
|
+
`)v="";if(y+=v+w,r.inFlow){if(A&&n)n()}else if(x&&!A)y+=yi.lineComment(y,r.indent,u(x));else if(g&&o)o();return y}IU.stringifyPair=AU});var cm=E(function(NU){var a$=fr("process");function CU(e,...t){if(e==="debug")console.log(...t)}function zU(e,t){if(e==="debug"||e==="warn")if(typeof a$.emitWarning==="function")a$.emitWarning(t);else console.warn(t)}NU.debug=CU;NU.warn=zU});var Kc=E(function(MU){var Hc=ae(),c$=Ce(),Zc="<<",Bc={identify:(e)=>e===Zc||typeof e==="symbol"&&e.description===Zc,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new c$.Scalar(Symbol(Zc)),{addToJSMap:u$}),stringify:()=>Zc},DU=(e,t)=>(Bc.identify(t)||Hc.isScalar(t)&&(!t.type||t.type===c$.Scalar.PLAIN)&&Bc.identify(t.value))&&e?.doc.schema.tags.some((r)=>r.tag===Bc.tag&&r.default);function u$(e,t,r){let n=l$(e,r);if(Hc.isSeq(n))for(let o of n.items)um(e,t,o);else if(Array.isArray(n))for(let o of n)um(e,t,o);else um(e,t,n)}function um(e,t,r){let n=l$(e,r);if(!Hc.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 l$(e,t){return e&&Hc.isAlias(t)?t.resolve(e.doc,e):t}MU.addMergeToJSMap=u$;MU.isMergeKey=DU;MU.merge=Bc});var dm=E(function(HU){var WU=cm(),d$=Kc(),VU=gi(),p$=ae(),lm=Fr();function ZU(e,t,{key:r,value:n}){if(p$.isNode(r)&&r.addToJSMap)r.addToJSMap(e,t,n);else if(d$.isMergeKey(e,r))d$.addMergeToJSMap(e,t,n);else{let o=lm.toJS(r,"",e);if(t instanceof Map)t.set(o,lm.toJS(n,o,e));else if(t instanceof Set)t.add(o);else{let s=BU(r,o,e),i=lm.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 BU(e,t,r){if(t===null)return"";if(typeof t!=="object")return String(t);if(p$.isNode(e)&&r?.doc){let n=VU.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)+'..."';WU.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)}HU.addPairToJSMap=ZU});var Vr=E(function(XU){var f$=pi(),GU=i$(),JU=dm(),Gc=ae();function YU(e,t,r){let n=f$.createNode(e,void 0,r),o=f$.createNode(t,void 0,r);return new Jc(n,o)}class Jc{constructor(e,t=null){Object.defineProperty(this,Gc.NODE_TYPE,{value:Gc.PAIR}),this.key=e,this.value=t}clone(e){let{key:t,value:r}=this;if(Gc.isNode(t))t=t.clone(e);if(Gc.isNode(r))r=r.clone(e);return new Jc(t,r)}toJSON(e,t){let r=t?.mapAsMap?new Map:{};return JU.addPairToJSMap(t,r,this)}toString(e,t,r){return e?.doc?GU.stringifyPair(this,e,t,r):JSON.stringify(this)}}XU.Pair=Jc;XU.createPair=YU});var pm=E(function(oW){var Rn=ae(),m$=gi(),Yc=fi();function tW(e,t,r){return(t.inFlow??e.flow?nW:rW)(e,t,r)}function rW({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(Rn.isNode(g)){if(!d&&g.spaceBefore)f.push("");if(Xc(r,f,g.commentBefore,d),g.comment)y=g.comment}else if(Rn.isPair(g)){let T=Rn.isNode(g.key)?g.key:null;if(T){if(!d&&T.spaceBefore)f.push("");Xc(r,f,T.commentBefore,d)}}d=!1;let _=m$.stringify(g,l,()=>y=null,()=>d=!0);if(y)_+=Yc.lineComment(_,s,u(y));if(d&&y)d=!1;f.push(n+_)}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)
|
|
73
|
+
`+Yc.indentComment(u(e),c),a)a()}else if(d&&i)i();return m}function nW({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(Rn.isNode(g)){if(g.spaceBefore)d.push("");if(Xc(t,d,g.commentBefore,!1),g.comment)y=g.comment}else if(Rn.isPair(g)){let T=Rn.isNode(g.key)?g.key:null;if(T){if(T.spaceBefore)d.push("");if(Xc(t,d,T.commentBefore,!1),T.comment)u=!0}let x=Rn.isNode(g.value)?g.value:null;if(x){if(x.comment)y=x.comment;if(x.commentBefore)u=!0}else if(g.value==null&&T?.comment)y=T.comment}if(y)u=!0;let _=m$.stringify(g,c,()=>y=null);if(u||(u=d.length>l||_.includes(`
|
|
74
|
+
`)),h<e.length-1)_+=",";else if(t.options.trailingComma){if(t.options.lineWidth>0)u||(u=d.reduce((T,x)=>T+x.length+2,2)+(_.length+2)>t.options.lineWidth);if(u)_+=","}if(y)_+=Yc.lineComment(_,n,a(y));d.push(_),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}${
|
|
78
|
-
`:" ")}return
|
|
77
|
+
${o}${m}`}else return`${f}${i}${d.join(" ")}${i}${m}`}}function Xc({indent:e,options:{commentString:t}},r,n,o){if(n&&o)n=n.replace(/^\n+/,"");if(n){let s=Yc.indentComment(t(n),e);r.push(s.trimStart())}}oW.stringifyCollection=tW});var Br=E(function(lW){var iW=pm(),aW=dm(),cW=Fc(),Zr=ae(),Qc=Vr(),uW=Ce();function bi(e,t){let r=Zr.isScalar(t)?t.value:t;for(let n of e)if(Zr.isPair(n)){if(n.key===t||n.key===r)return n;if(Zr.isScalar(n.key)&&n.key.value===r)return n}return}class h$ extends cW.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(Zr.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(Qc.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(Zr.isPair(e))r=e;else if(!e||typeof e!=="object"||!("key"in e))r=new Qc.Pair(e,e?.value);else r=new Qc.Pair(e.key,e.value);let n=bi(this.items,r.key),o=this.schema?.sortMapEntries;if(n){if(!t)throw Error(`Key ${r.key} already set`);if(Zr.isScalar(n.value)&&uW.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=bi(this.items,e);if(!t)return!1;return this.items.splice(this.items.indexOf(t),1).length>0}get(e,t){let n=bi(this.items,e)?.value;return(!t&&Zr.isScalar(n)?n.value:n)??void 0}has(e){return!!bi(this.items,e)}set(e,t){this.add(new Qc.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)aW.addPairToJSMap(t,n,o);return n}toString(e,t,r){if(!e)return JSON.stringify(this);for(let n of this.items)if(!Zr.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 iW.stringifyCollection(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:r,onComment:t})}}lW.YAMLMap=h$;lW.findPair=bi});var ko=E(function(hW){var fW=ae(),g$=Br(),mW={collection:"map",default:!0,nodeClass:g$.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){if(!fW.isMap(e))t("Expected a mapping for this tag");return e},createNode:(e,t,r)=>g$.YAMLMap.from(e,t,r)};hW.map=mW});var Hr=E(function(SW){var yW=pi(),bW=pm(),wW=Fc(),tu=ae(),_W=Ce(),vW=Fr();class y$ extends wW.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(tu.SEQ,e);this.items=[]}add(e){this.items.push(e)}delete(e){let t=eu(e);if(typeof t!=="number")return!1;return this.items.splice(t,1).length>0}get(e,t){let r=eu(e);if(typeof r!=="number")return;let n=this.items[r];return!t&&tu.isScalar(n)?n.value:n}has(e){let t=eu(e);return typeof t==="number"&&t<this.items.length}set(e,t){let r=eu(e);if(typeof r!=="number")throw Error(`Expected a valid index, not ${e}.`);let n=this.items[r];if(tu.isScalar(n)&&_W.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(vW.toJS(o,String(n++),t));return r}toString(e,t,r){if(!e)return JSON.stringify(this);return bW.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(yW.createNode(i,void 0,r))}}return o}}function eu(e){let t=tu.isScalar(e)?e.value:e;if(t&&typeof t==="string")t=Number(t);return typeof t==="number"&&Number.isInteger(t)&&t>=0?t:null}SW.YAMLSeq=y$});var $o=E(function(EW){var kW=ae(),b$=Hr(),$W={collection:"seq",default:!0,nodeClass:b$.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){if(!kW.isSeq(e))t("Expected a sequence for this tag");return e},createNode:(e,t,r)=>b$.YAMLSeq.from(e,t,r)};EW.seq=$W});var wi=E(function(AW){var OW=hi(),PW={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),OW.stringifyString(e,t,r,n)}};AW.string=PW});var ru=E(function(RW){var w$=Ce(),_$={identify:(e)=>e==null,createNode:()=>new w$.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new w$.Scalar(null),stringify:({source:e},t)=>typeof e==="string"&&_$.test.test(e)?e:t.options.nullStr};RW.nullTag=_$});var fm=E(function(NW){var zW=Ce(),v$={identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(e)=>new zW.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&v$.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};NW.boolTag=v$});var Eo=E(function(DW){function jW({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}DW.stringifyNumber=jW});var hm=E(function(VW){var qW=Ce(),mm=Eo(),FW={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:mm.stringifyNumber},UW={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():mm.stringifyNumber(e)}},WW={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 qW.Scalar(parseFloat(e)),r=e.indexOf(".");if(r!==-1&&e[e.length-1]==="0")t.minFractionDigits=e.length-r-1;return t},stringify:mm.stringifyNumber};VW.float=WW;VW.floatExp=UW;VW.floatNaN=FW});var ym=E(function(YW){var S$=Eo(),nu=(e)=>typeof e==="bigint"||Number.isInteger(e),gm=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function x$(e,t,r){let{value:n}=e;if(nu(n)&&n>=0)return r+n.toString(t);return S$.stringifyNumber(e)}var KW={identify:(e)=>nu(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>gm(e,2,8,r),stringify:(e)=>x$(e,8,"0o")},GW={identify:nu,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>gm(e,0,10,r),stringify:S$.stringifyNumber},JW={identify:(e)=>nu(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>gm(e,2,16,r),stringify:(e)=>x$(e,16,"0x")};YW.int=GW;YW.intHex=JW;YW.intOct=KW});var k$=E(function(aV){var tV=ko(),rV=ru(),nV=$o(),oV=wi(),sV=fm(),bm=hm(),wm=ym(),iV=[tV.map,nV.seq,oV.string,rV.nullTag,sV.boolTag,wm.intOct,wm.int,wm.intHex,bm.floatNaN,bm.floatExp,bm.float];aV.schema=iV});var E$=E(function(hV){var uV=Ce(),lV=ko(),dV=$o();function $$(e){return typeof e==="bigint"||Number.isInteger(e)}var ou=({value:e})=>JSON.stringify(e),pV=[{identify:(e)=>typeof e==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(e)=>e,stringify:ou},{identify:(e)=>e==null,createNode:()=>new uV.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:ou},{identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(e)=>e==="true",stringify:ou},{identify:$$,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})=>$$(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:ou}],fV={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},mV=[lV.map,dV.seq].concat(pV,fV);hV.schema=mV});var vm=E(function(wV){var _i=fr("buffer"),_m=Ce(),yV=hi(),bV={identify:(e)=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof _i.Buffer==="function")return _i.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 _i.Buffer==="function")a=i instanceof _i.Buffer?i.toString("base64"):_i.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=_m.Scalar.BLOCK_LITERAL),t!==_m.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===_m.Scalar.BLOCK_LITERAL?`
|
|
78
|
+
`:" ")}return yV.stringifyString({comment:e,type:t,value:a},n,o,s)}};wV.binary=bV});var iu=E(function(kV){var su=ae(),Sm=Vr(),vV=Ce(),SV=Hr();function T$(e,t){if(su.isSeq(e))for(let r=0;r<e.items.length;++r){let n=e.items[r];if(su.isPair(n))continue;else if(su.isMap(n)){if(n.items.length>1)t("Each pair must have its own sequence indicator");let o=n.items[0]||new Sm.Pair(new vV.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]=Ga.isPair(n)?n:new pd.Pair(n)}else t("Expected a sequence for this tag");return e}function BS(e,t,r){let{replacer:n}=r,o=new Yj.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(pd.createPair(a,c,r))}return o}var Xj={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:ZS,createNode:BS};Qj.createPairs=BS;Qj.pairs=Xj;Qj.resolvePairs=ZS});var fd=k(function(sM){var WS=se(),dd=Tr(),Ns=Cr(),nM=Rr(),HS=Ja();class gn extends nM.YAMLSeq{constructor(){super();this.add=Ns.YAMLMap.prototype.add.bind(this),this.delete=Ns.YAMLMap.prototype.delete.bind(this),this.get=Ns.YAMLMap.prototype.get.bind(this),this.has=Ns.YAMLMap.prototype.has.bind(this),this.set=Ns.YAMLMap.prototype.set.bind(this),this.tag=gn.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(WS.isPair(n))o=dd.toJS(n.key,"",t),s=dd.toJS(n.value,o,t);else o=dd.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=HS.createPairs(e,t,r),o=new this;return o.items=n.items,o}}gn.tag="tag:yaml.org,2002:omap";var oM={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:gn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=HS.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(WS.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 gn,r)},createNode:(e,t,r)=>gn.from(e,t,r)};sM.YAMLOMap=gn;sM.omap=oM});var XS=k(function(cM){var KS=Ce();function GS({value:e,source:t},r){if(t&&(e?JS:YS).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var JS={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 KS.Scalar(!0),stringify:GS},YS={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 KS.Scalar(!1),stringify:GS};cM.falseTag=YS;cM.trueTag=JS});var QS=k(function(hM){var pM=Ce(),md=Xn(),dM={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:md.stringifyNumber},fM={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():md.stringifyNumber(e)}},mM={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 pM.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:md.stringifyNumber};hM.float=mM;hM.floatExp=fM;hM.floatNaN=dM});var tx=k(function(xM){var ex=Xn(),Ls=(e)=>typeof e==="bigint"||Number.isInteger(e);function Ya(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 hd(e,t,r){let{value:n}=e;if(Ls(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return ex.stringifyNumber(e)}var _M={identify:Ls,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>Ya(e,2,2,r),stringify:(e)=>hd(e,2,"0b")},wM={identify:Ls,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>Ya(e,1,8,r),stringify:(e)=>hd(e,8,"0")},vM={identify:Ls,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>Ya(e,0,10,r),stringify:ex.stringifyNumber},SM={identify:Ls,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>Ya(e,2,16,r),stringify:(e)=>hd(e,16,"0x")};xM.int=vM;xM.intBin=_M;xM.intHex=SM;xM.intOct=wM});var gd=k(function(AM){var ec=se(),Xa=Ir(),Qa=Cr();class yn extends Qa.YAMLMap{constructor(e){super(e);this.tag=yn.tag}add(e){let t;if(ec.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new Xa.Pair(e.key,null);else t=new Xa.Pair(e,null);if(!Qa.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=Qa.findPair(this.items,e);return!t&&ec.isPair(r)?ec.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=Qa.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new Xa.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(Xa.createPair(s,null,r))}return o}}yn.tag="tag:yaml.org,2002:set";var PM={collection:"map",identify:(e)=>e instanceof Set,nodeClass:yn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>yn.from(e,t,r),resolve(e,t){if(ec.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new yn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};AM.YAMLSet=yn;AM.set=PM});var bd=k(function(NM){var CM=Xn();function yd(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 rx(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return CM.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 RM={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})=>yd(e,r),stringify:rx},zM={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)=>yd(e,!1),stringify:rx},nx={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(nx.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 p=yd(l,!1);if(Math.abs(p)<30)p*=60;u-=60000*p}return new Date(u)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};NM.floatTime=zM;NM.intTime=RM;NM.timestamp=nx});var sx=k(function(GM){var DM=Jn(),qM=Wa(),FM=Yn(),UM=Rs(),VM=ld(),ox=XS(),_d=QS(),tc=tx(),ZM=Ma(),BM=fd(),WM=Ja(),HM=gd(),wd=bd(),KM=[DM.map,FM.seq,UM.string,qM.nullTag,ox.trueTag,ox.falseTag,tc.intBin,tc.intOct,tc.int,tc.intHex,_d.floatNaN,_d.floatExp,_d.float,VM.binary,ZM.merge,BM.omap,WM.pairs,HM.set,wd.intTime,wd.floatTime,wd.timestamp];GM.schema=KM});var hx=k(function(oD){var ux=Jn(),YM=Wa(),lx=Yn(),XM=Rs(),QM=rd(),vd=od(),Sd=id(),eD=FS(),tD=VS(),px=ld(),js=Ma(),dx=fd(),fx=Ja(),ix=sx(),mx=gd(),rc=bd(),ax=new Map([["core",eD.schema],["failsafe",[ux.map,lx.seq,XM.string]],["json",tD.schema],["yaml11",ix.schema],["yaml-1.1",ix.schema]]),cx={binary:px.binary,bool:QM.boolTag,float:vd.float,floatExp:vd.floatExp,floatNaN:vd.floatNaN,floatTime:rc.floatTime,int:Sd.int,intHex:Sd.intHex,intOct:Sd.intOct,intTime:rc.intTime,map:ux.map,merge:js.merge,null:YM.nullTag,omap:dx.omap,pairs:fx.pairs,seq:lx.seq,set:mx.set,timestamp:rc.timestamp},rD={"tag:yaml.org,2002:binary":px.binary,"tag:yaml.org,2002:merge":js.merge,"tag:yaml.org,2002:omap":dx.omap,"tag:yaml.org,2002:pairs":fx.pairs,"tag:yaml.org,2002:set":mx.set,"tag:yaml.org,2002:timestamp":rc.timestamp};function nD(e,t,r){let n=ax.get(t);if(n&&!e)return r&&!n.includes(js.merge)?n.concat(js.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(ax.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(js.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?cx[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(cx).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},[])}oD.coreKnownTags=rD;oD.getTags=nD});var kd=k(function(pD){var xd=se(),aD=Jn(),cD=Yn(),uD=Rs(),nc=hx(),lD=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class $d{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?nc.getTags(e,"compat"):e?nc.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?nc.coreKnownTags:{},this.tags=nc.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,xd.MAP,{value:aD.map}),Object.defineProperty(this,xd.SCALAR,{value:uD.string}),Object.defineProperty(this,xd.SEQ,{value:cD.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?lD:null}clone(){let e=Object.create($d.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}pD.Schema=$d});var gx=k(function(hD){var fD=se(),Ed=Is(),Ms=Ts();function mD(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=Ed.createStringifyContext(e,t),{commentString:s}=o.options;if(e.commentBefore){if(r.length!==1)r.unshift("");let c=s(e.commentBefore);r.unshift(Ms.indentComment(c,""))}let i=!1,a=null;if(e.contents){if(fD.isNode(e.contents)){if(e.contents.spaceBefore&&n)r.push("");if(e.contents.commentBefore){let l=s(e.contents.commentBefore);r.push(Ms.indentComment(l,""))}o.forceBlockIndent=!!e.comment,a=e.contents.comment}let c=a?void 0:()=>i=!0,u=Ed.stringify(e.contents,o,()=>a=null,c);if(a)u+=Ms.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(Ed.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]=su.isPair(n)?n:new Sm.Pair(n)}else t("Expected a sequence for this tag");return e}function O$(e,t,r){let{replacer:n}=r,o=new SV.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(Sm.createPair(a,c,r))}return o}var xV={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:T$,createNode:O$};kV.createPairs=O$;kV.pairs=xV;kV.resolvePairs=T$});var km=E(function(AV){var P$=ae(),xm=Fr(),vi=Br(),OV=Hr(),A$=iu();class Cn extends OV.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=Cn.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(P$.isPair(n))o=xm.toJS(n.key,"",t),s=xm.toJS(n.value,o,t);else o=xm.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=A$.createPairs(e,t,r),o=new this;return o.items=n.items,o}}Cn.tag="tag:yaml.org,2002:omap";var PV={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:Cn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=A$.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(P$.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 Cn,r)},createNode:(e,t,r)=>Cn.from(e,t,r)};AV.YAMLOMap=Cn;AV.omap=PV});var N$=E(function(CV){var I$=Ce();function R$({value:e,source:t},r){if(t&&(e?C$:z$).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var C$={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 I$.Scalar(!0),stringify:R$},z$={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 I$.Scalar(!1),stringify:R$};CV.falseTag=z$;CV.trueTag=C$});var L$=E(function(qV){var LV=Ce(),$m=Eo(),jV={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:$m.stringifyNumber},DV={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():$m.stringifyNumber(e)}},MV={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 LV.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:$m.stringifyNumber};qV.float=MV;qV.floatExp=DV;qV.floatNaN=jV});var D$=E(function(KV){var j$=Eo(),Si=(e)=>typeof e==="bigint"||Number.isInteger(e);function au(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 Em(e,t,r){let{value:n}=e;if(Si(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return j$.stringifyNumber(e)}var VV={identify:Si,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>au(e,2,2,r),stringify:(e)=>Em(e,2,"0b")},ZV={identify:Si,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>au(e,1,8,r),stringify:(e)=>Em(e,8,"0")},BV={identify:Si,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>au(e,0,10,r),stringify:j$.stringifyNumber},HV={identify:Si,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>au(e,2,16,r),stringify:(e)=>Em(e,16,"0x")};KV.int=BV;KV.intBin=VV;KV.intHex=HV;KV.intOct=ZV});var Tm=E(function(eZ){var lu=ae(),cu=Vr(),uu=Br();class zn extends uu.YAMLMap{constructor(e){super(e);this.tag=zn.tag}add(e){let t;if(lu.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new cu.Pair(e.key,null);else t=new cu.Pair(e,null);if(!uu.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=uu.findPair(this.items,e);return!t&&lu.isPair(r)?lu.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=uu.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new cu.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(cu.createPair(s,null,r))}return o}}zn.tag="tag:yaml.org,2002:set";var QV={collection:"map",identify:(e)=>e instanceof Set,nodeClass:zn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>zn.from(e,t,r),resolve(e,t){if(lu.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new zn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};eZ.YAMLSet=zn;eZ.set=QV});var Pm=E(function(iZ){var nZ=Eo();function Om(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 M$(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return nZ.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 oZ={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})=>Om(e,r),stringify:M$},sZ={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)=>Om(e,!1),stringify:M$},q$={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(q$.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=Om(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$/,"")??""};iZ.floatTime=sZ;iZ.intTime=oZ;iZ.timestamp=q$});var U$=E(function(_Z){var lZ=ko(),dZ=ru(),pZ=$o(),fZ=wi(),mZ=vm(),F$=N$(),Am=L$(),du=D$(),hZ=Kc(),gZ=km(),yZ=iu(),bZ=Tm(),Im=Pm(),wZ=[lZ.map,pZ.seq,fZ.string,dZ.nullTag,F$.trueTag,F$.falseTag,du.intBin,du.intOct,du.int,du.intHex,Am.floatNaN,Am.floatExp,Am.float,mZ.binary,hZ.merge,gZ.omap,yZ.pairs,bZ.set,Im.intTime,Im.floatTime,Im.timestamp];_Z.schema=wZ});var X$=E(function(PZ){var B$=ko(),SZ=ru(),H$=$o(),xZ=wi(),kZ=fm(),Rm=hm(),Cm=ym(),$Z=k$(),EZ=E$(),K$=vm(),xi=Kc(),G$=km(),J$=iu(),W$=U$(),Y$=Tm(),pu=Pm(),V$=new Map([["core",$Z.schema],["failsafe",[B$.map,H$.seq,xZ.string]],["json",EZ.schema],["yaml11",W$.schema],["yaml-1.1",W$.schema]]),Z$={binary:K$.binary,bool:kZ.boolTag,float:Rm.float,floatExp:Rm.floatExp,floatNaN:Rm.floatNaN,floatTime:pu.floatTime,int:Cm.int,intHex:Cm.intHex,intOct:Cm.intOct,intTime:pu.intTime,map:B$.map,merge:xi.merge,null:SZ.nullTag,omap:G$.omap,pairs:J$.pairs,seq:H$.seq,set:Y$.set,timestamp:pu.timestamp},TZ={"tag:yaml.org,2002:binary":K$.binary,"tag:yaml.org,2002:merge":xi.merge,"tag:yaml.org,2002:omap":G$.omap,"tag:yaml.org,2002:pairs":J$.pairs,"tag:yaml.org,2002:set":Y$.set,"tag:yaml.org,2002:timestamp":pu.timestamp};function OZ(e,t,r){let n=V$.get(t);if(n&&!e)return r&&!n.includes(xi.merge)?n.concat(xi.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(V$.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(xi.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?Z$[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(Z$).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},[])}PZ.coreKnownTags=TZ;PZ.getTags=OZ});var Lm=E(function(LZ){var zm=ae(),RZ=ko(),CZ=$o(),zZ=wi(),fu=X$(),NZ=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class Nm{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?fu.getTags(e,"compat"):e?fu.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?fu.coreKnownTags:{},this.tags=fu.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,zm.MAP,{value:RZ.map}),Object.defineProperty(this,zm.SCALAR,{value:zZ.string}),Object.defineProperty(this,zm.SEQ,{value:CZ.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?NZ:null}clone(){let e=Object.create(Nm.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}LZ.Schema=Nm});var Q$=E(function(qZ){var DZ=ae(),jm=gi(),ki=fi();function MZ(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=jm.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(DZ.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=jm.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(jm.stringify(e.contents,o));if(e.directives?.docEnd)if(e.comment){let c=s(e.comment);if(c.includes(`
|
|
81
|
+
`))r.push("..."),r.push(ki.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(ki.indentComment(s(c),""))}}return r.join(`
|
|
82
82
|
`)+`
|
|
83
|
-
`}
|
|
83
|
+
`}qZ.stringifyDocument=MZ});var $i=E(function(GZ){var UZ=di(),To=Fc(),At=ae(),WZ=Vr(),VZ=Fr(),ZZ=Lm(),BZ=Q$(),Dm=Dc(),HZ=nm(),KZ=pi(),Mm=rm();class qm{constructor(e,t,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,At.NODE_TYPE,{value:At.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 Mm.Directives({version:s});this.setSchema(s,r),this.contents=e===void 0?null:this.createNode(e,n,r)}clone(){let e=Object.create(qm.prototype,{[At.NODE_TYPE]:{value:At.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=At.isNode(this.contents)?this.contents.clone(e.schema):this.contents,this.range)e.range=this.range.slice();return e}add(e){if(Oo(this.contents))this.contents.add(e)}addIn(e,t){if(Oo(this.contents))this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let r=Dm.anchorNames(this);e.anchor=!t||r.has(t)?Dm.findNewAnchor(t||"a",r):t}return new UZ.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=(_)=>typeof _==="number"||_ instanceof String||_ 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}=Dm.createNodeAnchors(this,s||"a"),m={aliasDuplicateObjects:o??!0,keepUndefined:a??!1,onAnchor:l,onTagObj:c,replacer:n,schema:this.schema,sourceObjects:f},h=KZ.createNode(e,u,m);if(i&&At.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 WZ.Pair(n,o)}delete(e){return Oo(this.contents)?this.contents.delete(e):!1}deleteIn(e){if(To.isEmptyPath(e)){if(this.contents==null)return!1;return this.contents=null,!0}return Oo(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return At.isCollection(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){if(To.isEmptyPath(e))return!t&&At.isScalar(this.contents)?this.contents.value:this.contents;return At.isCollection(this.contents)?this.contents.getIn(e,t):void 0}has(e){return At.isCollection(this.contents)?this.contents.has(e):!1}hasIn(e){if(To.isEmptyPath(e))return this.contents!==void 0;return At.isCollection(this.contents)?this.contents.hasIn(e):!1}set(e,t){if(this.contents==null)this.contents=To.collectionFromPath(this.schema,[e],t);else if(Oo(this.contents))this.contents.set(e,t)}setIn(e,t){if(To.isEmptyPath(e))this.contents=t;else if(this.contents==null)this.contents=To.collectionFromPath(this.schema,Array.from(e),t);else if(Oo(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 Mm.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 Mm.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 ZZ.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=VZ.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"?HZ.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 BZ.stringifyDocument(this,e)}}function Oo(e){if(At.isCollection(e))return!0;throw Error("Expected a YAML collection as document contents")}GZ.Document=qm});var Ei=E(function(XZ){class mu extends Error{constructor(e,t,r,n){super();this.name=e,this.code=r,this.message=n,this.pos=t}}class eE extends mu{constructor(e,t,r){super("YAMLParseError",e,t,r)}}class tE extends mu{constructor(e,t,r){super("YAMLWarning",e,t,r)}}var YZ=(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
|
-
`+x.comment;else
|
|
92
|
-
`+v.comment;else u.comment=v.comment;
|
|
93
|
-
`+S;else
|
|
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}
|
|
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,
|
|
97
|
-
`;for(let g=l;g<a;++g){let[y,
|
|
98
|
-
`;else if(y.length>c||
|
|
88
|
+
`}};XZ.YAMLError=mu;XZ.YAMLParseError=eE;XZ.YAMLWarning=tE;XZ.prettifyError=YZ});var Ti=E(function(o4){function n4(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,_=null,T=null,x=null,A=null,w=null;for(let I of e){if(h){if(I.type!=="space"&&I.type!=="newline"&&I.type!=="comma")s(I.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");h=!1}if(g){if(u&&I.type!=="comment"&&I.type!=="newline")s(g,"TAB_AS_INDENT","Tabs are not allowed as indentation");g=null}switch(I.type){case"space":if(!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&I.source.includes("\t"))g=I;l=!0;break;case"comment":{if(!l)s(I,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let j=I.source.substring(1)||" ";if(!d)d=j;else d+=f+j;f="",u=!1;break}case"newline":if(u){if(d)d+=I.source;else if(!A||r!=="seq-item-ind")c=!0}else f+=I.source;if(u=!0,m=!0,y||_)T=I;l=!0;break;case"anchor":if(y)s(I,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(I.source.endsWith(":"))s(I.offset+I.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);y=I,w??(w=I.offset),u=!1,l=!1,h=!0;break;case"tag":{if(_)s(I,"MULTIPLE_TAGS","A node can have at most one tag");_=I,w??(w=I.offset),u=!1,l=!1,h=!0;break}case r:if(y||_)s(I,"BAD_PROP_ORDER",`Anchors and tags must be after the ${I.source} indicator`);if(A)s(I,"UNEXPECTED_TOKEN",`Unexpected ${I.source} in ${t??"collection"}`);A=I,u=r==="seq-item-ind"||r==="explicit-key-ind",l=!1;break;case"comma":if(t){if(x)s(I,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`);x=I,u=!1,l=!1;break}default:s(I,"UNEXPECTED_TOKEN",`Unexpected ${I.type} token`),u=!1,l=!1}}let v=e[e.length-1],S=v?v.offset+v.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:x,found:A,spaceBefore:c,comment:d,hasNewline:m,anchor:y,tag:_,newlineAfterProp:T,end:S,start:w??S}}o4.resolveProps=n4});var hu=E(function(i4){function Fm(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(Fm(t.key)||Fm(t.value))return!0}return!1;default:return!0}}i4.containsNewline=Fm});var Um=E(function(l4){var c4=hu();function u4(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];if(n.indent===e&&(n.source==="]"||n.source==="}")&&c4.containsNewline(t))r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}l4.flowIndentCheck=u4});var Wm=E(function(f4){var rE=ae();function p4(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let o=typeof n==="function"?n:(s,i)=>s===i||rE.isScalar(s)&&rE.isScalar(i)&&s.value===i.value;return t.some((s)=>o(s.key,r))}f4.mapIncludes=p4});var aE=E(function(w4){var nE=Vr(),h4=Br(),oE=Ti(),g4=hu(),sE=Um(),y4=Wm(),iE="All mapping items must start at the same column";function b4({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??h4.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=oE.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",iE)}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||g4.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",iE);r.atKey=!0;let _=g.end,T=f?e(r,f,g,o):t(r,_,d,null,g,o);if(r.schema.compat)sE.flowIndentCheck(n.indent,f,o);if(r.atKey=!1,y4.mapIncludes(r,a.items,T))o(_,"DUPLICATE_KEY","Map keys must be unique");let x=oE.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=x.end,x.found){if(y){if(h?.type==="block-map"&&!x.hasNewline)o(c,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(r.options.strict&&g.start<x.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 A=h?e(r,h,x,o):t(r,c,m,null,x,o);if(r.schema.compat)sE.flowIndentCheck(n.indent,h,o);c=A.range[2];let w=new nE.Pair(T,A);if(r.options.keepSourceTokens)w.srcToken=l;a.items.push(w)}else{if(y)o(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(x.comment)if(T.comment)T.comment+=`
|
|
91
|
+
`+x.comment;else T.comment=x.comment;let A=new nE.Pair(T);if(r.options.keepSourceTokens)A.srcToken=l;a.items.push(A)}}if(u&&u<c)o(u,"IMPOSSIBLE","Map comment with trailing content");return a.range=[n.offset,c,u??c],a}w4.resolveBlockMap=b4});var cE=E(function($4){var v4=Hr(),S4=Ti(),x4=Um();function k4({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??v4.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=S4.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)x4.flowIndentCheck(n.indent,d,o);c=m.range[2],a.items.push(m)}return a.range=[n.offset,c,u??c],a}$4.resolveBlockSeq=k4});var Po=E(function(O4){function T4(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}}O4.resolveEnd=T4});var dE=E(function(j4){var A4=ae(),I4=Vr(),uE=Br(),R4=Hr(),C4=Po(),lE=Ti(),z4=hu(),N4=Wm(),Vm="Block collections are not allowed within flow collections",Zm=(e)=>e&&(e.type==="block-map"||e.type==="block-seq");function L4({composeNode:e,composeEmptyNode:t},r,n,o,s){let i=n.start.source==="{",a=i?"flow map":"flow sequence",u=new(s?.nodeClass??(i?uE.YAMLMap:R4.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 _=n.items[y],{start:T,key:x,sep:A,value:w}=_,v=lE.resolveProps(T,{flow:a,indicator:"explicit-key-ind",next:x??A?.[0],offset:d,onError:o,parentIndent:n.indent,startOnNewline:!1});if(!v.found){if(!v.anchor&&!v.tag&&!A&&!w){if(y===0&&v.comma)o(v.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`);else if(y<n.items.length-1)o(v.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${a}`);if(v.comment)if(u.comment)u.comment+=`
|
|
92
|
+
`+v.comment;else u.comment=v.comment;d=v.end;continue}if(!i&&r.options.strict&&z4.containsNewline(x))o(x,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(y===0){if(v.comma)o(v.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`)}else{if(!v.comma)o(v.start,"MISSING_CHAR",`Missing , between ${a} items`);if(v.comment){let S="";e:for(let I of T)switch(I.type){case"comma":case"space":break;case"comment":S=I.source.substring(1);break e;default:break e}if(S){let I=u.items[u.items.length-1];if(A4.isPair(I))I=I.value??I.key;if(I.comment)I.comment+=`
|
|
93
|
+
`+S;else I.comment=S;v.comment=v.comment.substring(S.length+1)}}}if(!i&&!A&&!v.found){let S=w?e(r,w,v,o):t(r,v.end,A,null,v,o);if(u.items.push(S),d=S.range[2],Zm(w))o(S.range,"BLOCK_IN_FLOW",Vm)}else{r.atKey=!0;let S=v.end,I=x?e(r,x,v,o):t(r,S,T,null,v,o);if(Zm(x))o(I.range,"BLOCK_IN_FLOW",Vm);r.atKey=!1;let j=lE.resolveProps(A??[],{flow:a,indicator:"map-value-ind",next:w,offset:I.range[2],onError:o,parentIndent:n.indent,startOnNewline:!1});if(j.found){if(!i&&!v.found&&r.options.strict){if(A)for(let ie of A){if(ie===j.found)break;if(ie.type==="newline"){o(ie,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(v.start<j.found.offset-1024)o(j.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(w)if("source"in w&&w.source?.[0]===":")o(w,"MISSING_CHAR",`Missing space after : in ${a}`);else o(j.start,"MISSING_CHAR",`Missing , or : between ${a} items`);let G=w?e(r,w,j,o):j.found?t(r,j.end,A,null,j,o):null;if(G){if(Zm(w))o(G.range,"BLOCK_IN_FLOW",Vm)}else if(j.comment)if(I.comment)I.comment+=`
|
|
94
|
+
`+j.comment;else I.comment=j.comment;let se=new I4.Pair(I,G);if(r.options.keepSourceTokens)se.srcToken=_;if(i){let ie=u;if(N4.mapIncludes(r,ie.items,I))o(S,"DUPLICATE_KEY","Map keys must be unique");ie.items.push(se)}else{let ie=new uE.YAMLMap(r.schema);ie.flow=!0,ie.items.push(se);let Le=(G??I).range;ie.range=[I.range[0],Le[1],Le[2]],u.items.push(ie)}d=G?G.range[2]:j.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),_=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",_),m&&m.source.length!==1)h.unshift(m)}if(h.length>0){let y=C4.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}j4.resolveFlowCollection=L4});var pE=E(function(H4){var M4=ae(),q4=Ce(),F4=Br(),U4=Hr(),W4=aE(),V4=cE(),Z4=dE();function Bm(e,t,r,n,o,s){let i=r.type==="block-map"?W4.resolveBlockMap(e,t,r,n,s):r.type==="block-seq"?V4.resolveBlockSeq(e,t,r,n,s):Z4.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 B4(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===F4.YAMLMap.tagName&&a==="map"||i===U4.YAMLSeq.tagName&&a==="seq")return Bm(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 Bm(e,t,r,o,i)}}let u=Bm(e,t,r,o,i,c),l=c.resolve?.(u,(f)=>o(s,"TAG_RESOLVE_FAILED",f),t.options)??u,d=M4.isNode(l)?l:new q4.Scalar(l);if(d.range=u.range,d.tag=i,c?.format)d.format=c.format;return d}H4.composeCollection=B4});var Km=E(function(X4){var Hm=Ce();function G4(e,t,r){let n=t.offset,o=J4(t,e.options.strict,r);if(!o)return{value:"",type:null,comment:"",range:[n,n,n]};let s=o.mode===">"?Hm.Scalar.BLOCK_FOLDED:Hm.Scalar.BLOCK_LITERAL,i=t.source?Y4(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
|
+
`.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,_]=i[g];if(_===""||_==="\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+_.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,_]=i[g];u+=y.length+_.length+1;let T=_[_.length-1]==="\r";if(T)_=_.slice(0,-1);if(_&&y.length<c){let A=`Block scalar lines must not be less indented than their ${o.indent?"explicit indentation indicator":"first line"}`;r(u-_.length-(T?2:1),"BAD_INDENT",A),y=""}if(s===Hm.Scalar.BLOCK_LITERAL)d+=f+y.slice(c)+_,f=`
|
|
98
|
+
`;else if(y.length>c||_[0]==="\t"){if(f===" ")f=`
|
|
99
99
|
`;else if(!m&&f===`
|
|
100
100
|
`)f=`
|
|
101
101
|
|
|
102
|
-
`;
|
|
103
|
-
`,m=!0}else if(
|
|
104
|
-
`)
|
|
102
|
+
`;d+=f+y.slice(c)+_,f=`
|
|
103
|
+
`,m=!0}else if(_==="")if(f===`
|
|
104
|
+
`)d+=`
|
|
105
105
|
`;else f=`
|
|
106
|
-
`;else
|
|
107
|
-
`+i[g][0].slice(c);if(
|
|
108
|
-
`)
|
|
109
|
-
`;break;default:
|
|
110
|
-
`}let h=n+o.length+t.source.length;return{value:
|
|
106
|
+
`;else d+=f+_,f=" ",m=!1}switch(o.chomp){case"-":break;case"+":for(let g=a;g<i.length;++g)d+=`
|
|
107
|
+
`+i[g][0].slice(c);if(d[d.length-1]!==`
|
|
108
|
+
`)d+=`
|
|
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 J4({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 Y4(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}X4.resolveBlockScalar=G4});var Jm=E(function(c9){var Gm=Ce(),e9=Po();function t9(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=Gm.Scalar.PLAIN,c=r9(s,u);break;case"single-quoted-scalar":a=Gm.Scalar.QUOTE_SINGLE,c=n9(s,u);break;case"double-quoted-scalar":a=Gm.Scalar.QUOTE_DOUBLE,c=o9(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=e9.resolveEnd(i,l,t,r);return{value:c,type:a,comment:d.comment,range:[n,l,d.offset]}}function r9(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 fE(e)}function n9(e,t){if(e[e.length-1]!=="'"||e.length===1)t(e.length,"MISSING_CHAR","Missing closing 'quote");return fE(e.slice(1,-1)).replace(/''/g,"'")}function fE(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 o9(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}=s9(e,n);r+=s,n=i}else if(o==="\\"){let s=e[++n],i=i9[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+=a9(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 s9(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 i9={"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 a9(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}}c9.resolveFlowScalar=t9});var hE=E(function(h9){var Nn=ae(),mE=Ce(),l9=Km(),d9=Jm();function p9(e,t,r,n){let{value:o,type:s,comment:i,range:a}=t.type==="block-scalar"?l9.resolveBlockScalar(e,t,n):d9.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[Nn.SCALAR];else if(c)u=f9(e.schema,o,c,r,n);else if(t.type==="scalar")u=m9(e,o,t,n);else u=e.schema[Nn.SCALAR];let l;try{let d=u.resolve(o,(f)=>n(r??t,"TAG_RESOLVE_FAILED",f),e.options);l=Nn.isScalar(d)?d:new mE.Scalar(d)}catch(d){let f=d instanceof Error?d.message:String(d);n(r??t,"TAG_RESOLVE_FAILED",f),l=new mE.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 f9(e,t,r,n,o){if(r==="!")return e[Nn.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[Nn.SCALAR]}function m9({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[Nn.SCALAR];if(r.compat){let a=r.compat.find((c)=>c.default&&c.test?.test(n))??r[Nn.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}h9.composeScalar=p9});var gE=E(function(b9){function y9(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}b9.emptyScalarPosition=y9});var wE=E(function(T9){var _9=di(),v9=ae(),S9=pE(),yE=hE(),x9=Po(),k9=gE(),$9={composeNode:bE,composeEmptyNode:Ym};function bE(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=E9(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=yE.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=S9.composeCollection($9,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=Ym(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&&(!v9.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 Ym(e,t,r,n,{spaceBefore:o,comment:s,anchor:i,tag:a,end:c},u){let l={type:"scalar",offset:k9.emptyScalarPosition(t,r,n),indent:-1,source:""},d=yE.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 E9({options:e},{offset:t,source:r,end:n},o){let s=new _9.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=x9.resolveEnd(n,i,e.strict,o);if(s.range=[t,i,a.offset],a.comment)s.comment=a.comment;return s}T9.composeEmptyNode=Ym;T9.composeNode=bE});var vE=E(function(z9){var A9=$i(),_E=wE(),I9=Po(),R9=Ti();function C9(e,t,{offset:r,start:n,value:o,end:s},i){let a=Object.assign({_directives:t},e),c=new A9.Document(void 0,a),u={atKey:!1,atRoot:!0,directives:c.directives,options:c.options,schema:c.schema},l=R9.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?_E.composeNode(u,o,l,i):_E.composeEmptyNode(u,l.end,n,null,l,i);let d=c.contents.range[2],f=I9.resolveEnd(s,d,!1,i);if(f.comment)c.comment=f.comment;return c.range=[r,d,f.offset],c}z9.composeDoc=C9});var Xm=E(function(F9){var L9=fr("process"),j9=rm(),D9=$i(),Oi=Ei(),SE=ae(),M9=vE(),q9=Po();function Pi(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 xE(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 kE{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(t,r,n,o)=>{let s=Pi(t);if(o)this.warnings.push(new Oi.YAMLWarning(s,r,n));else this.errors.push(new Oi.YAMLParseError(s,r,n))},this.directives=new j9.Directives({version:e.version||"1.2"}),this.options=e}decorate(e,t){let{comment:r,afterEmptyLine:n}=xE(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(SE.isCollection(o)&&!o.flow&&o.items.length>0){let s=o.items[0];if(SE.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:xE(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(L9.env.LOG_STREAM)console.dir(e,{depth:null});switch(e.type){case"directive":this.directives.add(e.source,(t,r,n)=>{let o=Pi(e);o[0]+=t,this.onError(o,"BAD_DIRECTIVE",r,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let t=M9.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 Oi.YAMLParseError(Pi(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 Oi.YAMLParseError(Pi(e),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let t=q9.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 Oi.YAMLParseError(Pi(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 D9.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}}}F9.Composer=kE});var TE=E(function(J9){var W9=Km(),V9=Jm(),Z9=Ei(),$E=hi();function B9(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 Z9.YAMLParseError([a,a+1],s,i)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return V9.resolveFlowScalar(e,t,n);case"block-scalar":return W9.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function H9(e,t){let{implicitKey:r=!1,indent:n,inFlow:o=!1,offset:s=-1,type:i="PLAIN"}=t,a=$E.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
|
-
`),l=a.substring(0,u),
|
|
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:
|
|
134
|
+
`),l=a.substring(0,u),d=a.substring(u+1)+`
|
|
135
|
+
`,f=[{type:"block-scalar-header",offset:s,indent:n,source:l}];if(!EE(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 K9(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=$E.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">":G9(e,c);break;case'"':Qm(e,c,"double-quoted-scalar");break;case"'":Qm(e,c,"single-quoted-scalar");break;default:Qm(e,c,"scalar")}}function G9(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(!EE(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 EE(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 Qm(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})}}}J9.createScalarToken=H9;J9.resolveAsScalar=B9;J9.setScalarValue=K9});var OE=E(function(tB){var eB=(e)=>("type"in e)?yu(e):gu(e);function yu(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=yu(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=gu(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=gu(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=gu(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 gu({start:e,key:t,sep:r,value:n}){let o="";for(let s of e)o+=s.source;if(t)o+=yu(t);if(r)for(let s of r)o+=s.source;if(n)o+=yu(n);return o}tB.stringify=eB});var IE=E(function(oB){var eh=Symbol("break visit"),nB=Symbol("skip children"),PE=Symbol("remove item");function Ln(e,t){if("type"in e&&e.type==="document")e={start:e.start,value:e.value};AE(Object.freeze([]),e,t)}Ln.BREAK=eh;Ln.SKIP=nB;Ln.REMOVE=PE;Ln.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};Ln.parentCollection=(e,t)=>{let r=Ln.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 AE(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=AE(Object.freeze(e.concat([[o,i]])),s.items[i],r);if(typeof a==="number")i=a-1;else if(a===eh)return eh;else if(a===PE)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}oB.visit=Ln});var bu=E(function(pB){var th=TE(),iB=OE(),aB=IE(),rh="\uFEFF",nh="\x02",oh="\x18",sh="\x1F",cB=(e)=>!!e&&("items"in e),uB=(e)=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function lB(e){switch(e){case rh:return"<BOM>";case nh:return"<DOC>";case oh:return"<FLOW_END>";case sh:return"<SCALAR>";default:return JSON.stringify(e)}}function dB(e){switch(e){case rh:return"byte-order-mark";case nh:return"doc-mode";case oh:return"flow-error-end";case sh: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}pB.createScalarToken=th.createScalarToken;pB.resolveAsScalar=th.resolveAsScalar;pB.setScalarValue=th.setScalarValue;pB.stringify=iB.stringify;pB.visit=aB.visit;pB.BOM=rh;pB.DOCUMENT=nh;pB.FLOW_END=oh;pB.SCALAR=sh;pB.isCollection=cB;pB.isScalar=uB;pB.prettyToken=lB;pB.tokenType=dB});var ah=E(function(OB){var Ai=bu();function Ut(e){switch(e){case void 0:case" ":case`
|
|
143
|
+
`:case"\r":case"\t":return!0;default:return!1}}var RE=new Set("0123456789ABCDEFabcdef"),EB=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),wu=new Set(",[]{}"),TB=new Set(` ,[]{}
|
|
144
|
+
\r `),ih=(e)=>!e||TB.has(e);class CE{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==="...")&&Ut(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]===Ai.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 Ai.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==="...")&&Ut(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&&!Ut(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===":")&&Ut(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(ih),"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("..."))&&Ut(n[3])){if(!(r===this.indentNext-1&&this.flowLevel===1&&(n[0]==="]"||n[0]==="}")))return this.flowLevel=0,yield Ai.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(ih),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let s=this.charAt(1);if(this.flowKey||Ut(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)=>Ut(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 Ai.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(Ut(o)||e&&wu.has(o))break;t=r}else if(Ut(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&&wu.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&&wu.has(n))break;t=r}if(!n&&!this.atEnd)return this.setNext("plain-scalar");return yield Ai.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(ih),e+=yield*this.pushSpaces(!0);continue e;case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(Ut(r)||t&&wu.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(!Ut(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(EB.has(t))t=this.buffer[++e];else if(t==="%"&&RE.has(this.buffer[e+1])&&RE.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)}}OB.Lexer=CE});var ch=E(function(AB){class zE{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}}}}AB.LineCounter=zE});var uh=E(function(zB){var RB=fr("process"),NE=bu(),CB=ah();function Kr(e,t){for(let r=0;r<e.length;++r)if(e[r].type===t)return!0;return!1}function LE(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 DE(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 _u(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 Ao(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 vu(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 jE(e){if(e.start.type==="flow-seq-start"){for(let t of e.items)if(t.sep&&!t.value&&!Kr(t.start,"explicit-key-ind")&&!Kr(t.sep,"map-value-ind")){if(t.key)t.value=t.key;if(delete t.key,DE(t.value))if(t.value.end)vu(t.value.end,t.sep);else t.value.end=t.sep;else vu(t.start,t.sep);delete t.sep}}}class ME{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 CB.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,RB.env.LOG_TOKENS)console.log("|",NE.prettyToken(e));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=NE.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")jE(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&&LE(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(LE(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=_u(this.peek(2)),r=Ao(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)){vu(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(Kr(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let s=Ao(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(Kr(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(DE(t.key)&&!Kr(t.sep,"newline")){let s=Ao(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(Kr(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&&!Kr(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)){vu(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||Kr(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=_u(r),o=Ao(n);jE(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=lc(e),r=ro(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=lc(e),r=ro(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()}}}uF.Parser=r0});var a0=k(function(bF){var n0=Fd(),pF=Ds(),Bs=qs(),dF=Yp(),fF=se(),mF=Yd(),o0=Xd();function s0(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new mF.LineCounter||null,prettyErrors:t}}function hF(e,t={}){let{lineCounter:r,prettyErrors:n}=s0(t),o=new o0.Parser(r?.addNewLine),s=new n0.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(Bs.prettifyError(e,r)),a.warnings.forEach(Bs.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function i0(e,t={}){let{lineCounter:r,prettyErrors:n}=s0(t),o=new o0.Parser(r?.addNewLine),s=new n0.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 Bs.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(Bs.prettifyError(e,r)),i.warnings.forEach(Bs.prettifyError(e,r));return i}function gF(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=i0(e,r);if(!o)return null;if(o.warnings.forEach((s)=>dF.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 yF(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(fF.isDocument(e)&&!n)return e.toString(r);return new pF.Document(e,n,r).toString(r)}bF.parse=gF;bF.parseAllDocuments=hF;bF.parseDocument=i0;bF.stringify=yF});var ci=k(function(X$){Object.defineProperty(X$,"__esModule",{value:!0});X$.regexpCode=X$.getEsmExportName=X$.getProperty=X$.safeStringify=X$.stringify=X$.strConcat=X$.addCodeArg=X$.str=X$._=X$.nil=X$._Code=X$.Name=X$.IDENTIFIER=X$._CodeOrName=void 0;class Bc{}X$._CodeOrName=Bc;X$.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class fo extends Bc{constructor(e){super();if(!X$.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}}}X$.Name=fo;class jt extends Bc{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 fo)t[r.str]=(t[r.str]||0)+1;return t},{})}}X$._Code=jt;X$.nil=new jt("");function J$(e,...t){let r=[e[0]],n=0;while(n<t.length)Gf(r,t[n]),r.push(e[++n]);return new jt(r)}X$._=J$;var Kf=new jt("+");function Y$(e,...t){let r=[ai(e[0])],n=0;while(n<t.length)r.push(Kf),Gf(r,t[n]),r.push(Kf,ai(e[++n]));return C9(r),new jt(r)}X$.str=Y$;function Gf(e,t){if(t instanceof jt)e.push(...t._items);else if(t instanceof fo)e.push(t);else e.push(N9(t))}X$.addCodeArg=Gf;function C9(e){let t=1;while(t<e.length-1){if(e[t]===Kf){let r=R9(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function R9(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof fo||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 fo))return`"${e}${t.slice(1)}`;return}function z9(e,t){return t.emptyStr()?e:e.emptyStr()?t:Y$`${e}${t}`}X$.strConcat=z9;function N9(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:ai(Array.isArray(e)?e.join(","):e)}function L9(e){return new jt(ai(e))}X$.stringify=L9;function ai(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}X$.safeStringify=ai;function j9(e){return typeof e=="string"&&X$.IDENTIFIER.test(e)?new jt(`.${e}`):J$`[${e}]`}X$.getProperty=j9;function M9(e){if(typeof e=="string"&&X$.IDENTIFIER.test(e))return new jt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}X$.getEsmExportName=M9;function D9(e){return new jt(e.toString())}X$.regexpCode=D9});var Qf=k(function(rk){Object.defineProperty(rk,"__esModule",{value:!0});rk.ValueScope=rk.ValueScopeName=rk.Scope=rk.varKinds=rk.UsedValueState=void 0;var he=ci();class ek extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var Hc;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Hc||(rk.UsedValueState=Hc={}));rk.varKinds={const:new he.Name("const"),let:new he.Name("let"),var:new he.Name("var")};class Yf{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof he.Name?e:this.name(e)}name(e){return new he.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}}}rk.Scope=Yf;class Xf extends he.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=he._`.${new he.Name(t)}[${r}]`}}rk.ValueScopeName=Xf;var X9=he._`\n`;class tk extends Yf{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?X9:he.nil}}get(){return this._scope}name(e){return new Xf(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 he._`${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=he.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,Hc.Started);let u=t(c);if(u){let l=this.opts.es5?rk.varKinds.var:rk.varKinds.const;o=he._`${o}${l} ${c} = ${u};${this.opts._n}`}else if(u=n===null||n===void 0?void 0:n(c))o=he._`${o}${u}${this.opts._n}`;else throw new ek(c);a.set(c,Hc.Completed)})}return o}}rk.ValueScope=tk});var X=k(function(nt){Object.defineProperty(nt,"__esModule",{value:!0});nt.or=nt.and=nt.not=nt.CodeGen=nt.operators=nt.varKinds=nt.ValueScopeName=nt.ValueScope=nt.Scope=nt.Name=nt.regexpCode=nt.stringify=nt.getProperty=nt.nil=nt.strConcat=nt.str=nt._=void 0;var M=ci(),Ee=Qf(),Dr=ci();Object.defineProperty(nt,"_",{enumerable:!0,get:function(){return Dr._}});Object.defineProperty(nt,"str",{enumerable:!0,get:function(){return Dr.str}});Object.defineProperty(nt,"strConcat",{enumerable:!0,get:function(){return Dr.strConcat}});Object.defineProperty(nt,"nil",{enumerable:!0,get:function(){return Dr.nil}});Object.defineProperty(nt,"getProperty",{enumerable:!0,get:function(){return Dr.getProperty}});Object.defineProperty(nt,"stringify",{enumerable:!0,get:function(){return Dr.stringify}});Object.defineProperty(nt,"regexpCode",{enumerable:!0,get:function(){return Dr.regexpCode}});Object.defineProperty(nt,"Name",{enumerable:!0,get:function(){return Dr.Name}});var Qc=Qf();Object.defineProperty(nt,"Scope",{enumerable:!0,get:function(){return Qc.Scope}});Object.defineProperty(nt,"ValueScope",{enumerable:!0,get:function(){return Qc.ValueScope}});Object.defineProperty(nt,"ValueScopeName",{enumerable:!0,get:function(){return Qc.ValueScopeName}});Object.defineProperty(nt,"varKinds",{enumerable:!0,get:function(){return Qc.varKinds}});nt.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 qr{optimizeNodes(){return this}optimizeNames(e,t){return this}}class ok extends qr{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Ee.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=ho(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class rm extends qr{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=ho(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Xc(e,this.rhs)}}class sk extends rm{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class ik extends qr{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class ak extends qr{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class ck extends qr{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class uk extends qr{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=ho(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class eu extends qr{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;rB(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>$n(e,t.names),{})}}class Fr extends eu{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class lk extends eu{}class ui extends Fr{}ui.kind="else";class mr extends Fr{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 ui(r):r}if(t){if(e===!1)return t instanceof mr?t:t.nodes;if(this.nodes.length)return this;return new mr(hk(e),t instanceof mr?[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=ho(this.condition,e,t),this}get names(){let e=super.names;if(Xc(e,this.condition),this.else)$n(e,this.else.names);return e}}mr.kind="if";class mo extends Fr{}mo.kind="for";class pk extends mo{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=ho(this.iteration,e,t),this}get names(){return $n(super.names,this.iteration.names)}}class dk extends mo{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Ee.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=Xc(super.names,this.from);return Xc(e,this.to)}}class em extends mo{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=ho(this.iterable,e,t),this}get names(){return $n(super.names,this.iterable.names)}}class Kc extends Fr{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)}}Kc.kind="func";class Gc extends eu{render(e){return"return "+super.render(e)}}Gc.kind="return";class fk extends Fr{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)$n(e,this.catch.names);if(this.finally)$n(e,this.finally.names);return e}}class Jc extends Fr{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Jc.kind="catch";class Yc extends Fr{render(e){return"finally"+super.render(e)}}Yc.kind="finally";class mk{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
166
|
-
`:""},this._extScope=e,this._scope=new Ee.Scope({parent:e}),this._nodes=[new lk]}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 ok(e,o,r)),o}const(e,t,r){return this._def(Ee.varKinds.const,e,t,r)}let(e,t,r){return this._def(Ee.varKinds.let,e,t,r)}var(e,t,r){return this._def(Ee.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new rm(e,t,r))}add(e,t){return this._leafNode(new sk(e,nt.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new uk(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 mr(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 mr(e))}else(){return this._elseNode(new ui)}endIf(){return this._endBlockNode(mr,ui)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new pk(e),t)}forRange(e,t,r,n,o=this.opts.es5?Ee.varKinds.var:Ee.varKinds.let){let s=this._scope.toName(e);return this._for(new dk(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Ee.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 em("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Ee.varKinds.var:Ee.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 em("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(mo)}label(e){return this._leafNode(new ik(e))}break(e){return this._leafNode(new ak(e))}return(e){let t=new Gc;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Gc)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new fk;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new Jc(o),t(o)}if(r)this._currNode=n.finally=new Yc,this.code(r);return this._endBlockNode(Jc,Yc)}throw(e){return this._leafNode(new ck(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 Kc(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Kc)}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 mr))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}}nt.CodeGen=mk;function $n(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Xc(e,t){return t instanceof M._CodeOrName?$n(e,t.names):e}function ho(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 rB(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function hk(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${tm(e)}`}nt.not=hk;var nB=gk(nt.operators.AND);function oB(...e){return e.reduce(nB)}nt.and=oB;var sB=gk(nt.operators.OR);function iB(...e){return e.reduce(sB)}nt.or=iB;function gk(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${tm(t)} ${e} ${tm(r)}`}function tm(e){return e instanceof M.Name?e:M._`(${e})`}});var ie=k(function(Ek){Object.defineProperty(Ek,"__esModule",{value:!0});Ek.checkStrictMode=Ek.getErrorPath=Ek.Type=Ek.useFunc=Ek.setEvaluated=Ek.evaluatedPropsToName=Ek.mergeEvaluated=Ek.eachItem=Ek.unescapeJsonPointer=Ek.escapeJsonPointer=Ek.escapeFragment=Ek.unescapeFragment=Ek.schemaRefOrVal=Ek.schemaHasRulesButRef=Ek.schemaHasRules=Ek.checkUnknownRules=Ek.alwaysValidSchema=Ek.toHash=void 0;var W=X(),wk=ci();function lB(e){let t={};for(let r of e)t[r]=!0;return t}Ek.toHash=lB;function pB(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return vk(e,t),!Sk(t,e.self.RULES.all)}Ek.alwaysValidSchema=pB;function vk(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])kk(e,`unknown keyword: "${s}"`)}Ek.checkUnknownRules=vk;function Sk(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Ek.schemaHasRules=Sk;function dB(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Ek.schemaHasRulesButRef=dB;function fB({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return W._`${r}`}return W._`${e}${t}${W.getProperty(n)}`}Ek.schemaRefOrVal=fB;function mB(e){return xk(decodeURIComponent(e))}Ek.unescapeFragment=mB;function hB(e){return encodeURIComponent(om(e))}Ek.escapeFragment=hB;function om(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}Ek.escapeJsonPointer=om;function xk(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Ek.unescapeJsonPointer=xk;function gB(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Ek.eachItem=gB;function bk({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof W.Name?(s instanceof W.Name?e(o,s,i):t(o,s,i),i):s instanceof W.Name?(t(o,i,s),s):r(s,i);return a===W.Name&&!(c instanceof W.Name)?n(o,c):c}}Ek.mergeEvaluated={props:bk({mergeNames:(e,t,r)=>e.if(W._`${r} !== true && ${t} !== undefined`,()=>{e.if(W._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,W._`${r} || {}`).code(W._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(W._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,W._`${r} || {}`),sm(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:$k}),items:bk({mergeNames:(e,t,r)=>e.if(W._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,W._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(W._`${r} !== true`,()=>e.assign(r,t===!0?!0:W._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function $k(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",W._`{}`);if(t!==void 0)sm(e,r,t);return r}Ek.evaluatedPropsToName=$k;function sm(e,t,r){Object.keys(r).forEach((n)=>e.assign(W._`${t}${W.getProperty(n)}`,!0))}Ek.setEvaluated=sm;var _k={};function yB(e,t){return e.scopeValue("func",{ref:t,code:_k[t.code]||(_k[t.code]=new wk._Code(t.code))})}Ek.useFunc=yB;var nm;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(nm||(Ek.Type=nm={}));function bB(e,t,r){if(e instanceof W.Name){let n=t===nm.Num;return r?n?W._`"[" + ${e} + "]"`:W._`"['" + ${e} + "']"`:n?W._`"/" + ${e}`:W._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?W.getProperty(e).toString():"/"+om(e)}Ek.getErrorPath=bB;function kk(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}Ek.checkStrictMode=kk});var hr=k(function(Pk){Object.defineProperty(Pk,"__esModule",{value:!0});var ce=X(),LB={data:new ce.Name("data"),valCxt:new ce.Name("valCxt"),instancePath:new ce.Name("instancePath"),parentData:new ce.Name("parentData"),parentDataProperty:new ce.Name("parentDataProperty"),rootData:new ce.Name("rootData"),dynamicAnchors:new ce.Name("dynamicAnchors"),vErrors:new ce.Name("vErrors"),errors:new ce.Name("errors"),this:new ce.Name("this"),self:new ce.Name("self"),scope:new ce.Name("scope"),json:new ce.Name("json"),jsonPos:new ce.Name("jsonPos"),jsonLen:new ce.Name("jsonLen"),jsonPart:new ce.Name("jsonPart")};Pk.default=LB});var li=k(function(Ck){Object.defineProperty(Ck,"__esModule",{value:!0});Ck.extendErrors=Ck.resetErrorsCount=Ck.reportExtraError=Ck.reportError=Ck.keyword$DataError=Ck.keywordError=void 0;var D=X(),Ur=ie(),Xe=hr();Ck.keywordError={message:({keyword:e})=>D.str`must pass "${e}" keyword validation`};Ck.keyword$DataError={message:({keyword:e,schemaType:t})=>t?D.str`"${e}" keyword must be ${t} ($data)`:D.str`"${e}" keyword is invalid ($data)`};function MB(e,t=Ck.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=Ok(e,t,r);if(n!==null&&n!==void 0?n:i||a)Ak(s,c);else Ik(o,D._`[${c}]`)}Ck.reportError=MB;function DB(e,t=Ck.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=Ok(e,t,r);if(Ak(o,a),!(s||i))Ik(n,Xe.default.vErrors)}Ck.reportExtraError=DB;function qB(e,t){e.assign(Xe.default.errors,t),e.if(D._`${Xe.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(D._`${Xe.default.vErrors}.length`,t),()=>e.assign(Xe.default.vErrors,null)))}Ck.resetErrorsCount=qB;function FB({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,Xe.default.errors,(a)=>{if(e.const(i,D._`${Xe.default.vErrors}[${a}]`),e.if(D._`${i}.instancePath === undefined`,()=>e.assign(D._`${i}.instancePath`,D.strConcat(Xe.default.instancePath,s.errorPath))),e.assign(D._`${i}.schemaPath`,D.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(D._`${i}.schema`,r),e.assign(D._`${i}.data`,n)})}Ck.extendErrors=FB;function Ak(e,t){let r=e.const("err",t);e.if(D._`${Xe.default.vErrors} === null`,()=>e.assign(Xe.default.vErrors,D._`[${r}]`),D._`${Xe.default.vErrors}.push(${r})`),e.code(D._`${Xe.default.errors}++`)}function Ik(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(D._`new ${e.ValidationError}(${t})`);else r.assign(D._`${n}.errors`,t),r.return(!1)}var kn={keyword:new D.Name("keyword"),schemaPath:new D.Name("schemaPath"),params:new D.Name("params"),propertyName:new D.Name("propertyName"),message:new D.Name("message"),schema:new D.Name("schema"),parentSchema:new D.Name("parentSchema")};function Ok(e,t,r){let{createErrors:n}=e.it;if(n===!1)return D._`{}`;return UB(e,t,r)}function UB(e,t,r={}){let{gen:n,it:o}=e,s=[VB(o,r),ZB(e,r)];return BB(e,t,s),n.object(...s)}function VB({errorPath:e},{instancePath:t}){let r=t?D.str`${e}${Ur.getErrorPath(t,Ur.Type.Str)}`:e;return[Xe.default.instancePath,D.strConcat(Xe.default.instancePath,r)]}function ZB({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:D.str`${t}/${e}`;if(r)o=D.str`${o}${Ur.getErrorPath(r,Ur.Type.Str)}`;return[kn.schemaPath,o]}function BB(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:p}=a;if(n.push([kn.keyword,o],[kn.params,typeof t=="function"?t(e):t||D._`{}`]),c.messages)n.push([kn.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([kn.schema,i],[kn.parentSchema,D._`${l}${p}`],[Xe.default.data,s]);if(u)n.push([kn.propertyName,u])}});var Dk=k(function(jk){Object.defineProperty(jk,"__esModule",{value:!0});jk.boolOrEmptySchema=jk.topBoolOrEmptySchema=void 0;var zk=li(),Nk=X(),JB=hr(),YB={message:"boolean schema is false"};function XB(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)Lk(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(JB.default.data);else t.assign(Nk._`${n}.errors`,null),t.return(!0)}jk.topBoolOrEmptySchema=XB;function QB(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),Lk(e);else r.var(t,!0)}jk.boolOrEmptySchema=QB;function Lk(e,t){let{gen:r,data:n}=e;zk.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},YB,void 0,t)}});var am=k(function(qk){Object.defineProperty(qk,"__esModule",{value:!0});qk.getRules=qk.isJSONType=void 0;var tW=["string","number","integer","boolean","null","object","array"],rW=new Set(tW);function nW(e){return typeof e=="string"&&rW.has(e)}qk.isJSONType=nW;function oW(){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:{}}}qk.getRules=oW});var cm=k(function(Zk){Object.defineProperty(Zk,"__esModule",{value:!0});Zk.shouldUseRule=Zk.shouldUseGroup=Zk.schemaHasRulesForType=void 0;function iW({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Uk(e,n)}Zk.schemaHasRulesForType=iW;function Uk(e,t){return t.rules.some((r)=>Vk(e,r))}Zk.shouldUseGroup=Uk;function Vk(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))}Zk.shouldUseRule=Vk});var pi=k(function(Yk){Object.defineProperty(Yk,"__esModule",{value:!0});Yk.reportTypeError=Yk.checkDataTypes=Yk.checkDataType=Yk.coerceAndCheckDataType=Yk.getJSONTypes=Yk.getSchemaTypes=Yk.DataType=void 0;var Wk=am(),Hk=cm(),Kk=li(),N=X(),ru=ie(),go;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(go||(Yk.DataType=go={}));function uW(e){let t=Gk(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}Yk.getSchemaTypes=uW;function Gk(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Wk.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}Yk.getJSONTypes=Gk;function lW(e,t){let{gen:r,data:n,opts:o}=e,s=pW(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&Hk.schemaHasRulesForType(e,t[0]));if(i){let a=lm(t,n,o.strictNumbers,go.Wrong);r.if(a,()=>{if(s.length)dW(e,t,s);else pm(e)})}return i}Yk.coerceAndCheckDataType=lW;var Jk=new Set(["string","number","integer","boolean","null"]);function pW(e,t){return t?e.filter((r)=>Jk.has(r)||t==="array"&&r==="array"):[]}function dW(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",N._`typeof ${o}`),a=n.let("coerced",N._`undefined`);if(s.coerceTypes==="array")n.if(N._`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,N._`${o}[0]`).assign(i,N._`typeof ${o}`).if(lm(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(N._`${a} !== undefined`);for(let u of r)if(Jk.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),pm(e),n.endIf(),n.if(N._`${a} !== undefined`,()=>{n.assign(o,a),fW(e,a)});function c(u){switch(u){case"string":n.elseIf(N._`${i} == "number" || ${i} == "boolean"`).assign(a,N._`"" + ${o}`).elseIf(N._`${o} === null`).assign(a,N._`""`);return;case"number":n.elseIf(N._`${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,N._`[${o}]`)}}}function fW({gen:e,parentData:t,parentDataProperty:r},n){e.if(N._`${t} !== undefined`,()=>e.assign(N._`${t}[${r}]`,n))}function um(e,t,r,n=go.Correct){let o=n===go.Correct?N.operators.EQ:N.operators.NEQ,s;switch(e){case"null":return N._`${t} ${o} null`;case"array":s=N._`Array.isArray(${t})`;break;case"object":s=N._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i(N._`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return N._`typeof ${t} ${o} ${e}`}return n===go.Correct?s:N.not(s);function i(a=N.nil){return N.and(N._`typeof ${t} == "number"`,a,r?N._`isFinite(${t})`:N.nil)}}Yk.checkDataType=um;function lm(e,t,r,n){if(e.length===1)return um(e[0],t,r,n);let o,s=ru.toHash(e);if(s.array&&s.object){let i=N._`typeof ${t} != "object"`;o=s.null?i:N._`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=N.nil;if(s.number)delete s.integer;for(let i in s)o=N.and(o,um(i,t,r,n));return o}Yk.checkDataTypes=lm;var mW={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?N._`{type: ${e}}`:N._`{type: ${t}}`};function pm(e){let t=hW(e);Kk.reportError(t,mW)}Yk.reportTypeError=pm;function hW(e){let{gen:t,data:r,schema:n}=e,o=ru.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var nE=k(function(tE){Object.defineProperty(tE,"__esModule",{value:!0});tE.assignDefaults=void 0;var Tt=X(),eE=ie();function SW(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)Qk(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>Qk(e,s,o.default))}tE.assignDefaults=SW;function Qk(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=Tt._`${s}${Tt.getProperty(t)}`;if(o){eE.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=Tt._`${a} === undefined`;if(i.useDefaults==="empty")c=Tt._`${c} || ${a} === null || ${a} === ""`;n.if(c,Tt._`${a} = ${Tt.stringify(r)}`)}});var Pt=k(function(aE){Object.defineProperty(aE,"__esModule",{value:!0});aE.validateUnion=aE.validateArray=aE.usePattern=aE.callValidateCode=aE.schemaProperties=aE.allSchemaProperties=aE.noPropertyInData=aE.propertyInData=aE.isOwnProperty=aE.hasPropFunc=aE.reportMissingProp=aE.checkMissingProp=aE.checkReportMissingProp=void 0;var K=X(),yo=ie(),Vr=hr(),oE=ie();function xW(e,t){let{gen:r,data:n,it:o}=e;r.if(fm(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:K._`${t}`},!0),e.error()})}aE.checkReportMissingProp=xW;function $W({gen:e,data:t,it:{opts:r}},n,o){return K.or(...n.map((s)=>K.and(fm(e,t,s,r.ownProperties),K._`${o} = ${s}`)))}aE.checkMissingProp=$W;function kW(e,t){e.setParams({missingProperty:t},!0),e.error()}aE.reportMissingProp=kW;function sE(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:K._`Object.prototype.hasOwnProperty`})}aE.hasPropFunc=sE;function dm(e,t,r){return K._`${sE(e)}.call(${t}, ${r})`}aE.isOwnProperty=dm;function EW(e,t,r,n){let o=K._`${t}${K.getProperty(r)} !== undefined`;return n?K._`${o} && ${dm(e,t,r)}`:o}aE.propertyInData=EW;function fm(e,t,r,n){let o=K._`${t}${K.getProperty(r)} === undefined`;return n?K.or(o,K.not(dm(e,t,r))):o}aE.noPropertyInData=fm;function iE(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}aE.allSchemaProperties=iE;function TW(e,t){return iE(t).filter((r)=>!yo.alwaysValidSchema(e,t[r]))}aE.schemaProperties=TW;function PW({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?K._`${e}, ${t}, ${n}${o}`:t,p=[[Vr.default.instancePath,K.strConcat(Vr.default.instancePath,s)],[Vr.default.parentData,i.parentData],[Vr.default.parentDataProperty,i.parentDataProperty],[Vr.default.rootData,Vr.default.rootData]];if(i.opts.dynamicRef)p.push([Vr.default.dynamicAnchors,Vr.default.dynamicAnchors]);let f=K._`${l}, ${r.object(...p)}`;return c!==K.nil?K._`${a}.call(${c}, ${f})`:K._`${a}(${f})`}aE.callValidateCode=PW;var AW=K._`new RegExp`;function IW({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:K._`${o.code==="new RegExp"?AW:oE.useFunc(e,o)}(${r}, ${n})`})}aE.usePattern=IW;function OW(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",K._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:yo.Type.Num},s),t.if(K.not(s),a)})}}aE.validateArray=OW;function CW(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>yo.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,K._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(K.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}aE.validateUnion=CW});var hE=k(function(fE){Object.defineProperty(fE,"__esModule",{value:!0});fE.validateKeywordUsage=fE.validSchemaType=fE.funcKeywordCode=fE.macroKeywordCode=void 0;var pe=X(),En=hr(),lE=Pt(),pE=li();function BW(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=dE(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let u=r.name("valid");e.subschema({schema:a,schemaPath:pe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}fE.macroKeywordCode=BW;function WW(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;KW(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=dE(n,o,u),p=n.let("valid");e.block$data(p,f),e.ok((r=t.valid)!==null&&r!==void 0?r:p);function f(){if(t.errors===!1){if(g(),t.modifying)uE(e);y(()=>e.error())}else{let w=t.async?m():h();if(t.modifying)uE(e);y(()=>HW(e,w))}}function m(){let w=n.let("ruleErrs",null);return n.try(()=>g(pe._`await `),(E)=>n.assign(p,!1).if(pe._`${E} instanceof ${c.ValidationError}`,()=>n.assign(w,pe._`${E}.errors`),()=>n.throw(E))),w}function h(){let w=pe._`${l}.errors`;return n.assign(w,null),g(pe.nil),w}function g(w=t.async?pe._`await `:pe.nil){let E=c.opts.passContext?En.default.this:En.default.self,x=!(("compile"in t)&&!a||t.schema===!1);n.assign(p,pe._`${w}${lE.callValidateCode(e,l,E,x)}`,t.modifying)}function y(w){var E;n.if(pe.not((E=t.valid)!==null&&E!==void 0?E:p),w)}}fE.funcKeywordCode=WW;function uE(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,pe._`${n.parentData}[${n.parentDataProperty}]`))}function HW(e,t){let{gen:r}=e;r.if(pe._`Array.isArray(${t})`,()=>{r.assign(En.default.vErrors,pe._`${En.default.vErrors} === null ? ${t} : ${En.default.vErrors}.concat(${t})`).assign(En.default.errors,pe._`${En.default.vErrors}.length`),pE.extendErrors(e)},()=>e.error())}function KW({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function dE(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:pe.stringify(r)})}function GW(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")}fE.validSchemaType=GW;function JW({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)}}}fE.validateKeywordUsage=JW});var bE=k(function(gE){Object.defineProperty(gE,"__esModule",{value:!0});gE.extendSubschemaMode=gE.extendSubschemaData=gE.getSubschema=void 0;var Re=X(),nu=ie();function eH(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:Re._`${e.schemaPath}${Re.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:Re._`${e.schemaPath}${Re.getProperty(t)}${Re.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${nu.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')}gE.getSubschema=eH;function tH(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:p}=t,f=a.let("data",Re._`${t.data}${Re.getProperty(r)}`,!0);c(f),e.errorPath=Re.str`${u}${nu.getErrorPath(r,n,p.jsPropertySyntax)}`,e.parentDataProperty=Re._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof Re.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]}}gE.extendSubschemaData=tH;function rH(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}gE.extendSubschemaMode=rH});var mm=k(function(Nle,_E){_E.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 vE=k(function(Lle,wE){var Zr=wE.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(){};ou(t,n,o,e,"",e)};Zr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Zr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Zr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Zr.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 ou(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 p=n[l];if(Array.isArray(p)){if(l in Zr.arrayKeywords)for(var f=0;f<p.length;f++)ou(e,t,r,p[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in Zr.propsKeywords){if(p&&typeof p=="object")for(var m in p)ou(e,t,r,p[m],o+"/"+l+"/"+sH(m),s,o,l,n,m)}else if(l in Zr.keywords||e.allKeys&&!(l in Zr.skipKeywords))ou(e,t,r,p,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function sH(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var di=k(function(EE){Object.defineProperty(EE,"__esModule",{value:!0});EE.getSchemaRefs=EE.resolveUrl=EE.normalizeId=EE._getFullPath=EE.getFullPath=EE.inlineRef=void 0;var SE=ie(),iH=mm(),aH=vE(),cH=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function uH(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!hm(e);if(!t)return!1;return xE(e)<=t}EE.inlineRef=uH;var lH=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function hm(e){for(let t in e){if(lH.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(hm))return!0;if(typeof r=="object"&&hm(r))return!0}return!1}function xE(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,cH.has(r))continue;if(typeof e[r]=="object")SE.eachItem(e[r],(n)=>t+=xE(n));if(t===1/0)return 1/0}return t}function $E(e,t="",r){if(r!==!1)t=bo(t);let n=e.parse(t);return kE(e,n)}EE.getFullPath=$E;function kE(e,t){return e.serialize(t).split("#")[0]+"#"}EE._getFullPath=kE;var pH=/#\/?$/;function bo(e){return e?e.replace(pH,""):""}EE.normalizeId=bo;function dH(e,t,r){return r=bo(r),e.resolve(t,r)}EE.resolveUrl=dH;var fH=/^[a-z_][-a-z0-9._]*$/i;function mH(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=bo(e[r]||t),s={"":o},i=$E(n,o,!1),a={},c=new Set;return aH(e,{allKeys:!0},(p,f,m,h)=>{if(h===void 0)return;let g=i+f,y=s[h];if(typeof p[r]=="string")y=w.call(this,p[r]);E.call(this,p.$anchor),E.call(this,p.$dynamicAnchor),s[f]=y;function w(x){let I=this.opts.uriResolver.resolve;if(x=bo(y?I(y,x):x),c.has(x))throw l(x);c.add(x);let b=this.refs[x];if(typeof b=="string")b=this.refs[b];if(typeof b=="object")u(p,b.schema,x);else if(x!==bo(g))if(x[0]==="#")u(p,a[x],x),a[x]=p;else this.refs[x]=g;return x}function E(x){if(typeof x=="string"){if(!fH.test(x))throw Error(`invalid anchor "${x}"`);w.call(this,`#${x}`)}}}),a;function u(p,f,m){if(f!==void 0&&!iH(p,f))throw l(m)}function l(p){return Error(`reference "${p}" resolves to more than one schema`)}}EE.getSchemaRefs=mH});var fi=k(function(UE){Object.defineProperty(UE,"__esModule",{value:!0});UE.getData=UE.KeywordCxt=UE.validateFunctionCode=void 0;var iu=Dk(),su=pi(),wo=cm(),Br=pi(),OE=nE(),Ht=hE(),_o=bE(),C=X(),J=hr(),CE=di(),Fe=ie(),Wt=li();function wH(e){if(NE(e)){if(LE(e),zE(e)){xH(e);return}}RE(e,()=>iu.topBoolOrEmptySchema(e))}UE.validateFunctionCode=wH;function RE({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,C._`${J.default.data}, ${J.default.valCxt}`,n.$async,()=>{e.code(C._`"use strict"; ${PE(r,o)}`),SH(e,o),e.code(s)});else e.func(t,C._`${J.default.data}, ${vH(o)}`,n.$async,()=>e.code(PE(r,o)).code(s))}function vH(e){return C._`{${J.default.instancePath}="", ${J.default.parentData}, ${J.default.parentDataProperty}, ${J.default.rootData}=${J.default.data}${e.dynamicRef?C._`, ${J.default.dynamicAnchors}={}`:C.nil}}={}`}function SH(e,t){e.if(J.default.valCxt,()=>{if(e.var(J.default.instancePath,C._`${J.default.valCxt}.${J.default.instancePath}`),e.var(J.default.parentData,C._`${J.default.valCxt}.${J.default.parentData}`),e.var(J.default.parentDataProperty,C._`${J.default.valCxt}.${J.default.parentDataProperty}`),e.var(J.default.rootData,C._`${J.default.valCxt}.${J.default.rootData}`),t.dynamicRef)e.var(J.default.dynamicAnchors,C._`${J.default.valCxt}.${J.default.dynamicAnchors}`)},()=>{if(e.var(J.default.instancePath,C._`""`),e.var(J.default.parentData,C._`undefined`),e.var(J.default.parentDataProperty,C._`undefined`),e.var(J.default.rootData,J.default.data),t.dynamicRef)e.var(J.default.dynamicAnchors,C._`{}`)})}function xH(e){let{schema:t,opts:r,gen:n}=e;RE(e,()=>{if(r.$comment&&t.$comment)ME(e);if(PH(e),n.let(J.default.vErrors,null),n.let(J.default.errors,0),r.unevaluated)$H(e);jE(e),OH(e)});return}function $H(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",C._`${r}.evaluated`),t.if(C._`${e.evaluated}.dynamicProps`,()=>t.assign(C._`${e.evaluated}.props`,C._`undefined`)),t.if(C._`${e.evaluated}.dynamicItems`,()=>t.assign(C._`${e.evaluated}.items`,C._`undefined`))}function PE(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?C._`/*# sourceURL=${r} */`:C.nil}function kH(e,t){if(NE(e)){if(LE(e),zE(e)){EH(e,t);return}}iu.boolOrEmptySchema(e,t)}function zE({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 NE(e){return typeof e.schema!="boolean"}function EH(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)ME(e);AH(e),IH(e);let s=n.const("_errs",J.default.errors);jE(e,s),n.var(t,C._`${s} === ${J.default.errors}`)}function LE(e){Fe.checkUnknownRules(e),TH(e)}function jE(e,t){if(e.opts.jtd)return AE(e,[],!1,t);let r=su.getSchemaTypes(e.schema),n=su.coerceAndCheckDataType(e,r);AE(e,r,!n,t)}function TH(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Fe.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function PH(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Fe.checkStrictMode(e,"default is ignored in the schema root")}function AH(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=CE.resolveUrl(e.opts.uriResolver,e.baseId,t)}function IH(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function ME({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(C._`${J.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=C.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(C._`${J.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function OH(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(C._`${J.default.errors} === 0`,()=>t.return(J.default.data),()=>t.throw(C._`new ${o}(${J.default.vErrors})`));else{if(t.assign(C._`${n}.errors`,J.default.vErrors),s.unevaluated)CH(e);t.return(C._`${J.default.errors} === 0`)}}function CH({gen:e,evaluated:t,props:r,items:n}){if(r instanceof C.Name)e.assign(C._`${t}.props`,r);if(n instanceof C.Name)e.assign(C._`${t}.items`,n)}function AE(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||!Fe.schemaHasRulesButRef(s,l))){o.block(()=>qE(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)RH(e,t);o.block(()=>{for(let f of l.rules)p(f);p(l.post)});function p(f){if(!wo.shouldUseGroup(s,f))return;if(f.type){if(o.if(Br.checkDataType(f.type,i,c.strictNumbers)),IE(e,f),t.length===1&&t[0]===f.type&&r)o.else(),Br.reportTypeError(e);o.endIf()}else IE(e,f);if(!a)o.if(C._`${J.default.errors} === ${n||0}`)}}function IE(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)OE.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(wo.shouldUseRule(n,s))qE(e,s.keyword,s.definition,t.type)})}function RH(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(zH(e,t),!e.opts.allowUnionTypes)NH(e,t);LH(e,e.dataTypes)}function zH(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!DE(e.dataTypes,r))gm(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),MH(e,t)}function NH(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))gm(e,"use allowUnionTypes to allow union type keyword")}function LH(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&wo.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>jH(t,i)))gm(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function jH(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function DE(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function MH(e,t){let r=[];for(let n of e.dataTypes)if(DE(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function gm(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Fe.checkStrictMode(e,t,e.opts.strictTypes)}class ym{constructor(e,t,r){if(Ht.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=Fe.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",FE(this.$data,e));else if(this.schemaCode=this.schemaValue,!Ht.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",J.default.errors)}result(e,t,r){this.failResult(C.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(C.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(C._`${t} !== undefined && (${C.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?Wt.reportExtraError:Wt.reportError)(this,this.def.error,t)}$dataError(){Wt.reportError(this,this.def.$dataError||Wt.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');Wt.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=C.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=C.nil,t=C.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:o,def:s}=this;if(r.if(C.or(C._`${n} === undefined`,t)),e!==C.nil)r.assign(e,!0);if(o.length||s.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==C.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:o}=this;return C.or(s(),i());function s(){if(r.length){if(!(t instanceof C.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return C._`${Br.checkDataTypes(a,t,o.opts.strictNumbers,Br.DataType.Wrong)}`}return C.nil}function i(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return C._`!${a}(${t})`}return C.nil}}subschema(e,t){let r=_o.getSubschema(this.it,e);_o.extendSubschemaData(r,this.it,e),_o.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return kH(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=Fe.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Fe.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,C.Name)),!0}}UE.KeywordCxt=ym;function qE(e,t,r,n){let o=new ym(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)Ht.funcKeywordCode(o,r);else if("macro"in r)Ht.macroKeywordCode(o,r);else if(r.compile||r.validate)Ht.funcKeywordCode(o,r)}var DH=/^\/(?:[^~]|~0|~1)*$/,qH=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function FE(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return J.default.rootData;if(e[0]==="/"){if(!DH.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=J.default.rootData}else{let u=qH.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=C._`${s}${C.getProperty(Fe.unescapeJsonPointer(u))}`,i=C._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}UE.getData=FE});var au=k(function(BE){Object.defineProperty(BE,"__esModule",{value:!0});class ZE extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}BE.default=ZE});var mi=k(function(HE){Object.defineProperty(HE,"__esModule",{value:!0});var vo=di();class WE extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=vo.resolveUrl(e,t,r),this.missingSchema=vo.normalizeId(vo.getFullPath(e,this.missingRef))}}HE.default=WE});var lu=k(function(JE){Object.defineProperty(JE,"__esModule",{value:!0});JE.resolveSchema=JE.getCompilingSchema=JE.resolveRef=JE.compileSchema=JE.SchemaEnv=void 0;var Te=X(),BH=au(),Tn=hr(),Pe=di(),cu=ie(),KE=fi();class hi{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:Pe.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={}}}JE.SchemaEnv=hi;function _m(e){let t=GE.call(this,e);if(t)return t;let r=Pe.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Te.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:BH.default,code:Te._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Tn.default.data,parentData:Tn.default.parentData,parentDataProperty:Tn.default.parentDataProperty,dataNames:[Tn.default.data],dataPathArr:[Te.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Te.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Te.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Te._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),KE.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let p=i.toString();if(l=`${i.scopeRefs(Tn.default.scope)}return ${p}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${Tn.default.self}`,`${Tn.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:p,scopeValues:i._values};if(this.opts.unevaluated){let{props:h,items:g}=u;if(m.evaluated={props:h instanceof Te.Name?void 0:h,items:g instanceof Te.Name?void 0:g,dynamicProps:h instanceof Te.Name,dynamicItems:g instanceof Te.Name},m.source)m.source.evaluated=Te.stringify(m.evaluated)}return e.validate=m,e}catch(p){if(delete e.validate,delete e.validateName,l)this.logger.error("Error compiling schema, function code:",l);throw p}finally{this._compilations.delete(e)}}JE.compileSchema=_m;function WH(e,t,r){var n;r=Pe.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=GH.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 hi({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=HH.call(this,s)}JE.resolveRef=WH;function HH(e){if(Pe.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:_m.call(this,e)}function GE(e){for(let t of this._compilations)if(KH(t,e))return t}JE.getCompilingSchema=GE;function KH(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function GH(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||uu.call(this,e,t)}function uu(e,t){let r=this.opts.uriResolver.parse(t),n=Pe._getFullPath(this.opts.uriResolver,r),o=Pe.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return bm.call(this,r,e);let s=Pe.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=uu.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return bm.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)_m.call(this,i);if(s===Pe.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Pe.resolveUrl(this.opts.uriResolver,o,u);return new hi({schema:a,schemaId:c,root:e,baseId:o})}return bm.call(this,r,i)}JE.resolveSchema=uu;var JH=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function bm(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[cu.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!JH.has(a)&&u)t=Pe.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!cu.schemaHasRulesButRef(r,this.RULES)){let a=Pe.resolveUrl(this.opts.uriResolver,t,r.$ref);s=uu.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new hi({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var XE=k(function(Ule,t3){t3.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 Sm=k(function(Vle,oT){var r3=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),eT=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),wm=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),tT=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),n3=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function vm(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 o3=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function QE(e){return e.length=0,!0}function s3(e,t,r){if(e.length){let n=vm(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function i3(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=s3;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=QE}else{o.push(u);continue}}if(o.length)if(a===QE)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(vm(o));return r.address=n.join(""),r}function rT(e){if(a3(e,":")<2)return{host:e,isIPV6:!1};let t=i3(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 a3(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function c3(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 u3={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},l3=/[@/?#:]/g,p3=/[@/?#]/g;function nT(e,t){let r=t?p3:l3;return r.lastIndex=0,e.replace(r,(n)=>u3[n])}function d3(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(wm(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&tT(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function f3(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(wm(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&tT(s))t+=s;else t+="%"+o;r+=2;continue}}if(n3(e[r]))t+=e[r];else t+=escape(e[r])}return t}function m3(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(wm(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function h3(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(!eT(r)){let n=rT(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=nT(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}oT.exports={nonSimpleDomain:o3,recomposeAuthority:h3,reescapeHostDelimiters:nT,normalizePercentEncoding:d3,normalizePathEncoding:f3,escapePreservingEscapes:m3,removeDotSegments:c3,isIPv4:eT,isUUID:r3,normalizeIPv6:rT,stringArrayToHexStripped:vm}});var uT=k(function(Zle,cT){var{isUUID:g3}=Sm(),y3=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,b3=["http","https","ws","wss","urn","urn:uuid"];function _3(e){return b3.indexOf(e)!==-1}function xm(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 sT(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function iT(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 w3(e){return e.secure=xm(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function v3(e){if(e.port===(xm(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 S3(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(y3);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=$m(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 x3(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=$m(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 $3(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!g3(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function k3(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var aT={scheme:"http",domainHost:!0,parse:sT,serialize:iT},E3={scheme:"https",domainHost:aT.domainHost,parse:sT,serialize:iT},pu={scheme:"ws",domainHost:!0,parse:w3,serialize:v3},T3={scheme:"wss",domainHost:pu.domainHost,parse:pu.parse,serialize:pu.serialize},P3={scheme:"urn",parse:S3,serialize:x3,skipNormalize:!0},A3={scheme:"urn:uuid",parse:$3,serialize:k3,skipNormalize:!0},du={http:aT,https:E3,ws:pu,wss:T3,urn:P3,"urn:uuid":A3};Object.setPrototypeOf(du,null);function $m(e){return e&&(du[e]||du[e.toLowerCase()])||void 0}cT.exports={wsIsSecure:xm,SCHEMES:du,isValidSchemeName:_3,getSchemeHandler:$m}});var hT=k(function(Ble,fu){var{normalizeIPv6:I3,removeDotSegments:gi,recomposeAuthority:O3,normalizePercentEncoding:C3,normalizePathEncoding:R3,escapePreservingEscapes:z3,reescapeHostDelimiters:N3,isIPv4:L3,nonSimpleDomain:j3}=Sm(),{SCHEMES:M3,getSchemeHandler:pT}=uT();function D3(e,t){if(typeof e==="string")e=B3(e,t);else if(typeof e==="object")e=So(Pn(e,t),t);return e}function q3(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=dT(So(e,n),So(t,n),n,!0);return n.skipEscape=!0,Pn(o,n)}function dT(e,t,r,n){let o={};if(!n)e=So(Pn(e,r),r),t=So(Pn(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=gi(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=gi(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=gi(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=gi(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 F3(e,t,r){let n=lT(e,r),o=lT(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Pn(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=pT(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=z3(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=C3(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=O3(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=gi(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 U3=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,V3=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function Z3(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 fT(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(V3);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(U3);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=Z3(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(L3(n.host)===!1){let p=I3(n.host);n.host=p.host.toLowerCase(),s=p.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=pT(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&j3(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=N3(unescape(n.host),s)}if(n.path)n.path=R3(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 So(e,t){return fT(e,t).parsed}function B3(e,t){return mT(e,t).normalized}function mT(e,t){let{parsed:r,malformedAuthorityOrPort:n}=fT(e,t);return{normalized:n?e:Pn(r,t),malformedAuthorityOrPort:n}}function lT(e,t){if(typeof e==="string"){let{normalized:r,malformedAuthorityOrPort:n}=mT(e,t);return n?void 0:r}if(typeof e==="object")return Pn(e,t)}var km={SCHEMES:M3,normalize:D3,resolve:q3,resolveComponent:dT,equal:F3,serialize:Pn,parse:So};fu.exports=km;fu.exports.default=km;fu.exports.fastUri=km});var bT=k(function(yT){Object.defineProperty(yT,"__esModule",{value:!0});var gT=hT();gT.code='require("ajv/dist/runtime/uri").default';yT.default=gT});var PT=k(function(gr){Object.defineProperty(gr,"__esModule",{value:!0});gr.CodeGen=gr.Name=gr.nil=gr.stringify=gr.str=gr._=gr.KeywordCxt=void 0;var H3=fi();Object.defineProperty(gr,"KeywordCxt",{enumerable:!0,get:function(){return H3.KeywordCxt}});var $o=X();Object.defineProperty(gr,"_",{enumerable:!0,get:function(){return $o._}});Object.defineProperty(gr,"str",{enumerable:!0,get:function(){return $o.str}});Object.defineProperty(gr,"stringify",{enumerable:!0,get:function(){return $o.stringify}});Object.defineProperty(gr,"nil",{enumerable:!0,get:function(){return $o.nil}});Object.defineProperty(gr,"Name",{enumerable:!0,get:function(){return $o.Name}});Object.defineProperty(gr,"CodeGen",{enumerable:!0,get:function(){return $o.CodeGen}});var K3=au(),xT=mi(),$T=am(),Kt=lu(),kT=X(),Gt=di(),Wr=pi(),xo=ie(),_T=XE(),G3=bT(),ET=(e,t)=>new RegExp(e,t);ET.code="new RegExp";var J3=["removeAdditional","useDefaults","coerceTypes"],Y3=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),X3={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."},Q3={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},wT=200;function eK(e){var t,r,n,o,s,i,a,c,u,l,p,f,m,h,g,y,w,E,x,I,b,v,S,O,L;let G=e.strict,re=(t=e.code)===null||t===void 0?void 0:t.optimize,ne=re===!0||re===void 0?1:re||0,Ne=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ET,V=(o=e.uriResolver)!==null&&o!==void 0?o:G3.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:G)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:G)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:G)!==null&&l!==void 0?l:"log",strictTuples:(f=(p=e.strictTuples)!==null&&p!==void 0?p:G)!==null&&f!==void 0?f:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:G)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:ne,regExp:Ne}:{optimize:ne,regExp:Ne},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:wT,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:wT,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(E=e.messages)!==null&&E!==void 0?E:!0,inlineRefs:(x=e.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(I=e.schemaId)!==null&&I!==void 0?I:"$id",addUsedSchema:(b=e.addUsedSchema)!==null&&b!==void 0?b:!0,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:!0,validateFormats:(S=e.validateFormats)!==null&&S!==void 0?S:!0,unicodeRegExp:(O=e.unicodeRegExp)!==null&&O!==void 0?O:!0,int32range:(L=e.int32range)!==null&&L!==void 0?L:!0,uriResolver:V}}class mu{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,...eK(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new kT.ValueScope({scope:{},prefixes:Y3,es5:t,lines:r}),this.logger=iK(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=$T.getRules(),vT.call(this,X3,e,"NOT SUPPORTED"),vT.call(this,Q3,e,"DEPRECATED","warn"),this._metaOpts=oK.call(this),e.formats)rK.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)nK.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);tK.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=_T;if(r==="id")n={..._T},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 p=this._addSchema(u,l);return p.validate||s.call(this,p)}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 xT.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=Gt.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=ST.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new Kt.SchemaEnv({schema:{},schemaId:r});if(t=Kt.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=ST.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=Gt.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(cK.call(this,r,t),!t)return xo.eachItem(r,(o)=>Em.call(this,o)),this;lK.call(this,t);let n={...t,type:Wr.getJSONTypes(t.type),schemaType:Wr.getJSONTypes(t.schemaType)};return xo.eachItem(r,n.type.length===0?(o)=>Em.call(this,o,n):(o)=>n.type.forEach((s)=>Em.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]=TT(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=Gt.normalizeId(s||r);let c=Gt.getSchemaRefs.call(this,e,r);if(a=new Kt.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 Kt.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{Kt.compileSchema.call(this,e)}finally{this.opts=t}}}mu.ValidationError=K3.default;mu.MissingRefError=xT.default;gr.default=mu;function vT(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 ST(e){return e=Gt.normalizeId(e),this.schemas[e]||this.refs[e]}function tK(){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 rK(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function nK(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 oK(){let e={...this.opts};for(let t of J3)delete e[t];return e}var sK={log(){},warn(){},error(){}};function iK(e){if(e===!1)return sK;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 aK=/^[a-z_$][a-z0-9_$:-]*$/i;function cK(e,t){let{RULES:r}=this;if(xo.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!aK.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 Em(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:Wr.getJSONTypes(t.type),schemaType:Wr.getJSONTypes(t.schemaType)}};if(t.before)uK.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 uK(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 lK(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=TT(t);e.validateSchema=this.compile(t,!0)}var pK={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function TT(e){return{anyOf:[e,pK]}}});var IT=k(function(AT){Object.defineProperty(AT,"__esModule",{value:!0});var mK={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};AT.default=mK});var zT=k(function(CT){Object.defineProperty(CT,"__esModule",{value:!0});CT.callRef=CT.getValidate=void 0;var gK=mi(),gu=Pt(),ge=X(),ko=hr(),yu=lu(),Hr=ie(),yK={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 p();let l=yu.resolveRef.call(c,u,o,r);if(l===void 0)throw new gK.default(n.opts.uriResolver,o,r);if(l instanceof yu.SchemaEnv)return f(l);return m(l);function p(){if(s===u)return hu(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return hu(e,ge._`${h}.validate`,u,u.$async)}function f(h){let g=OT(e,h);hu(e,g,h,h.$async)}function m(h){let g=t.scopeValue("schema",a.code.source===!0?{ref:h,code:ge.stringify(h)}:{ref:h}),y=t.name("valid"),w=e.subschema({schema:h,dataTypes:[],schemaPath:ge.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(w),e.ok(y)}}};function OT(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):ge._`${r.scopeValue("wrapper",{ref:t})}.validate`}CT.getValidate=OT;function hu(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?ko.default.this:ge.nil;if(n)l();else p();function l(){if(!a.$async)throw Error("async schema referenced by sync schema");let h=o.let("valid");o.try(()=>{if(o.code(ge._`await ${gu.callValidateCode(e,t,u)}`),m(t),!i)o.assign(h,!0)},(g)=>{if(o.if(ge._`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),f(g),!i)o.assign(h,!1)}),e.ok(h)}function p(){e.result(gu.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=ge._`${h}.errors`;o.assign(ko.default.vErrors,ge._`${ko.default.vErrors} === null ? ${g} : ${ko.default.vErrors}.concat(${g})`),o.assign(ko.default.errors,ge._`${ko.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=Hr.mergeEvaluated.props(o,y.props,s.props)}else{let w=o.var("props",ge._`${h}.evaluated.props`);s.props=Hr.mergeEvaluated.props(o,w,s.props,ge.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=Hr.mergeEvaluated.items(o,y.items,s.items)}else{let w=o.var("items",ge._`${h}.evaluated.items`);s.items=Hr.mergeEvaluated.items(o,w,s.items,ge.Name)}}}CT.callRef=hu;CT.default=yK});var LT=k(function(NT){Object.defineProperty(NT,"__esModule",{value:!0});var wK=IT(),vK=zT(),SK=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",wK.default,vK.default];NT.default=SK});var MT=k(function(jT){Object.defineProperty(jT,"__esModule",{value:!0});var Gr=X(),Kr=Gr.operators,bu={maximum:{okStr:"<=",ok:Kr.LTE,fail:Kr.GT},minimum:{okStr:">=",ok:Kr.GTE,fail:Kr.LT},exclusiveMaximum:{okStr:"<",ok:Kr.LT,fail:Kr.GTE},exclusiveMinimum:{okStr:">",ok:Kr.GT,fail:Kr.LTE}},$K={message:({keyword:e,schemaCode:t})=>Gr.str`must be ${bu[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Gr._`{comparison: ${bu[e].okStr}, limit: ${t}}`},kK={keyword:Object.keys(bu),type:"number",schemaType:"number",$data:!0,error:$K,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(Gr._`${r} ${bu[t].fail} ${n} || isNaN(${r})`)}};jT.default=kK});var qT=k(function(DT){Object.defineProperty(DT,"__esModule",{value:!0});var Jt=X(),TK={message:({schemaCode:e})=>Jt.str`must be multiple of ${e}`,params:({schemaCode:e})=>Jt._`{multipleOf: ${e}}`},PK={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:TK,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?Jt._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:Jt._`${i} !== parseInt(${i})`;e.fail$data(Jt._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};DT.default=PK});var VT=k(function(UT){Object.defineProperty(UT,"__esModule",{value:!0});function FT(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}UT.default=FT;FT.code='require("ajv/dist/runtime/ucs2length").default'});var WT=k(function(BT){Object.defineProperty(BT,"__esModule",{value:!0});var ot=X(),ZT=ie(),OK=VT(),CK={message({keyword:e,schemaCode:t}){return ot.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>ot._`{limit: ${e}}`},RK={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:CK,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?ot.operators.GT:ot.operators.LT,i=o.opts.unicode===!1?ot._`${r}.length`:ot._`${ZT.useFunc(e.gen,OK.default)}(${r})`;e.fail$data(ot._`${i} ${s} ${n}`)}};BT.default=RK});var JT=k(function(GT){Object.defineProperty(GT,"__esModule",{value:!0});var HT=Pt(),KT=ie(),At=X(),NK={message:({schemaCode:e})=>At.str`must match pattern "${e}"`,params:({schemaCode:e})=>At._`{pattern: ${e}}`},LK={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:NK,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"?At._`new RegExp`:KT.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,At._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(At._`!${l}`)}else{let c=HT.usePattern(e,o);e.fail$data(At._`!${c}.test(${r})`)}}};GT.default=LK});var XT=k(function(YT){Object.defineProperty(YT,"__esModule",{value:!0});var Yt=X(),MK={message({keyword:e,schemaCode:t}){return Yt.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>Yt._`{limit: ${e}}`},DK={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:MK,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?Yt.operators.GT:Yt.operators.LT;e.fail$data(Yt._`Object.keys(${r}).length ${o} ${n}`)}};YT.default=DK});var tP=k(function(eP){Object.defineProperty(eP,"__esModule",{value:!0});var Xt=Pt(),Qt=X(),QT=ie(),FK={message:({params:{missingProperty:e}})=>Qt.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>Qt._`{missingProperty: ${e}}`},UK={keyword:"required",type:"object",schemaType:"array",$data:!0,error:FK,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,w=`required property "${g}" is not defined at "${y}" (strictRequired)`;QT.checkStrictMode(i,w,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(Qt.nil,p);else for(let m of r)Xt.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(Xt.checkMissingProp(e,r,m)),Xt.reportMissingProp(e,m),t.else()}function p(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(Xt.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,Xt.propertyInData(t,o,m,a.ownProperties)),t.if(Qt.not(h),()=>{e.error(),t.break()})},Qt.nil)}}};eP.default=UK});var nP=k(function(rP){Object.defineProperty(rP,"__esModule",{value:!0});var er=X(),ZK={message({keyword:e,schemaCode:t}){return er.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>er._`{limit: ${e}}`},BK={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:ZK,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?er.operators.GT:er.operators.LT;e.fail$data(er._`${r}.length ${o} ${n}`)}};rP.default=BK});var _u=k(function(sP){Object.defineProperty(sP,"__esModule",{value:!0});var oP=mm();oP.code='require("ajv/dist/runtime/equal").default';sP.default=oP});var cP=k(function(aP){Object.defineProperty(aP,"__esModule",{value:!0});var Eo=pi(),ae=X(),iP=ie(),KK=_u(),GK={message:({params:{i:e,j:t}})=>ae.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>ae._`{i: ${e}, j: ${t}}`},JK={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:GK,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?Eo.getSchemaTypes(s.items):[];e.block$data(c,l,ae._`${i} === false`),e.ok(c);function l(){let h=t.let("i",ae._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(ae._`${h} > 1`,()=>(p()?f:m)(h,g))}function p(){return u.length>0&&!u.some((h)=>h==="object"||h==="array")}function f(h,g){let y=t.name("item"),w=Eo.checkDataTypes(u,y,a.opts.strictNumbers,Eo.DataType.Wrong),E=t.const("indices",ae._`{}`);t.for(ae._`;${h}--;`,()=>{if(t.let(y,ae._`${r}[${h}]`),t.if(w,ae._`continue`),u.length>1)t.if(ae._`typeof ${y} == "string"`,ae._`${y} += "_"`);t.if(ae._`typeof ${E}[${y}] == "number"`,()=>{t.assign(g,ae._`${E}[${y}]`),e.error(),t.assign(c,!1).break()}).code(ae._`${E}[${y}] = ${h}`)})}function m(h,g){let y=iP.useFunc(t,KK.default),w=t.name("outer");t.label(w).for(ae._`;${h}--;`,()=>t.for(ae._`${g} = ${h}; ${g}--;`,()=>t.if(ae._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(w)})))}}};aP.default=JK});var pP=k(function(lP){Object.defineProperty(lP,"__esModule",{value:!0});var To=X(),uP=ie(),XK=_u(),QK={message:"must be equal to constant",params:({schemaCode:e})=>To._`{allowedValue: ${e}}`},eG={keyword:"const",$data:!0,error:QK,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(To._`!${uP.useFunc(t,XK.default)}(${r}, ${o})`);else e.fail(To._`${s} !== ${r}`)}};lP.default=eG});var mP=k(function(fP){Object.defineProperty(fP,"__esModule",{value:!0});var tr=X(),dP=ie(),rG=_u(),nG={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>tr._`{allowedValues: ${e}}`},oG={keyword:"enum",schemaType:"array",$data:!0,error:nG,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=dP.useFunc(t,rG.default),l;if(a||n)l=t.let("valid"),e.block$data(l,p);else{if(!Array.isArray(o))throw Error("ajv implementation error");let m=t.const("vSchema",s);l=tr.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function p(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(tr._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?tr._`${u()}(${r}, ${m}[${h}])`:tr._`${r} === ${g}`}}};fP.default=oG});var gP=k(function(hP){Object.defineProperty(hP,"__esModule",{value:!0});var iG=MT(),aG=qT(),cG=WT(),uG=JT(),lG=XT(),pG=tP(),dG=nP(),fG=cP(),mG=pP(),hG=mP(),gG=[iG.default,aG.default,cG.default,uG.default,lG.default,pG.default,dG.default,fG.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},mG.default,hG.default];hP.default=gG});var Tm=k(function(bP){Object.defineProperty(bP,"__esModule",{value:!0});bP.validateAdditionalItems=void 0;var st=X(),Po=ie(),bG={message:({params:{len:e}})=>st.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>st._`{limit: ${e}}`},_G={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:bG,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){Po.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}yP(e,n)}};function yP(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",st._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(st._`${a} <= ${t.length}`);else if(typeof n=="object"&&!Po.alwaysValidSchema(i,n)){let u=r.var("valid",st._`${a} <= ${t.length}`);r.if(st.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:Po.Type.Num},u),!i.allErrors)r.if(st.not(u),()=>r.break())})}}bP.validateAdditionalItems=yP;bP.default=_G});var Pm=k(function(SP){Object.defineProperty(SP,"__esModule",{value:!0});SP.validateTuple=void 0;var wu=X(),Jr=ie(),wP=Pt(),vG={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return vP(e,"additionalItems",t);if(r.items=!0,Jr.alwaysValidSchema(r,t))return;e.ok(wP.validateArray(e))}};function vP(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=Jr.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",wu._`${s}.length`);r.forEach((p,f)=>{if(Jr.alwaysValidSchema(a,p))return;n.if(wu._`${u} > ${f}`,()=>e.subschema({keyword:i,schemaProp:f,dataProp:f},c)),e.ok(c)});function l(p){let{opts:f,errSchemaPath:m}=a,h=r.length,g=h===p.minItems&&(h===p.maxItems||p[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}"`;Jr.checkStrictMode(a,y,f.strictTuples)}}}SP.validateTuple=vP;SP.default=vG});var EP=k(function(kP){Object.defineProperty(kP,"__esModule",{value:!0});var $P=Pm(),xG={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>$P.validateTuple(e,"items")};kP.default=xG});var OP=k(function(IP){Object.defineProperty(IP,"__esModule",{value:!0});var vu=X(),TP=ie(),PP=Pt(),AP=Tm(),kG={message:({params:{len:e}})=>vu.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>vu._`{limit: ${e}}`},EG={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:kG,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,TP.alwaysValidSchema(n,t))return;if(o)AP.validateAdditionalItems(e,o);else e.ok(PP.validateArray(e))}};IP.default=EG});var RP=k(function(CP){Object.defineProperty(CP,"__esModule",{value:!0});var xe=X(),Yr=ie(),PG={message:({params:{min:e,max:t}})=>t===void 0?xe.str`must contain at least ${e} valid item(s)`:xe.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?xe._`{minContains: ${e}}`:xe._`{minContains: ${e}, maxContains: ${t}}`},AG={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:PG,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",xe._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){Yr.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){Yr.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(Yr.alwaysValidSchema(s,r)){let g=xe._`${l} >= ${i}`;if(a!==void 0)g=xe._`${g} && ${l} <= ${a}`;e.pass(g);return}s.items=!0;let p=t.name("valid");if(a===void 0&&i===1)m(p,()=>t.if(p,()=>t.break()));else if(i===0){if(t.let(p,!0),a!==void 0)t.if(xe._`${o}.length > 0`,f)}else t.let(p,!1),f();e.result(p,()=>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,(w)=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:Yr.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(xe._`${g}++`),a===void 0)t.if(xe._`${g} >= ${i}`,()=>t.assign(p,!0).break());else if(t.if(xe._`${g} > ${a}`,()=>t.assign(p,!1).break()),i===1)t.assign(p,!0);else t.if(xe._`${g} >= ${i}`,()=>t.assign(p,!0))}}};CP.default=AG});var qP=k(function(jP){Object.defineProperty(jP,"__esModule",{value:!0});jP.validateSchemaDeps=jP.validatePropertyDeps=jP.error=void 0;var Ao=X(),zP=ie(),rr=Pt();jP.error={message:({params:{property:e,depsCount:t,deps:r}})=>Ao.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>Ao._`{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=_u(e),r=Ao(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=_u(e),r=Ao(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()}}}zB.Parser=ME});var VE=E(function(WB){var qE=Xm(),LB=$i(),Ii=Ei(),jB=cm(),DB=ae(),MB=ch(),FE=uh();function UE(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new MB.LineCounter||null,prettyErrors:t}}function qB(e,t={}){let{lineCounter:r,prettyErrors:n}=UE(t),o=new FE.Parser(r?.addNewLine),s=new qE.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(Ii.prettifyError(e,r)),a.warnings.forEach(Ii.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function WE(e,t={}){let{lineCounter:r,prettyErrors:n}=UE(t),o=new FE.Parser(r?.addNewLine),s=new qE.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 Ii.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(Ii.prettifyError(e,r)),i.warnings.forEach(Ii.prettifyError(e,r));return i}function FB(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=WE(e,r);if(!o)return null;if(o.warnings.forEach((s)=>jB.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 UB(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(DB.isDocument(e)&&!n)return e.toString(r);return new LB.Document(e,n,r).toString(r)}WB.parse=FB;WB.parseAllDocuments=qB;WB.parseDocument=WE;WB.stringify=UB});var Wi=E(function(BT){Object.defineProperty(BT,"__esModule",{value:!0});BT.regexpCode=BT.getEsmExportName=BT.getProperty=BT.safeStringify=BT.stringify=BT.strConcat=BT.addCodeArg=BT.str=BT._=BT.nil=BT._Code=BT.Name=BT.IDENTIFIER=BT._CodeOrName=void 0;class Zu{}BT._CodeOrName=Zu;BT.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class No extends Zu{constructor(e){super();if(!BT.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}}}BT.Name=No;class Vt extends Zu{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 No)t[r.str]=(t[r.str]||0)+1;return t},{})}}BT._Code=Vt;BT.nil=new Vt("");function VT(e,...t){let r=[e[0]],n=0;while(n<t.length)Yh(r,t[n]),r.push(e[++n]);return new Vt(r)}BT._=VT;var Jh=new Vt("+");function ZT(e,...t){let r=[Ui(e[0])],n=0;while(n<t.length)r.push(Jh),Yh(r,t[n]),r.push(Jh,Ui(e[++n]));return BG(r),new Vt(r)}BT.str=ZT;function Yh(e,t){if(t instanceof Vt)e.push(...t._items);else if(t instanceof No)e.push(t);else e.push(GG(t))}BT.addCodeArg=Yh;function BG(e){let t=1;while(t<e.length-1){if(e[t]===Jh){let r=HG(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function HG(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof No||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 No))return`"${e}${t.slice(1)}`;return}function KG(e,t){return t.emptyStr()?e:e.emptyStr()?t:ZT`${e}${t}`}BT.strConcat=KG;function GG(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Ui(Array.isArray(e)?e.join(","):e)}function JG(e){return new Vt(Ui(e))}BT.stringify=JG;function Ui(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}BT.safeStringify=Ui;function YG(e){return typeof e=="string"&&BT.IDENTIFIER.test(e)?new Vt(`.${e}`):VT`[${e}]`}BT.getProperty=YG;function XG(e){if(typeof e=="string"&&BT.IDENTIFIER.test(e))return new Vt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}BT.getEsmExportName=XG;function QG(e){return new Vt(e.toString())}BT.regexpCode=QG});var tg=E(function(JT){Object.defineProperty(JT,"__esModule",{value:!0});JT.ValueScope=JT.ValueScopeName=JT.Scope=JT.varKinds=JT.UsedValueState=void 0;var ye=Wi();class KT extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var Hu;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Hu||(JT.UsedValueState=Hu={}));JT.varKinds={const:new ye.Name("const"),let:new ye.Name("let"),var:new ye.Name("var")};class Qh{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof ye.Name?e:this.name(e)}name(e){return new ye.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}}}JT.Scope=Qh;class eg extends ye.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=ye._`.${new ye.Name(t)}[${r}]`}}JT.ValueScopeName=eg;var p3=ye._`\n`;class GT extends Qh{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?p3:ye.nil}}get(){return this._scope}name(e){return new eg(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 ye._`${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=ye.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,Hu.Started);let u=t(c);if(u){let l=this.opts.es5?JT.varKinds.var:JT.varKinds.const;o=ye._`${o}${l} ${c} = ${u};${this.opts._n}`}else if(u=n===null||n===void 0?void 0:n(c))o=ye._`${o}${u}${this.opts._n}`;else throw new KT(c);a.set(c,Hu.Completed)})}return o}}JT.ValueScope=GT});var ee=E(function(dt){Object.defineProperty(dt,"__esModule",{value:!0});dt.or=dt.and=dt.not=dt.CodeGen=dt.operators=dt.varKinds=dt.ValueScopeName=dt.ValueScope=dt.Scope=dt.Name=dt.regexpCode=dt.stringify=dt.getProperty=dt.nil=dt.strConcat=dt.str=dt._=void 0;var M=Wi(),Te=tg(),Xr=Wi();Object.defineProperty(dt,"_",{enumerable:!0,get:function(){return Xr._}});Object.defineProperty(dt,"str",{enumerable:!0,get:function(){return Xr.str}});Object.defineProperty(dt,"strConcat",{enumerable:!0,get:function(){return Xr.strConcat}});Object.defineProperty(dt,"nil",{enumerable:!0,get:function(){return Xr.nil}});Object.defineProperty(dt,"getProperty",{enumerable:!0,get:function(){return Xr.getProperty}});Object.defineProperty(dt,"stringify",{enumerable:!0,get:function(){return Xr.stringify}});Object.defineProperty(dt,"regexpCode",{enumerable:!0,get:function(){return Xr.regexpCode}});Object.defineProperty(dt,"Name",{enumerable:!0,get:function(){return Xr.Name}});var Qu=tg();Object.defineProperty(dt,"Scope",{enumerable:!0,get:function(){return Qu.Scope}});Object.defineProperty(dt,"ValueScope",{enumerable:!0,get:function(){return Qu.ValueScope}});Object.defineProperty(dt,"ValueScopeName",{enumerable:!0,get:function(){return Qu.ValueScopeName}});Object.defineProperty(dt,"varKinds",{enumerable:!0,get:function(){return Qu.varKinds}});dt.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 Qr{optimizeNodes(){return this}optimizeNames(e,t){return this}}class XT extends Qr{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Te.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=jo(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class og extends Qr{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=jo(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Xu(e,this.rhs)}}class QT extends og{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class eO extends Qr{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class tO extends Qr{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class rO extends Qr{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class nO extends Qr{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=jo(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class el extends Qr{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;g3(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>qn(e,t.names),{})}}class en extends el{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class oO extends el{}class Vi extends en{}Vi.kind="else";class Er extends en{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 Vi(r):r}if(t){if(e===!1)return t instanceof Er?t:t.nodes;if(this.nodes.length)return this;return new Er(uO(e),t instanceof Er?[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=jo(this.condition,e,t),this}get names(){let e=super.names;if(Xu(e,this.condition),this.else)qn(e,this.else.names);return e}}Er.kind="if";class Lo extends en{}Lo.kind="for";class sO extends Lo{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=jo(this.iteration,e,t),this}get names(){return qn(super.names,this.iteration.names)}}class iO extends Lo{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Te.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=Xu(super.names,this.from);return Xu(e,this.to)}}class rg extends Lo{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=jo(this.iterable,e,t),this}get names(){return qn(super.names,this.iterable.names)}}class Ku extends en{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)}}Ku.kind="func";class Gu extends el{render(e){return"return "+super.render(e)}}Gu.kind="return";class aO extends en{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)qn(e,this.catch.names);if(this.finally)qn(e,this.finally.names);return e}}class Ju extends en{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Ju.kind="catch";class Yu extends en{render(e){return"finally"+super.render(e)}}Yu.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 Te.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 XT(e,o,r)),o}const(e,t,r){return this._def(Te.varKinds.const,e,t,r)}let(e,t,r){return this._def(Te.varKinds.let,e,t,r)}var(e,t,r){return this._def(Te.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new og(e,t,r))}add(e,t){return this._leafNode(new QT(e,dt.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new nO(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 Er(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 Er(e))}else(){return this._elseNode(new Vi)}endIf(){return this._endBlockNode(Er,Vi)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new sO(e),t)}forRange(e,t,r,n,o=this.opts.es5?Te.varKinds.var:Te.varKinds.let){let s=this._scope.toName(e);return this._for(new iO(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Te.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 rg("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Te.varKinds.var:Te.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 rg("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(Lo)}label(e){return this._leafNode(new eO(e))}break(e){return this._leafNode(new tO(e))}return(e){let t=new Gu;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Gu)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new aO;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new Ju(o),t(o)}if(r)this._currNode=n.finally=new Yu,this.code(r);return this._endBlockNode(Ju,Yu)}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 Ku(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Ku)}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 Er))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}}dt.CodeGen=cO;function qn(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Xu(e,t){return t instanceof M._CodeOrName?qn(e,t.names):e}function jo(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 g3(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function uO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${ng(e)}`}dt.not=uO;var y3=lO(dt.operators.AND);function b3(...e){return e.reduce(y3)}dt.and=b3;var w3=lO(dt.operators.OR);function _3(...e){return e.reduce(w3)}dt.or=_3;function lO(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${ng(t)} ${e} ${ng(r)}`}function ng(e){return e instanceof M.Name?e:M._`(${e})`}});var ce=E(function(_O){Object.defineProperty(_O,"__esModule",{value:!0});_O.checkStrictMode=_O.getErrorPath=_O.Type=_O.useFunc=_O.setEvaluated=_O.evaluatedPropsToName=_O.mergeEvaluated=_O.eachItem=_O.unescapeJsonPointer=_O.escapeJsonPointer=_O.escapeFragment=_O.unescapeFragment=_O.schemaRefOrVal=_O.schemaHasRulesButRef=_O.schemaHasRules=_O.checkUnknownRules=_O.alwaysValidSchema=_O.toHash=void 0;var B=ee(),mO=Wi();function k3(e){let t={};for(let r of e)t[r]=!0;return t}_O.toHash=k3;function $3(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return hO(e,t),!gO(t,e.self.RULES.all)}_O.alwaysValidSchema=$3;function hO(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])wO(e,`unknown keyword: "${s}"`)}_O.checkUnknownRules=hO;function gO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}_O.schemaHasRules=gO;function E3(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}_O.schemaHasRulesButRef=E3;function T3({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)}`}_O.schemaRefOrVal=T3;function O3(e){return yO(decodeURIComponent(e))}_O.unescapeFragment=O3;function P3(e){return encodeURIComponent(ig(e))}_O.escapeFragment=P3;function ig(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}_O.escapeJsonPointer=ig;function yO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}_O.unescapeJsonPointer=yO;function A3(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}_O.eachItem=A3;function pO({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}}_O.mergeEvaluated={props:pO({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} || {}`),ag(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:bO}),items:pO({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 bO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",B._`{}`);if(t!==void 0)ag(e,r,t);return r}_O.evaluatedPropsToName=bO;function ag(e,t,r){Object.keys(r).forEach((n)=>e.assign(B._`${t}${B.getProperty(n)}`,!0))}_O.setEvaluated=ag;var fO={};function I3(e,t){return e.scopeValue("func",{ref:t,code:fO[t.code]||(fO[t.code]=new mO._Code(t.code))})}_O.useFunc=I3;var sg;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(sg||(_O.Type=sg={}));function R3(e,t,r){if(e instanceof B.Name){let n=t===sg.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():"/"+ig(e)}_O.getErrorPath=R3;function wO(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}_O.checkStrictMode=wO});var Tr=E(function(SO){Object.defineProperty(SO,"__esModule",{value:!0});var le=ee(),J3={data:new le.Name("data"),valCxt:new le.Name("valCxt"),instancePath:new le.Name("instancePath"),parentData:new le.Name("parentData"),parentDataProperty:new le.Name("parentDataProperty"),rootData:new le.Name("rootData"),dynamicAnchors:new le.Name("dynamicAnchors"),vErrors:new le.Name("vErrors"),errors:new le.Name("errors"),this:new le.Name("this"),self:new le.Name("self"),scope:new le.Name("scope"),json:new le.Name("json"),jsonPos:new le.Name("jsonPos"),jsonLen:new le.Name("jsonLen"),jsonPart:new le.Name("jsonPart")};SO.default=J3});var Zi=E(function(EO){Object.defineProperty(EO,"__esModule",{value:!0});EO.extendErrors=EO.resetErrorsCount=EO.reportExtraError=EO.reportError=EO.keyword$DataError=EO.keywordError=void 0;var q=ee(),tn=ce(),nt=Tr();EO.keywordError={message:({keyword:e})=>q.str`must pass "${e}" keyword validation`};EO.keyword$DataError={message:({keyword:e,schemaType:t})=>t?q.str`"${e}" keyword must be ${t} ($data)`:q.str`"${e}" keyword is invalid ($data)`};function X3(e,t=EO.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=$O(e,t,r);if(n!==null&&n!==void 0?n:i||a)xO(s,c);else kO(o,q._`[${c}]`)}EO.reportError=X3;function Q3(e,t=EO.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=$O(e,t,r);if(xO(o,a),!(s||i))kO(n,nt.default.vErrors)}EO.reportExtraError=Q3;function eJ(e,t){e.assign(nt.default.errors,t),e.if(q._`${nt.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(q._`${nt.default.vErrors}.length`,t),()=>e.assign(nt.default.vErrors,null)))}EO.resetErrorsCount=eJ;function tJ({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,nt.default.errors,(a)=>{if(e.const(i,q._`${nt.default.vErrors}[${a}]`),e.if(q._`${i}.instancePath === undefined`,()=>e.assign(q._`${i}.instancePath`,q.strConcat(nt.default.instancePath,s.errorPath))),e.assign(q._`${i}.schemaPath`,q.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(q._`${i}.schema`,r),e.assign(q._`${i}.data`,n)})}EO.extendErrors=tJ;function xO(e,t){let r=e.const("err",t);e.if(q._`${nt.default.vErrors} === null`,()=>e.assign(nt.default.vErrors,q._`[${r}]`),q._`${nt.default.vErrors}.push(${r})`),e.code(q._`${nt.default.errors}++`)}function kO(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(q._`new ${e.ValidationError}(${t})`);else r.assign(q._`${n}.errors`,t),r.return(!1)}var Fn={keyword:new q.Name("keyword"),schemaPath:new q.Name("schemaPath"),params:new q.Name("params"),propertyName:new q.Name("propertyName"),message:new q.Name("message"),schema:new q.Name("schema"),parentSchema:new q.Name("parentSchema")};function $O(e,t,r){let{createErrors:n}=e.it;if(n===!1)return q._`{}`;return rJ(e,t,r)}function rJ(e,t,r={}){let{gen:n,it:o}=e,s=[nJ(o,r),oJ(e,r)];return sJ(e,t,s),n.object(...s)}function nJ({errorPath:e},{instancePath:t}){let r=t?q.str`${e}${tn.getErrorPath(t,tn.Type.Str)}`:e;return[nt.default.instancePath,q.strConcat(nt.default.instancePath,r)]}function oJ({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:q.str`${t}/${e}`;if(r)o=q.str`${o}${tn.getErrorPath(r,tn.Type.Str)}`;return[Fn.schemaPath,o]}function sJ(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([Fn.keyword,o],[Fn.params,typeof t=="function"?t(e):t||q._`{}`]),c.messages)n.push([Fn.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([Fn.schema,i],[Fn.parentSchema,q._`${l}${d}`],[nt.default.data,s]);if(u)n.push([Fn.propertyName,u])}});var CO=E(function(IO){Object.defineProperty(IO,"__esModule",{value:!0});IO.boolOrEmptySchema=IO.topBoolOrEmptySchema=void 0;var OO=Zi(),PO=ee(),lJ=Tr(),dJ={message:"boolean schema is false"};function pJ(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)AO(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(lJ.default.data);else t.assign(PO._`${n}.errors`,null),t.return(!0)}IO.topBoolOrEmptySchema=pJ;function fJ(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),AO(e);else r.var(t,!0)}IO.boolOrEmptySchema=fJ;function AO(e,t){let{gen:r,data:n}=e;OO.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},dJ,void 0,t)}});var ug=E(function(zO){Object.defineProperty(zO,"__esModule",{value:!0});zO.getRules=zO.isJSONType=void 0;var hJ=["string","number","integer","boolean","null","object","array"],gJ=new Set(hJ);function yJ(e){return typeof e=="string"&&gJ.has(e)}zO.isJSONType=yJ;function bJ(){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:{}}}zO.getRules=bJ});var lg=E(function(DO){Object.defineProperty(DO,"__esModule",{value:!0});DO.shouldUseRule=DO.shouldUseGroup=DO.schemaHasRulesForType=void 0;function _J({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&LO(e,n)}DO.schemaHasRulesForType=_J;function LO(e,t){return t.rules.some((r)=>jO(e,r))}DO.shouldUseGroup=LO;function jO(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))}DO.shouldUseRule=jO});var Bi=E(function(ZO){Object.defineProperty(ZO,"__esModule",{value:!0});ZO.reportTypeError=ZO.checkDataTypes=ZO.checkDataType=ZO.coerceAndCheckDataType=ZO.getJSONTypes=ZO.getSchemaTypes=ZO.DataType=void 0;var qO=ug(),FO=lg(),UO=Zi(),L=ee(),rl=ce(),Do;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(Do||(ZO.DataType=Do={}));function xJ(e){let t=WO(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}ZO.getSchemaTypes=xJ;function WO(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(qO.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}ZO.getJSONTypes=WO;function kJ(e,t){let{gen:r,data:n,opts:o}=e,s=$J(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&FO.schemaHasRulesForType(e,t[0]));if(i){let a=pg(t,n,o.strictNumbers,Do.Wrong);r.if(a,()=>{if(s.length)EJ(e,t,s);else fg(e)})}return i}ZO.coerceAndCheckDataType=kJ;var VO=new Set(["string","number","integer","boolean","null"]);function $J(e,t){return t?e.filter((r)=>VO.has(r)||t==="array"&&r==="array"):[]}function EJ(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(pg(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(L._`${a} !== undefined`);for(let u of r)if(VO.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),fg(e),n.endIf(),n.if(L._`${a} !== undefined`,()=>{n.assign(o,a),TJ(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,L._`+${o}`);return;case"integer":n.elseIf(L._`${i} === "boolean" || ${o} === null
|
|
168
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,L._`+${o}`);return;case"boolean":n.elseIf(L._`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf(L._`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf(L._`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf(L._`${i} === "string" || ${i} === "number"
|
|
169
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,L._`[${o}]`)}}}function TJ({gen:e,parentData:t,parentDataProperty:r},n){e.if(L._`${t} !== undefined`,()=>e.assign(L._`${t}[${r}]`,n))}function dg(e,t,r,n=Do.Correct){let o=n===Do.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===Do.Correct?s:L.not(s);function i(a=L.nil){return L.and(L._`typeof ${t} == "number"`,a,r?L._`isFinite(${t})`:L.nil)}}ZO.checkDataType=dg;function pg(e,t,r,n){if(e.length===1)return dg(e[0],t,r,n);let o,s=rl.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,dg(i,t,r,n));return o}ZO.checkDataTypes=pg;var OJ={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?L._`{type: ${e}}`:L._`{type: ${t}}`};function fg(e){let t=PJ(e);UO.reportError(t,OJ)}ZO.reportTypeError=fg;function PJ(e){let{gen:t,data:r,schema:n}=e,o=rl.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var YO=E(function(GO){Object.defineProperty(GO,"__esModule",{value:!0});GO.assignDefaults=void 0;var zt=ee(),KO=ce();function LJ(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)HO(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>HO(e,s,o.default))}GO.assignDefaults=LJ;function HO(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=zt._`${s}${zt.getProperty(t)}`;if(o){KO.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=zt._`${a} === undefined`;if(i.useDefaults==="empty")c=zt._`${c} || ${a} === null || ${a} === ""`;n.if(c,zt._`${a} = ${zt.stringify(r)}`)}});var Nt=E(function(tP){Object.defineProperty(tP,"__esModule",{value:!0});tP.validateUnion=tP.validateArray=tP.usePattern=tP.callValidateCode=tP.schemaProperties=tP.allSchemaProperties=tP.noPropertyInData=tP.propertyInData=tP.isOwnProperty=tP.hasPropFunc=tP.reportMissingProp=tP.checkMissingProp=tP.checkReportMissingProp=void 0;var K=ee(),Mo=ce(),rn=Tr(),XO=ce();function jJ(e,t){let{gen:r,data:n,it:o}=e;r.if(hg(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:K._`${t}`},!0),e.error()})}tP.checkReportMissingProp=jJ;function DJ({gen:e,data:t,it:{opts:r}},n,o){return K.or(...n.map((s)=>K.and(hg(e,t,s,r.ownProperties),K._`${o} = ${s}`)))}tP.checkMissingProp=DJ;function MJ(e,t){e.setParams({missingProperty:t},!0),e.error()}tP.reportMissingProp=MJ;function QO(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:K._`Object.prototype.hasOwnProperty`})}tP.hasPropFunc=QO;function mg(e,t,r){return K._`${QO(e)}.call(${t}, ${r})`}tP.isOwnProperty=mg;function qJ(e,t,r,n){let o=K._`${t}${K.getProperty(r)} !== undefined`;return n?K._`${o} && ${mg(e,t,r)}`:o}tP.propertyInData=qJ;function hg(e,t,r,n){let o=K._`${t}${K.getProperty(r)} === undefined`;return n?K.or(o,K.not(mg(e,t,r))):o}tP.noPropertyInData=hg;function eP(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}tP.allSchemaProperties=eP;function FJ(e,t){return eP(t).filter((r)=>!Mo.alwaysValidSchema(e,t[r]))}tP.schemaProperties=FJ;function UJ({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?K._`${e}, ${t}, ${n}${o}`:t,d=[[rn.default.instancePath,K.strConcat(rn.default.instancePath,s)],[rn.default.parentData,i.parentData],[rn.default.parentDataProperty,i.parentDataProperty],[rn.default.rootData,rn.default.rootData]];if(i.opts.dynamicRef)d.push([rn.default.dynamicAnchors,rn.default.dynamicAnchors]);let f=K._`${l}, ${r.object(...d)}`;return c!==K.nil?K._`${a}.call(${c}, ${f})`:K._`${a}(${f})`}tP.callValidateCode=UJ;var WJ=K._`new RegExp`;function VJ({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:K._`${o.code==="new RegExp"?WJ:XO.useFunc(e,o)}(${r}, ${n})`})}tP.usePattern=VJ;function ZJ(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",K._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:Mo.Type.Num},s),t.if(K.not(s),a)})}}tP.validateArray=ZJ;function BJ(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>Mo.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,K._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(K.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}tP.validateUnion=BJ});var uP=E(function(aP){Object.defineProperty(aP,"__esModule",{value:!0});aP.validateKeywordUsage=aP.validSchemaType=aP.funcKeywordCode=aP.macroKeywordCode=void 0;var me=ee(),Un=Tr(),oP=Nt(),sP=Zi();function s6(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=iP(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let u=r.name("valid");e.subschema({schema:a,schemaPath:me.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}aP.macroKeywordCode=s6;function i6(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;c6(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=iP(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)nP(e);y(()=>e.error())}else{let _=t.async?m():h();if(t.modifying)nP(e);y(()=>a6(e,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>g(me._`await `),(T)=>n.assign(d,!1).if(me._`${T} instanceof ${c.ValidationError}`,()=>n.assign(_,me._`${T}.errors`),()=>n.throw(T))),_}function h(){let _=me._`${l}.errors`;return n.assign(_,null),g(me.nil),_}function g(_=t.async?me._`await `:me.nil){let T=c.opts.passContext?Un.default.this:Un.default.self,x=!(("compile"in t)&&!a||t.schema===!1);n.assign(d,me._`${_}${oP.callValidateCode(e,l,T,x)}`,t.modifying)}function y(_){var T;n.if(me.not((T=t.valid)!==null&&T!==void 0?T:d),_)}}aP.funcKeywordCode=i6;function nP(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,me._`${n.parentData}[${n.parentDataProperty}]`))}function a6(e,t){let{gen:r}=e;r.if(me._`Array.isArray(${t})`,()=>{r.assign(Un.default.vErrors,me._`${Un.default.vErrors} === null ? ${t} : ${Un.default.vErrors}.concat(${t})`).assign(Un.default.errors,me._`${Un.default.vErrors}.length`),sP.extendErrors(e)},()=>e.error())}function c6({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function iP(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:me.stringify(r)})}function u6(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")}aP.validSchemaType=u6;function l6({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)}}}aP.validateKeywordUsage=l6});var pP=E(function(lP){Object.defineProperty(lP,"__esModule",{value:!0});lP.extendSubschemaMode=lP.extendSubschemaData=lP.getSubschema=void 0;var ze=ee(),nl=ce();function m6(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:ze._`${e.schemaPath}${ze.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:ze._`${e.schemaPath}${ze.getProperty(t)}${ze.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${nl.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')}lP.getSubschema=m6;function h6(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",ze._`${t.data}${ze.getProperty(r)}`,!0);c(f),e.errorPath=ze.str`${u}${nl.getErrorPath(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=ze._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof ze.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]}}lP.extendSubschemaData=h6;function g6(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}lP.extendSubschemaMode=g6});var gg=E(function(abe,fP){fP.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 hP=E(function(cbe,mP){var nn=mP.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(){};ol(t,n,o,e,"",e)};nn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};nn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};nn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};nn.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 ol(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 nn.arrayKeywords)for(var f=0;f<d.length;f++)ol(e,t,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in nn.propsKeywords){if(d&&typeof d=="object")for(var m in d)ol(e,t,r,d[m],o+"/"+l+"/"+w6(m),s,o,l,n,m)}else if(l in nn.keywords||e.allKeys&&!(l in nn.skipKeywords))ol(e,t,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function w6(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var Hi=E(function(_P){Object.defineProperty(_P,"__esModule",{value:!0});_P.getSchemaRefs=_P.resolveUrl=_P.normalizeId=_P._getFullPath=_P.getFullPath=_P.inlineRef=void 0;var gP=ce(),_6=gg(),v6=hP(),S6=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function x6(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!yg(e);if(!t)return!1;return yP(e)<=t}_P.inlineRef=x6;var k6=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function yg(e){for(let t in e){if(k6.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(yg))return!0;if(typeof r=="object"&&yg(r))return!0}return!1}function yP(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,S6.has(r))continue;if(typeof e[r]=="object")gP.eachItem(e[r],(n)=>t+=yP(n));if(t===1/0)return 1/0}return t}function bP(e,t="",r){if(r!==!1)t=qo(t);let n=e.parse(t);return wP(e,n)}_P.getFullPath=bP;function wP(e,t){return e.serialize(t).split("#")[0]+"#"}_P._getFullPath=wP;var $6=/#\/?$/;function qo(e){return e?e.replace($6,""):""}_P.normalizeId=qo;function E6(e,t,r){return r=qo(r),e.resolve(t,r)}_P.resolveUrl=E6;var T6=/^[a-z_][-a-z0-9._]*$/i;function O6(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=qo(e[r]||t),s={"":o},i=bP(n,o,!1),a={},c=new Set;return v6(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=_.call(this,d[r]);T.call(this,d.$anchor),T.call(this,d.$dynamicAnchor),s[f]=y;function _(x){let A=this.opts.uriResolver.resolve;if(x=qo(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let w=this.refs[x];if(typeof w=="string")w=this.refs[w];if(typeof w=="object")u(d,w.schema,x);else if(x!==qo(g))if(x[0]==="#")u(d,a[x],x),a[x]=d;else this.refs[x]=g;return x}function T(x){if(typeof x=="string"){if(!T6.test(x))throw Error(`invalid anchor "${x}"`);_.call(this,`#${x}`)}}}),a;function u(d,f,m){if(f!==void 0&&!_6(d,f))throw l(m)}function l(d){return Error(`reference "${d}" resolves to more than one schema`)}}_P.getSchemaRefs=O6});var Ki=E(function(LP){Object.defineProperty(LP,"__esModule",{value:!0});LP.getData=LP.KeywordCxt=LP.validateFunctionCode=void 0;var il=CO(),sl=Bi(),Uo=lg(),on=Bi(),$P=YO(),rr=uP(),Fo=pP(),R=ee(),Y=Tr(),EP=Hi(),Ze=ce(),tr=Zi();function z6(e){if(PP(e)){if(AP(e),OP(e)){j6(e);return}}TP(e,()=>il.topBoolOrEmptySchema(e))}LP.validateFunctionCode=z6;function TP({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,R._`${Y.default.data}, ${Y.default.valCxt}`,n.$async,()=>{e.code(R._`"use strict"; ${SP(r,o)}`),L6(e,o),e.code(s)});else e.func(t,R._`${Y.default.data}, ${N6(o)}`,n.$async,()=>e.code(SP(r,o)).code(s))}function N6(e){return R._`{${Y.default.instancePath}="", ${Y.default.parentData}, ${Y.default.parentDataProperty}, ${Y.default.rootData}=${Y.default.data}${e.dynamicRef?R._`, ${Y.default.dynamicAnchors}={}`:R.nil}}={}`}function L6(e,t){e.if(Y.default.valCxt,()=>{if(e.var(Y.default.instancePath,R._`${Y.default.valCxt}.${Y.default.instancePath}`),e.var(Y.default.parentData,R._`${Y.default.valCxt}.${Y.default.parentData}`),e.var(Y.default.parentDataProperty,R._`${Y.default.valCxt}.${Y.default.parentDataProperty}`),e.var(Y.default.rootData,R._`${Y.default.valCxt}.${Y.default.rootData}`),t.dynamicRef)e.var(Y.default.dynamicAnchors,R._`${Y.default.valCxt}.${Y.default.dynamicAnchors}`)},()=>{if(e.var(Y.default.instancePath,R._`""`),e.var(Y.default.parentData,R._`undefined`),e.var(Y.default.parentDataProperty,R._`undefined`),e.var(Y.default.rootData,Y.default.data),t.dynamicRef)e.var(Y.default.dynamicAnchors,R._`{}`)})}function j6(e){let{schema:t,opts:r,gen:n}=e;TP(e,()=>{if(r.$comment&&t.$comment)RP(e);if(U6(e),n.let(Y.default.vErrors,null),n.let(Y.default.errors,0),r.unevaluated)D6(e);IP(e),Z6(e)});return}function D6(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 SP(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?R._`/*# sourceURL=${r} */`:R.nil}function M6(e,t){if(PP(e)){if(AP(e),OP(e)){q6(e,t);return}}il.boolOrEmptySchema(e,t)}function OP({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 PP(e){return typeof e.schema!="boolean"}function q6(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)RP(e);W6(e),V6(e);let s=n.const("_errs",Y.default.errors);IP(e,s),n.var(t,R._`${s} === ${Y.default.errors}`)}function AP(e){Ze.checkUnknownRules(e),F6(e)}function IP(e,t){if(e.opts.jtd)return xP(e,[],!1,t);let r=sl.getSchemaTypes(e.schema),n=sl.coerceAndCheckDataType(e,r);xP(e,r,!n,t)}function F6(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Ze.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function U6(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Ze.checkStrictMode(e,"default is ignored in the schema root")}function W6(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=EP.resolveUrl(e.opts.uriResolver,e.baseId,t)}function V6(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function RP({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(R._`${Y.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._`${Y.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Z6(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(R._`${Y.default.errors} === 0`,()=>t.return(Y.default.data),()=>t.throw(R._`new ${o}(${Y.default.vErrors})`));else{if(t.assign(R._`${n}.errors`,Y.default.vErrors),s.unevaluated)B6(e);t.return(R._`${Y.default.errors} === 0`)}}function B6({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 xP(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||!Ze.schemaHasRulesButRef(s,l))){o.block(()=>zP(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)H6(e,t);o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){if(!Uo.shouldUseGroup(s,f))return;if(f.type){if(o.if(on.checkDataType(f.type,i,c.strictNumbers)),kP(e,f),t.length===1&&t[0]===f.type&&r)o.else(),on.reportTypeError(e);o.endIf()}else kP(e,f);if(!a)o.if(R._`${Y.default.errors} === ${n||0}`)}}function kP(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)$P.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(Uo.shouldUseRule(n,s))zP(e,s.keyword,s.definition,t.type)})}function H6(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(K6(e,t),!e.opts.allowUnionTypes)G6(e,t);J6(e,e.dataTypes)}function K6(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!CP(e.dataTypes,r))bg(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),X6(e,t)}function G6(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))bg(e,"use allowUnionTypes to allow union type keyword")}function J6(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&Uo.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>Y6(t,i)))bg(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Y6(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function CP(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function X6(e,t){let r=[];for(let n of e.dataTypes)if(CP(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function bg(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Ze.checkStrictMode(e,t,e.opts.strictTypes)}class wg{constructor(e,t,r){if(rr.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=Ze.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",NP(this.$data,e));else if(this.schemaCode=this.schemaValue,!rr.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",Y.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?tr.reportExtraError:tr.reportError)(this,this.def.error,t)}$dataError(){tr.reportError(this,this.def.$dataError||tr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');tr.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._`${on.checkDataTypes(a,t,o.opts.strictNumbers,on.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=Fo.getSubschema(this.it,e);Fo.extendSubschemaData(r,this.it,e),Fo.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return M6(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=Ze.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Ze.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}}LP.KeywordCxt=wg;function zP(e,t,r,n){let o=new wg(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)rr.funcKeywordCode(o,r);else if("macro"in r)rr.macroKeywordCode(o,r);else if(r.compile||r.validate)rr.funcKeywordCode(o,r)}var Q6=/^\/(?:[^~]|~0|~1)*$/,e5=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function NP(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return Y.default.rootData;if(e[0]==="/"){if(!Q6.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=Y.default.rootData}else{let u=e5.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(Ze.unescapeJsonPointer(u))}`,i=R._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}LP.getData=NP});var al=E(function(MP){Object.defineProperty(MP,"__esModule",{value:!0});class DP extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}MP.default=DP});var Gi=E(function(FP){Object.defineProperty(FP,"__esModule",{value:!0});var Wo=Hi();class qP extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=Wo.resolveUrl(e,t,r),this.missingSchema=Wo.normalizeId(Wo.getFullPath(e,this.missingRef))}}FP.default=qP});var ll=E(function(VP){Object.defineProperty(VP,"__esModule",{value:!0});VP.resolveSchema=VP.getCompilingSchema=VP.resolveRef=VP.compileSchema=VP.SchemaEnv=void 0;var Oe=ee(),s5=al(),Wn=Tr(),Pe=Hi(),cl=ce(),UP=Ki();class Ji{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:Pe.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={}}}VP.SchemaEnv=Ji;function vg(e){let t=WP.call(this,e);if(t)return t;let r=Pe.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Oe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:s5.default,code:Oe._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Wn.default.data,parentData:Wn.default.parentData,parentDataProperty:Wn.default.parentDataProperty,dataNames:[Wn.default.data],dataPathArr:[Oe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Oe.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Oe.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Oe._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),UP.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let d=i.toString();if(l=`${i.scopeRefs(Wn.default.scope)}return ${d}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${Wn.default.self}`,`${Wn.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 Oe.Name?void 0:h,items:g instanceof Oe.Name?void 0:g,dynamicProps:h instanceof Oe.Name,dynamicItems:g instanceof Oe.Name},m.source)m.source.evaluated=Oe.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)}}VP.compileSchema=vg;function i5(e,t,r){var n;r=Pe.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=u5.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 Ji({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=a5.call(this,s)}VP.resolveRef=i5;function a5(e){if(Pe.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:vg.call(this,e)}function WP(e){for(let t of this._compilations)if(c5(t,e))return t}VP.getCompilingSchema=WP;function c5(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function u5(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||ul.call(this,e,t)}function ul(e,t){let r=this.opts.uriResolver.parse(t),n=Pe._getFullPath(this.opts.uriResolver,r),o=Pe.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return _g.call(this,r,e);let s=Pe.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=ul.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return _g.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)vg.call(this,i);if(s===Pe.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Pe.resolveUrl(this.opts.uriResolver,o,u);return new Ji({schema:a,schemaId:c,root:e,baseId:o})}return _g.call(this,r,i)}VP.resolveSchema=ul;var l5=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function _g(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[cl.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!l5.has(a)&&u)t=Pe.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!cl.schemaHasRulesButRef(r,this.RULES)){let a=Pe.resolveUrl(this.opts.uriResolver,t,r.$ref);s=ul.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Ji({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var BP=E(function(mbe,h5){h5.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 kg=E(function(hbe,XP){var g5=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),KP=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),Sg=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),GP=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),y5=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function xg(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 b5=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function HP(e){return e.length=0,!0}function w5(e,t,r){if(e.length){let n=xg(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function _5(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=w5;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=HP}else{o.push(u);continue}}if(o.length)if(a===HP)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(xg(o));return r.address=n.join(""),r}function JP(e){if(v5(e,":")<2)return{host:e,isIPV6:!1};let t=_5(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 v5(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function S5(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 x5={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},k5=/[@/?#:]/g,$5=/[@/?#]/g;function YP(e,t){let r=t?$5:k5;return r.lastIndex=0,e.replace(r,(n)=>x5[n])}function E5(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(Sg(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&GP(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function T5(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(Sg(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&GP(s))t+=s;else t+="%"+o;r+=2;continue}}if(y5(e[r]))t+=e[r];else t+=escape(e[r])}return t}function O5(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(Sg(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function P5(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(!KP(r)){let n=JP(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=YP(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}XP.exports={nonSimpleDomain:b5,recomposeAuthority:P5,reescapeHostDelimiters:YP,normalizePercentEncoding:E5,normalizePathEncoding:T5,escapePreservingEscapes:O5,removeDotSegments:S5,isIPv4:KP,isUUID:g5,normalizeIPv6:JP,stringArrayToHexStripped:xg}});var nA=E(function(gbe,rA){var{isUUID:A5}=kg(),I5=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,R5=["http","https","ws","wss","urn","urn:uuid"];function C5(e){return R5.indexOf(e)!==-1}function $g(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 QP(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function eA(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 z5(e){return e.secure=$g(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function N5(e){if(e.port===($g(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 L5(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(I5);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=Eg(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 j5(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=Eg(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 D5(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!A5(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function M5(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var tA={scheme:"http",domainHost:!0,parse:QP,serialize:eA},q5={scheme:"https",domainHost:tA.domainHost,parse:QP,serialize:eA},dl={scheme:"ws",domainHost:!0,parse:z5,serialize:N5},F5={scheme:"wss",domainHost:dl.domainHost,parse:dl.parse,serialize:dl.serialize},U5={scheme:"urn",parse:L5,serialize:j5,skipNormalize:!0},W5={scheme:"urn:uuid",parse:D5,serialize:M5,skipNormalize:!0},pl={http:tA,https:q5,ws:dl,wss:F5,urn:U5,"urn:uuid":W5};Object.setPrototypeOf(pl,null);function Eg(e){return e&&(pl[e]||pl[e.toLowerCase()])||void 0}rA.exports={wsIsSecure:$g,SCHEMES:pl,isValidSchemeName:C5,getSchemeHandler:Eg}});var uA=E(function(ybe,fl){var{normalizeIPv6:V5,removeDotSegments:Yi,recomposeAuthority:Z5,normalizePercentEncoding:B5,normalizePathEncoding:H5,escapePreservingEscapes:K5,reescapeHostDelimiters:G5,isIPv4:J5,nonSimpleDomain:Y5}=kg(),{SCHEMES:X5,getSchemeHandler:sA}=nA();function Q5(e,t){if(typeof e==="string")e=s7(e,t);else if(typeof e==="object")e=Vo(Vn(e,t),t);return e}function e7(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=iA(Vo(e,n),Vo(t,n),n,!0);return n.skipEscape=!0,Vn(o,n)}function iA(e,t,r,n){let o={};if(!n)e=Vo(Vn(e,r),r),t=Vo(Vn(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=Yi(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=Yi(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=Yi(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=Yi(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 t7(e,t,r){let n=oA(e,r),o=oA(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Vn(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=sA(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=K5(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=B5(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=Z5(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=Yi(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 r7=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,n7=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function o7(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 aA(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(n7);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(r7);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=o7(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(J5(n.host)===!1){let d=V5(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=sA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&Y5(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=G5(unescape(n.host),s)}if(n.path)n.path=H5(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 Vo(e,t){return aA(e,t).parsed}function s7(e,t){return cA(e,t).normalized}function cA(e,t){let{parsed:r,malformedAuthorityOrPort:n}=aA(e,t);return{normalized:n?e:Vn(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 Vn(e,t)}var Tg={SCHEMES:X5,normalize:Q5,resolve:e7,resolveComponent:iA,equal:t7,serialize:Vn,parse:Vo};fl.exports=Tg;fl.exports.default=Tg;fl.exports.fastUri=Tg});var pA=E(function(dA){Object.defineProperty(dA,"__esModule",{value:!0});var lA=uA();lA.code='require("ajv/dist/runtime/uri").default';dA.default=lA});var SA=E(function(Or){Object.defineProperty(Or,"__esModule",{value:!0});Or.CodeGen=Or.Name=Or.nil=Or.stringify=Or.str=Or._=Or.KeywordCxt=void 0;var a7=Ki();Object.defineProperty(Or,"KeywordCxt",{enumerable:!0,get:function(){return a7.KeywordCxt}});var Bo=ee();Object.defineProperty(Or,"_",{enumerable:!0,get:function(){return Bo._}});Object.defineProperty(Or,"str",{enumerable:!0,get:function(){return Bo.str}});Object.defineProperty(Or,"stringify",{enumerable:!0,get:function(){return Bo.stringify}});Object.defineProperty(Or,"nil",{enumerable:!0,get:function(){return Bo.nil}});Object.defineProperty(Or,"Name",{enumerable:!0,get:function(){return Bo.Name}});Object.defineProperty(Or,"CodeGen",{enumerable:!0,get:function(){return Bo.CodeGen}});var c7=al(),yA=Gi(),bA=ug(),nr=ll(),wA=ee(),or=Hi(),sn=Bi(),Zo=ce(),fA=BP(),u7=pA(),_A=(e,t)=>new RegExp(e,t);_A.code="new RegExp";var l7=["removeAdditional","useDefaults","coerceTypes"],d7=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),p7={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."},f7={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},mA=200;function m7(e){var t,r,n,o,s,i,a,c,u,l,d,f,m,h,g,y,_,T,x,A,w,v,S,I,j;let G=e.strict,se=(t=e.code)===null||t===void 0?void 0:t.optimize,ie=se===!0||se===void 0?1:se||0,Le=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:_A,W=(o=e.uriResolver)!==null&&o!==void 0?o:u7.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:G)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:G)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:G)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:G)!==null&&f!==void 0?f:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:G)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:ie,regExp:Le}:{optimize:ie,regExp:Le},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:mA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:mA,meta:(_=e.meta)!==null&&_!==void 0?_:!0,messages:(T=e.messages)!==null&&T!==void 0?T:!0,inlineRefs:(x=e.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=e.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(w=e.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:!0,validateFormats:(S=e.validateFormats)!==null&&S!==void 0?S:!0,unicodeRegExp:(I=e.unicodeRegExp)!==null&&I!==void 0?I:!0,int32range:(j=e.int32range)!==null&&j!==void 0?j:!0,uriResolver:W}}class ml{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,...m7(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new wA.ValueScope({scope:{},prefixes:d7,es5:t,lines:r}),this.logger=_7(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=bA.getRules(),hA.call(this,p7,e,"NOT SUPPORTED"),hA.call(this,f7,e,"DEPRECATED","warn"),this._metaOpts=b7.call(this),e.formats)g7.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)y7.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);h7.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=fA;if(r==="id")n={...fA},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 yA.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=or.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=gA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new nr.SchemaEnv({schema:{},schemaId:r});if(t=nr.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=gA.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=or.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(S7.call(this,r,t),!t)return Zo.eachItem(r,(o)=>Og.call(this,o)),this;k7.call(this,t);let n={...t,type:sn.getJSONTypes(t.type),schemaType:sn.getJSONTypes(t.schemaType)};return Zo.eachItem(r,n.type.length===0?(o)=>Og.call(this,o,n):(o)=>n.type.forEach((s)=>Og.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]=vA(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=or.normalizeId(s||r);let c=or.getSchemaRefs.call(this,e,r);if(a=new nr.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 nr.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{nr.compileSchema.call(this,e)}finally{this.opts=t}}}ml.ValidationError=c7.default;ml.MissingRefError=yA.default;Or.default=ml;function hA(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 gA(e){return e=or.normalizeId(e),this.schemas[e]||this.refs[e]}function h7(){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 g7(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function y7(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 b7(){let e={...this.opts};for(let t of l7)delete e[t];return e}var w7={log(){},warn(){},error(){}};function _7(e){if(e===!1)return w7;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 v7=/^[a-z_$][a-z0-9_$:-]*$/i;function S7(e,t){let{RULES:r}=this;if(Zo.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!v7.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 Og(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:sn.getJSONTypes(t.type),schemaType:sn.getJSONTypes(t.schemaType)}};if(t.before)x7.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 x7(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 k7(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=vA(t);e.validateSchema=this.compile(t,!0)}var $7={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function vA(e){return{anyOf:[e,$7]}}});var kA=E(function(xA){Object.defineProperty(xA,"__esModule",{value:!0});var O7={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};xA.default=O7});var OA=E(function(EA){Object.defineProperty(EA,"__esModule",{value:!0});EA.callRef=EA.getValidate=void 0;var A7=Gi(),gl=Nt(),be=ee(),Ho=Tr(),yl=ll(),an=ce(),I7={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 A7.default(n.opts.uriResolver,o,r);if(l instanceof yl.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return hl(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return hl(e,be._`${h}.validate`,u,u.$async)}function f(h){let g=$A(e,h);hl(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"),_=e.subschema({schema:h,dataTypes:[],schemaPath:be.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(_),e.ok(y)}}};function $A(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):be._`${r.scopeValue("wrapper",{ref:t})}.validate`}EA.getValidate=$A;function hl(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Ho.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 ${gl.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(gl.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=be._`${h}.errors`;o.assign(Ho.default.vErrors,be._`${Ho.default.vErrors} === null ? ${g} : ${Ho.default.vErrors}.concat(${g})`),o.assign(Ho.default.errors,be._`${Ho.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=an.mergeEvaluated.props(o,y.props,s.props)}else{let _=o.var("props",be._`${h}.evaluated.props`);s.props=an.mergeEvaluated.props(o,_,s.props,be.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=an.mergeEvaluated.items(o,y.items,s.items)}else{let _=o.var("items",be._`${h}.evaluated.items`);s.items=an.mergeEvaluated.items(o,_,s.items,be.Name)}}}EA.callRef=hl;EA.default=I7});var AA=E(function(PA){Object.defineProperty(PA,"__esModule",{value:!0});var z7=kA(),N7=OA(),L7=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",z7.default,N7.default];PA.default=L7});var RA=E(function(IA){Object.defineProperty(IA,"__esModule",{value:!0});var un=ee(),cn=un.operators,bl={maximum:{okStr:"<=",ok:cn.LTE,fail:cn.GT},minimum:{okStr:">=",ok:cn.GTE,fail:cn.LT},exclusiveMaximum:{okStr:"<",ok:cn.LT,fail:cn.GTE},exclusiveMinimum:{okStr:">",ok:cn.GT,fail:cn.LTE}},D7={message:({keyword:e,schemaCode:t})=>un.str`must be ${bl[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>un._`{comparison: ${bl[e].okStr}, limit: ${t}}`},M7={keyword:Object.keys(bl),type:"number",schemaType:"number",$data:!0,error:D7,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(un._`${r} ${bl[t].fail} ${n} || isNaN(${r})`)}};IA.default=M7});var zA=E(function(CA){Object.defineProperty(CA,"__esModule",{value:!0});var sr=ee(),F7={message:({schemaCode:e})=>sr.str`must be multiple of ${e}`,params:({schemaCode:e})=>sr._`{multipleOf: ${e}}`},U7={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:F7,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?sr._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:sr._`${i} !== parseInt(${i})`;e.fail$data(sr._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};CA.default=U7});var jA=E(function(LA){Object.defineProperty(LA,"__esModule",{value:!0});function NA(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}LA.default=NA;NA.code='require("ajv/dist/runtime/ucs2length").default'});var qA=E(function(MA){Object.defineProperty(MA,"__esModule",{value:!0});var pt=ee(),DA=ce(),Z7=jA(),B7={message({keyword:e,schemaCode:t}){return pt.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>pt._`{limit: ${e}}`},H7={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:B7,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?pt.operators.GT:pt.operators.LT,i=o.opts.unicode===!1?pt._`${r}.length`:pt._`${DA.useFunc(e.gen,Z7.default)}(${r})`;e.fail$data(pt._`${i} ${s} ${n}`)}};MA.default=H7});var VA=E(function(WA){Object.defineProperty(WA,"__esModule",{value:!0});var FA=Nt(),UA=ce(),Lt=ee(),G7={message:({schemaCode:e})=>Lt.str`must match pattern "${e}"`,params:({schemaCode:e})=>Lt._`{pattern: ${e}}`},J7={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:G7,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"?Lt._`new RegExp`:UA.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,Lt._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(Lt._`!${l}`)}else{let c=FA.usePattern(e,o);e.fail$data(Lt._`!${c}.test(${r})`)}}};WA.default=J7});var BA=E(function(ZA){Object.defineProperty(ZA,"__esModule",{value:!0});var ir=ee(),X7={message({keyword:e,schemaCode:t}){return ir.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>ir._`{limit: ${e}}`},Q7={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:X7,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?ir.operators.GT:ir.operators.LT;e.fail$data(ir._`Object.keys(${r}).length ${o} ${n}`)}};ZA.default=Q7});var GA=E(function(KA){Object.defineProperty(KA,"__esModule",{value:!0});var ar=Nt(),cr=ee(),HA=ce(),tY={message:({params:{missingProperty:e}})=>cr.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>cr._`{missingProperty: ${e}}`},rY={keyword:"required",type:"object",schemaType:"array",$data:!0,error:tY,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,_=`required property "${g}" is not defined at "${y}" (strictRequired)`;HA.checkStrictMode(i,_,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(cr.nil,d);else for(let m of r)ar.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(ar.checkMissingProp(e,r,m)),ar.reportMissingProp(e,m),t.else()}function d(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(ar.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,ar.propertyInData(t,o,m,a.ownProperties)),t.if(cr.not(h),()=>{e.error(),t.break()})},cr.nil)}}};KA.default=rY});var YA=E(function(JA){Object.defineProperty(JA,"__esModule",{value:!0});var ur=ee(),oY={message({keyword:e,schemaCode:t}){return ur.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>ur._`{limit: ${e}}`},sY={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:oY,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?ur.operators.GT:ur.operators.LT;e.fail$data(ur._`${r}.length ${o} ${n}`)}};JA.default=sY});var wl=E(function(QA){Object.defineProperty(QA,"__esModule",{value:!0});var XA=gg();XA.code='require("ajv/dist/runtime/equal").default';QA.default=XA});var rI=E(function(tI){Object.defineProperty(tI,"__esModule",{value:!0});var Ko=Bi(),ue=ee(),eI=ce(),cY=wl(),uY={message:({params:{i:e,j:t}})=>ue.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>ue._`{i: ${e}, j: ${t}}`},lY={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:uY,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?Ko.getSchemaTypes(s.items):[];e.block$data(c,l,ue._`${i} === false`),e.ok(c);function l(){let h=t.let("i",ue._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(ue._`${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"),_=Ko.checkDataTypes(u,y,a.opts.strictNumbers,Ko.DataType.Wrong),T=t.const("indices",ue._`{}`);t.for(ue._`;${h}--;`,()=>{if(t.let(y,ue._`${r}[${h}]`),t.if(_,ue._`continue`),u.length>1)t.if(ue._`typeof ${y} == "string"`,ue._`${y} += "_"`);t.if(ue._`typeof ${T}[${y}] == "number"`,()=>{t.assign(g,ue._`${T}[${y}]`),e.error(),t.assign(c,!1).break()}).code(ue._`${T}[${y}] = ${h}`)})}function m(h,g){let y=eI.useFunc(t,cY.default),_=t.name("outer");t.label(_).for(ue._`;${h}--;`,()=>t.for(ue._`${g} = ${h}; ${g}--;`,()=>t.if(ue._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(_)})))}}};tI.default=lY});var sI=E(function(oI){Object.defineProperty(oI,"__esModule",{value:!0});var Go=ee(),nI=ce(),pY=wl(),fY={message:"must be equal to constant",params:({schemaCode:e})=>Go._`{allowedValue: ${e}}`},mY={keyword:"const",$data:!0,error:fY,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(Go._`!${nI.useFunc(t,pY.default)}(${r}, ${o})`);else e.fail(Go._`${s} !== ${r}`)}};oI.default=mY});var cI=E(function(aI){Object.defineProperty(aI,"__esModule",{value:!0});var lr=ee(),iI=ce(),gY=wl(),yY={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>lr._`{allowedValues: ${e}}`},bY={keyword:"enum",schemaType:"array",$data:!0,error:yY,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=iI.useFunc(t,gY.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=lr.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(lr._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?lr._`${u()}(${r}, ${m}[${h}])`:lr._`${r} === ${g}`}}};aI.default=bY});var lI=E(function(uI){Object.defineProperty(uI,"__esModule",{value:!0});var _Y=RA(),vY=zA(),SY=qA(),xY=VA(),kY=BA(),$Y=GA(),EY=YA(),TY=rI(),OY=sI(),PY=cI(),AY=[_Y.default,vY.default,SY.default,xY.default,kY.default,$Y.default,EY.default,TY.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},OY.default,PY.default];uI.default=AY});var Pg=E(function(pI){Object.defineProperty(pI,"__esModule",{value:!0});pI.validateAdditionalItems=void 0;var ft=ee(),Jo=ce(),RY={message:({params:{len:e}})=>ft.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>ft._`{limit: ${e}}`},CY={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:RY,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){Jo.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}dI(e,n)}};function dI(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",ft._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(ft._`${a} <= ${t.length}`);else if(typeof n=="object"&&!Jo.alwaysValidSchema(i,n)){let u=r.var("valid",ft._`${a} <= ${t.length}`);r.if(ft.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:Jo.Type.Num},u),!i.allErrors)r.if(ft.not(u),()=>r.break())})}}pI.validateAdditionalItems=dI;pI.default=CY});var Ag=E(function(gI){Object.defineProperty(gI,"__esModule",{value:!0});gI.validateTuple=void 0;var _l=ee(),ln=ce(),mI=Nt(),NY={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return hI(e,"additionalItems",t);if(r.items=!0,ln.alwaysValidSchema(r,t))return;e.ok(mI.validateArray(e))}};function hI(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=ln.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",_l._`${s}.length`);r.forEach((d,f)=>{if(ln.alwaysValidSchema(a,d))return;n.if(_l._`${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}"`;ln.checkStrictMode(a,y,f.strictTuples)}}}gI.validateTuple=hI;gI.default=NY});var _I=E(function(wI){Object.defineProperty(wI,"__esModule",{value:!0});var bI=Ag(),jY={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>bI.validateTuple(e,"items")};wI.default=jY});var $I=E(function(kI){Object.defineProperty(kI,"__esModule",{value:!0});var vl=ee(),vI=ce(),SI=Nt(),xI=Pg(),MY={message:({params:{len:e}})=>vl.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>vl._`{limit: ${e}}`},qY={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:MY,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,vI.alwaysValidSchema(n,t))return;if(o)xI.validateAdditionalItems(e,o);else e.ok(SI.validateArray(e))}};kI.default=qY});var TI=E(function(EI){Object.defineProperty(EI,"__esModule",{value:!0});var ke=ee(),dn=ce(),UY={message:({params:{min:e,max:t}})=>t===void 0?ke.str`must contain at least ${e} valid item(s)`:ke.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?ke._`{minContains: ${e}}`:ke._`{minContains: ${e}, maxContains: ${t}}`},WY={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:UY,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",ke._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){dn.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){dn.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(dn.alwaysValidSchema(s,r)){let g=ke._`${l} >= ${i}`;if(a!==void 0)g=ke._`${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(ke._`${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,(_)=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:dn.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(ke._`${g}++`),a===void 0)t.if(ke._`${g} >= ${i}`,()=>t.assign(d,!0).break());else if(t.if(ke._`${g} > ${a}`,()=>t.assign(d,!1).break()),i===1)t.assign(d,!0);else t.if(ke._`${g} >= ${i}`,()=>t.assign(d,!0))}}};EI.default=WY});var zI=E(function(II){Object.defineProperty(II,"__esModule",{value:!0});II.validateSchemaDeps=II.validatePropertyDeps=II.error=void 0;var Yo=ee(),OI=ce(),dr=Nt();II.error={message:({params:{property:e,depsCount:t,deps:r}})=>Yo.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>Yo._`{property: ${e},
|
|
170
170
|
missingProperty: ${n},
|
|
171
171
|
depsCount: ${t},
|
|
172
|
-
deps: ${r}}`};var OG={keyword:"dependencies",type:"object",schemaType:"object",error:jP.error,code(e){let[t,r]=CG(e);NP(e,t),LP(e,r)}};function CG({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 NP(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=rr.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)rr.checkReportMissingProp(e,u)});else r.if(Ao._`${c} && (${rr.checkMissingProp(e,a,s)})`),rr.reportMissingProp(e,s),r.else()}}jP.validatePropertyDeps=NP;function LP(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(zP.alwaysValidSchema(s,t[a]))continue;r.if(rr.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)}}jP.validateSchemaDeps=LP;jP.default=OG});var VP=k(function(UP){Object.defineProperty(UP,"__esModule",{value:!0});var Su=X(),FP=ie(),NG={message:"property name must be valid",params:({params:e})=>Su._`{propertyName: ${e.propertyName}}`},LG={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:NG,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(FP.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(Su.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};UP.default=LG});var Am=k(function(ZP){Object.defineProperty(ZP,"__esModule",{value:!0});var Xr=Pt(),Ae=X(),MG=hr(),Qr=ie(),DG={message:"must NOT have additional properties",params:({params:e})=>Ae._`{additionalProperty: ${e.additionalProperty}}`},qG={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:DG,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"&&Qr.alwaysValidSchema(i,r))return;let u=Xr.allSchemaProperties(n.properties),l=Xr.allSchemaProperties(n.patternProperties);p(),e.ok(Ae._`${s} === ${MG.default.errors}`);function p(){t.forIn("key",o,(y)=>{if(!u.length&&!l.length)h(y);else t.if(f(y),()=>h(y))})}function f(y){let w;if(u.length>8){let E=Qr.schemaRefOrVal(i,n.properties,"properties");w=Xr.isOwnProperty(t,E,y)}else if(u.length)w=Ae.or(...u.map((E)=>Ae._`${y} === ${E}`));else w=Ae.nil;if(l.length)w=Ae.or(w,...l.map((E)=>Ae._`${Xr.usePattern(e,E)}.test(${y})`));return Ae.not(w)}function m(y){t.code(Ae._`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"&&!Qr.alwaysValidSchema(i,r)){let w=t.name("valid");if(c.removeAdditional==="failing")g(y,w,!1),t.if(Ae.not(w),()=>{e.reset(),m(y)});else if(g(y,w),!a)t.if(Ae.not(w),()=>t.break())}}function g(y,w,E){let x={keyword:"additionalProperties",dataProp:y,dataPropType:Qr.Type.Str};if(E===!1)Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(x,w)}}};ZP.default=qG});var KP=k(function(HP){Object.defineProperty(HP,"__esModule",{value:!0});var WP=fi(),xu=Pt(),Io=ie(),BP=Am(),UG={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)BP.default.code(new WP.KeywordCxt(s,BP.default,"additionalProperties"));let i=xu.allSchemaProperties(r);for(let p of i)s.definedProperties.add(p);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=Io.mergeEvaluated.props(t,Io.toHash(i),s.props);let a=i.filter((p)=>!Io.alwaysValidSchema(s,r[p]));if(a.length===0)return;let c=t.name("valid");for(let p of a){if(u(p))l(p);else{if(t.if(xu.propertyInData(t,o,p,s.opts.ownProperties)),l(p),!s.allErrors)t.else().var(c,!0);t.endIf()}e.it.definedProperties.add(p),e.ok(c)}function u(p){return s.opts.useDefaults&&!s.compositeRule&&r[p].default!==void 0}function l(p){e.subschema({keyword:"properties",schemaProp:p,dataProp:p},c)}}};HP.default=UG});var JP=k(function(GP){Object.defineProperty(GP,"__esModule",{value:!0});var $u=Pt(),en=X(),ku=ie(),Eu=ie(),ZG={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=$u.allSchemaProperties(r),c=a.filter((g)=>ku.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 en.Name))s.props=Eu.evaluatedPropsToName(t,s.props);let{props:p}=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))ku.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(en._`${$u.usePattern(e,g)}.test(${y})`,()=>{let w=c.includes(g);if(!w)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:Eu.Type.Str},l);if(s.opts.unevaluated&&p!==!0)t.assign(en._`${p}[${y}]`,!0);else if(!w&&!s.allErrors)t.if(en.not(l),()=>t.break())})})}}};GP.default=ZG});var QP=k(function(XP){Object.defineProperty(XP,"__esModule",{value:!0});var YP=ie(),WG={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(YP.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"}};XP.default=WG});var rA=k(function(tA){Object.defineProperty(tA,"__esModule",{value:!0});var eA=Pt(),KG={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:eA.validateUnion,error:{message:"must match a schema in anyOf"}};tA.default=KG});var sA=k(function(oA){Object.defineProperty(oA,"__esModule",{value:!0});var tn=X(),nA=ie(),JG={message:"must match exactly one schema in oneOf",params:({params:e})=>tn._`{passingSchemas: ${e.passing}}`},YG={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:JG,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,p)=>{let f;if(nA.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:p,compositeRule:!0},c);if(p>0)t.if(tn._`${c} && ${i}`).assign(i,!1).assign(a,tn._`[${a}, ${p}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,p),f)e.mergeEvaluated(f,tn.Name)})})}}};oA.default=YG});var cA=k(function(aA){Object.defineProperty(aA,"__esModule",{value:!0});var iA=ie(),QG={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(iA.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};aA.default=QG});var pA=k(function(lA){Object.defineProperty(lA,"__esModule",{value:!0});var rn=X(),Tu=ie(),t6={message:({params:e})=>rn.str`must match "${e.ifClause}" schema`,params:({params:e})=>rn._`{failingKeyword: ${e.ifClause}}`},r6={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:t6,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)Tu.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=uA(n,"then"),s=uA(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(rn.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,p){return()=>{let f=e.subschema({keyword:l},a);if(t.assign(i,a),e.mergeValidEvaluated(f,i),p)t.assign(p,rn._`${l}`);else e.setParams({ifClause:l})}}}};function uA(e,t){let r=e.schema[t];return r!==void 0&&!Tu.alwaysValidSchema(e,r)}lA.default=r6});var mA=k(function(fA){Object.defineProperty(fA,"__esModule",{value:!0});var dA=ie(),o6={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)dA.checkStrictMode(r,`"${e}" without "if" is ignored`)}};fA.default=o6});var gA=k(function(hA){Object.defineProperty(hA,"__esModule",{value:!0});var i6=Tm(),a6=EP(),c6=Pm(),u6=OP(),l6=RP(),p6=qP(),d6=VP(),f6=Am(),m6=KP(),h6=JP(),g6=QP(),y6=rA(),b6=sA(),_6=cA(),w6=pA(),v6=mA();function S6(e=!1){let t=[g6.default,y6.default,b6.default,_6.default,w6.default,v6.default,d6.default,f6.default,p6.default,m6.default,h6.default];if(e)t.push(a6.default,u6.default);else t.push(i6.default,c6.default);return t.push(l6.default),t}hA.default=S6});var bA=k(function(yA){Object.defineProperty(yA,"__esModule",{value:!0});var Y=X(),$6={message:({schemaCode:e})=>Y.str`must match format "${e}"`,params:({schemaCode:e})=>Y._`{format: ${e}}`},k6={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:$6,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:p}=a;if(!c.validateFormats)return;if(o)f();else m();function f(){let h=r.scopeValue("formats",{ref:p.formats,code:c.code.formats}),g=r.const("fDef",Y._`${h}[${i}]`),y=r.let("fType"),w=r.let("format");r.if(Y._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Y._`${g}.type || "string"`).assign(w,Y._`${g}.validate`),()=>r.assign(y,Y._`"string"`).assign(w,g)),e.fail$data(Y.or(E(),x()));function E(){if(c.strictSchema===!1)return Y.nil;return Y._`${i} && !${w}`}function x(){let I=l.$async?Y._`(${g}.async ? await ${w}(${n}) : ${w}(${n}))`:Y._`${w}(${n})`,b=Y._`(typeof ${w} == "function" ? ${I} : ${w}.test(${n}))`;return Y._`${w} && ${w} !== true && ${y} === ${t} && !${b}`}}function m(){let h=p.formats[s];if(!h){E();return}if(h===!0)return;let[g,y,w]=x(h);if(g===t)e.pass(I());function E(){if(c.strictSchema===!1){p.logger.warn(b());return}throw Error(b());function b(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(b){let v=b instanceof RegExp?Y.regexpCode(b):c.code.formats?Y._`${c.code.formats}${Y.getProperty(s)}`:void 0,S=r.scopeValue("formats",{key:s,ref:b,code:v});if(typeof b=="object"&&!(b instanceof RegExp))return[b.type||"string",b.validate,Y._`${S}.validate`];return["string",b,S]}function I(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Y._`await ${w}(${n})`}return typeof y=="function"?Y._`${w}(${n})`:Y._`${w}.test(${n})`}}}};yA.default=k6});var wA=k(function(_A){Object.defineProperty(_A,"__esModule",{value:!0});var T6=bA(),P6=[T6.default];_A.default=P6});var xA=k(function(vA){Object.defineProperty(vA,"__esModule",{value:!0});vA.contentVocabulary=vA.metadataVocabulary=void 0;vA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];vA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var kA=k(function($A){Object.defineProperty($A,"__esModule",{value:!0});var O6=LT(),C6=gP(),R6=gA(),z6=wA(),Pu=xA(),N6=[O6.default,C6.default,(0,R6.default)(),z6.default,Pu.metadataVocabulary,Pu.contentVocabulary];$A.default=N6});var AA=k(function(TA){Object.defineProperty(TA,"__esModule",{value:!0});TA.DiscrError=void 0;var EA;(function(e){e.Tag="tag",e.Mapping="mapping"})(EA||(TA.DiscrError=EA={}))});var CA=k(function(OA){Object.defineProperty(OA,"__esModule",{value:!0});var It=X(),Oo=AA(),Au=lu(),j6=mi(),IA=ie(),M6={message:({params:{discrError:e,tagName:t}})=>e===Oo.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>It._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},D6={keyword:"discriminator",type:"object",schemaType:"object",error:M6,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",It._`${r}${It.getProperty(a)}`);t.if(It._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:Oo.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(It._`${u} === ${h}`),t.assign(c,p(m[h]));t.else(),e.error(!1,{discrError:Oo.DiscrError.Mapping,tag:u,tagName:a}),t.endIf()}function p(m){let h=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},h);return e.mergeEvaluated(g,It.Name),h}function f(){var m;let h={},g=w(o),y=!0;for(let I=0;I<i.length;I++){let b=i[I];if((b===null||b===void 0?void 0:b.$ref)&&!IA.schemaHasRulesButRef(b,s.self.RULES)){let S=b.$ref;if(b=Au.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,S),b instanceof Au.SchemaEnv)b=b.schema;if(b===void 0)throw new j6.default(s.opts.uriResolver,s.baseId,S)}let v=(m=b===null||b===void 0?void 0:b.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||w(b)),E(v,I)}if(!y)throw Error(`discriminator: "${a}" must be required`);return h;function w({required:I}){return Array.isArray(I)&&I.includes(a)}function E(I,b){if(I.const)x(I.const,b);else if(I.enum)for(let v of I.enum)x(v,b);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(I,b){if(typeof I!="string"||I in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[I]=b}}}};OA.default=D6});var RA=k(function(Dpe,F6){F6.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 Om=k(function(it,Im){Object.defineProperty(it,"__esModule",{value:!0});it.MissingRefError=it.ValidationError=it.CodeGen=it.Name=it.nil=it.stringify=it.str=it._=it.KeywordCxt=it.Ajv=void 0;var U6=PT(),V6=kA(),Z6=CA(),zA=RA(),B6=["/properties"],Iu="http://json-schema.org/draft-07/schema";class yi extends U6.default{_addVocabularies(){if(super._addVocabularies(),V6.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(Z6.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(zA,B6):zA;this.addMetaSchema(e,Iu,!1),this.refs["http://json-schema.org/schema"]=Iu}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Iu)?Iu:void 0)}}it.Ajv=yi;Im.exports=it=yi;Im.exports.Ajv=yi;Object.defineProperty(it,"__esModule",{value:!0});it.default=yi;var W6=fi();Object.defineProperty(it,"KeywordCxt",{enumerable:!0,get:function(){return W6.KeywordCxt}});var Co=X();Object.defineProperty(it,"_",{enumerable:!0,get:function(){return Co._}});Object.defineProperty(it,"str",{enumerable:!0,get:function(){return Co.str}});Object.defineProperty(it,"stringify",{enumerable:!0,get:function(){return Co.stringify}});Object.defineProperty(it,"nil",{enumerable:!0,get:function(){return Co.nil}});Object.defineProperty(it,"Name",{enumerable:!0,get:function(){return Co.Name}});Object.defineProperty(it,"CodeGen",{enumerable:!0,get:function(){return Co.CodeGen}});var H6=au();Object.defineProperty(it,"ValidationError",{enumerable:!0,get:function(){return H6.default}});var K6=mi();Object.defineProperty(it,"MissingRefError",{enumerable:!0,get:function(){return K6.default}})});var ZA=k(function(UA){Object.defineProperty(UA,"__esModule",{value:!0});UA.formatNames=UA.fastFormats=UA.fullFormats=void 0;function nr(e,t){return{validate:e,compare:t}}UA.fullFormats={date:nr(MA,Nm),time:nr(Rm(!0),Lm),"date-time":nr(NA(!0),qA),"iso-time":nr(Rm(),DA),"iso-date-time":nr(NA(),FA),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:r5,"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:u5,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:n5,int32:{type:"number",validate:i5},int64:{type:"number",validate:a5},float:{type:"number",validate:jA},double:{type:"number",validate:jA},password:!0,binary:!0};UA.fastFormats={...UA.fullFormats,date:nr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Nm),time:nr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Lm),"date-time":nr(/^\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,qA),"iso-time":nr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,DA),"iso-date-time":nr(/^\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,FA),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};UA.formatNames=Object.keys(UA.fullFormats);function Y6(e){return e%4===0&&(e%100!==0||e%400===0)}var X6=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Q6=[0,31,28,31,30,31,30,31,31,30,31,30,31];function MA(e){let t=X6.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&&Y6(r)?29:Q6[n])}function Nm(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var Cm=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Rm(e){return function(r){let n=Cm.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 p=s-l*c,f=o-u*c-(p<0?1:0);return(f===23||f===-1)&&(p===59||p===-1)&&i<61}}function Lm(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 DA(e,t){if(!(e&&t))return;let r=Cm.exec(e),n=Cm.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 zm=/t|\s/i;function NA(e){let t=Rm(e);return function(n){let o=n.split(zm);return o.length===2&&MA(o[0])&&t(o[1])}}function qA(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 FA(e,t){if(!(e&&t))return;let[r,n]=e.split(zm),[o,s]=t.split(zm),i=Nm(r,o);if(i===void 0)return;return i||Lm(n,s)}var e5=/\/|:/,t5=/^(?:[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 r5(e){return e5.test(e)&&t5.test(e)}var LA=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function n5(e){return LA.lastIndex=0,LA.test(e)}var o5=-2147483648,s5=2147483647;function i5(e){return Number.isInteger(e)&&e<=s5&&e>=o5}function a5(e){return Number.isInteger(e)}function jA(){return!0}var c5=/[^\\]\\Z/;function u5(e){if(c5.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var HA=k(function(WA){Object.defineProperty(WA,"__esModule",{value:!0});WA.formatLimitDefinition=void 0;var BA=Om(),Ie=X(),nn=Ie.operators,Ou={formatMaximum:{okStr:"<=",ok:nn.LTE,fail:nn.GT},formatMinimum:{okStr:">=",ok:nn.GTE,fail:nn.LT},formatExclusiveMaximum:{okStr:"<",ok:nn.LT,fail:nn.GTE},formatExclusiveMinimum:{okStr:">",ok:nn.GT,fail:nn.LTE}},p5={message:({keyword:e,schemaCode:t})=>Ie.str`should be ${Ou[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Ie._`{comparison: ${Ou[e].okStr}, limit: ${t}}`};WA.formatLimitDefinition={keyword:Object.keys(Ou),type:"string",schemaType:"string",$data:!0,error:p5,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 BA.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",Ie._`${f}[${c.schemaCode}]`);e.fail$data(Ie.or(Ie._`typeof ${m} != "object"`,Ie._`${m} instanceof RegExp`,Ie._`typeof ${m}.compare != "function"`,p(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?Ie._`${i.code.formats}${Ie.getProperty(f)}`:void 0});e.fail$data(p(h))}function p(f){return Ie._`${f}.compare(${r}, ${n}) ${Ou[o].fail} 0`}},dependencies:["format"]};var d5=(e)=>(e.addKeyword(WA.formatLimitDefinition),e);WA.default=d5});var YA=k(function(bi,JA){Object.defineProperty(bi,"__esModule",{value:!0});var Ot=ZA(),m5=HA(),Ro=X(),KA=new Ro.Name("fullFormats"),h5=new Ro.Name("fastFormats"),Dm=(e,t={keywords:!0})=>{if(Array.isArray(t))return GA(e,t,Ot.fullFormats,KA),e;let[r,n]=t.mode==="fast"?[Ot.fastFormats,h5]:[Ot.fullFormats,KA],o=t.formats||Ot.formatNames;if(GA(e,o,r,n),t.keywords)(0,m5.default)(e);return e};Dm.get=(e,t="full")=>{let n=(t==="fast"?Ot.fastFormats:Ot.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function GA(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=Ro._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}JA.exports=bi=Dm;Object.defineProperty(bi,"__esModule",{value:!0});bi.default=Dm});var nl={};WI(nl,{program:()=>vh,createCommand:()=>Sh,createOption:()=>xh,createArgument:()=>$h,Command:()=>kh,Option:()=>Eh,Argument:()=>Th,Help:()=>Ph,CommanderError:()=>Ah,InvalidArgumentError:()=>Ih,InvalidOptionArgumentError:()=>Oh},{program:(MJ)=>vh=MJ,createCommand:(MJ)=>Sh=MJ,createOption:(MJ)=>xh=MJ,createArgument:(MJ)=>$h=MJ,Command:(MJ)=>kh=MJ,Option:(MJ)=>Eh=MJ,Argument:(MJ)=>Th=MJ,Help:(MJ)=>Ph=MJ,CommanderError:(MJ)=>Ah=MJ,InvalidArgumentError:(MJ)=>Ih=MJ,InvalidOptionArgumentError:(MJ)=>Oh=MJ});var _e={};BI(_e,{ZodISODate:()=>ns,ZodISODateTime:()=>rs,ZodISODuration:()=>ss,ZodISOTime:()=>os,date:()=>EC,datetime:()=>vw,duration:()=>PC,time:()=>TC});var{Argument:bh}=xi(),{Command:rl}=yh(),{CommanderError:$O,InvalidArgumentError:_h}=Mo(),{Help:kO}=Yu(),{Option:wh}=Xu();var vh=new rl,Sh=(e)=>new rl(e),xh=(e,t)=>new wh(e,t),$h=(e,t)=>new bh(e,t),kh=rl,Eh=wh,Th=bh,Ph=kO,Ah=$O,Ih=_h,Oh=_h;var{program:qJ,createCommand:FJ,createArgument:UJ,createOption:VJ,CommanderError:ZJ,InvalidArgumentError:BJ,InvalidOptionArgumentError:WJ,Command:Ch,Argument:HJ,Option:KJ,Help:GJ}=nl;function qo(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 sl(e,t="|"){return e.map((r)=>cl(r)).join(t)}function Fo(e,t){if(typeof t==="bigint")return t.toString();return t}class zh{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 Uo(e){return new zh(e)}function Nh(e){return e===null||e===void 0}function $i(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Lh(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 Rh=Symbol("evaluating");function jh(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Rh)return;if(n===void 0)n=Rh,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function yt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Vo(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function sr(e){return Vo(e._zod.def)??e._zod.def.shape}function Mh(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return yt(this,t,n),n},enumerable:!0,configurable:!0})}function Dh(e,t,r){if(t in e)yt(e,t,r);else e[t]=r}function an(e,t,r,n){let o=sr(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Mh(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else Dh(e,s,n?n(i.value,s):i.value)}}function EO(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Mh(e,r,()=>t[r]);else Dh(e,r,n.value)}}function at(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function qh(e){return JSON.stringify(e)}function Fh(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var il="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function zn(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Uh=Uo(()=>{if(Ge.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function cn(e){if(zn(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(zn(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function al(e){if(cn(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 Vh=new Set(["string","number","symbol"]);function wr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ct(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 cl(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Zh(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var ki=(()=>({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]}))(),ul={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function TO(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,Ei(e,t)),Ct(e,at(r,{shape:s,checks:[]}))}function Ei(e,t){let r=sr(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 PO(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(Ei(e,t)),i={};return an(i,e,Reflect.ownKeys(sr(e)).filter((a)=>!s.has(a))),Ct(e,at(r,{shape:i,checks:[]}))}function AO(e,t){if(!cn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=sr(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 Ct(e,at(e._zod.def,{shape:Bh(e,t)}))}function Bh(e,t){let r={};return an(r,e,Reflect.ownKeys(sr(e))),EO(r,t),r}function IO(e,t){if(!cn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Ct(e,at(e._zod.def,{shape:Bh(e,t)}))}function OO(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(sr(e))),an(r,t,Reflect.ownKeys(sr(t)));let n=at(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Ct(e,n)}function Wh(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(Ei(t,r)):void 0,c={};return an(c,t,Reflect.ownKeys(sr(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Ct(t,at(t._zod.def,{shape:c,checks:[]}))}function CO(e,t,r){let n=r?new Set(Ei(t,r)):void 0,o={};return an(o,t,Reflect.ownKeys(sr(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Ct(t,at(t._zod.def,{shape:o}))}function bt(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 Hh(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 Mt(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Do(e){return typeof e==="string"?e:e?.message}function ll(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 Ti(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function Dt(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:Do(e.inst?._zod.def?.error?.(e))??Do(s?.(e))??Do(t?.error?.(e))??Do(r.customError?.(e))??Do(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 RO=/[\uD800-\uDBFF]/;function Pi(e){let t=e.length;if(!RO.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 Ai(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function Kh(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 un(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function Gh(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else zO(e,r,n.value)}}function ir(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function Ii(e,t,r){return ir(e,t,r,!1)}function Jh(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return ir(this,r,n(this))},set(o){ir(this,r,o)}})}return t}function zO(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:ir(this,t,r.bind(this))},set(n){ir(this,t,n)}})}function NO(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var ol,_r=!1,LO={configurable:!0,get(){_r=!0;return}};function ee(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&ol!==e._zod){ol=void 0;return}ol=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,LO);let o=_r;_r=!1;try{let s=r(this);if(_r)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return _r=_r||o,s}catch(s){throw delete this[t],_r=_r||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function jO(e,t,r,n){let o=NO(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 MO="~constantCatch";function Yh(e){let t=()=>e;return t[MO]=!0,t}var Xh,dl=Object.freeze({status:"aborted"}),pl={value:void 0,enumerable:!1},Qh="captureStackTrace"in Error?Error:null;function DO(e){let t=Qh;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return Qh=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function P(e,t,r,n){let o={};function s(f){this.def=f,this.constr=p,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(f,m){if(!f._zod){pl.value=new s(m);try{Object.defineProperty(f,"_zod",pl)}finally{pl.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,w=g;while(w&&w!==y)w=Object.getPrototypeOf(w);let E=w??g;if(!a.has(E))a.add(E),Gh(E,i)}let h=p.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 p(f){let m=n?.Parent?DO(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(p,"init",{value:c}),Object.defineProperty(p,Symbol.hasInstance,{value:(f)=>{if(n?.Parent&&f instanceof n.Parent)return!0;return f?._zod?.traits?.has(e)}}),Object.defineProperty(p,"name",{value:e}),p}class qt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Zo extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Xh=globalThis).__zod_globalConfig??(Xh.__zod_globalConfig={});var Ge=globalThis.__zod_globalConfig;function et(e){if(e)Object.assign(Ge,e);return Ge}function qO(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Fo,2)),e.message}function FO(e){this._zod.message=e}var UO={get:qO,set:FO,enumerable:!0,configurable:!0},ml={value:void 0,enumerable:!1},eg=new WeakSet([Object.prototype,Error.prototype]),tg=(e,t)=>{e.name="$ZodError",ml.value=t,Object.defineProperty(e,"issues",ml),ml.value=void 0,Object.defineProperty(e,"message",UO);let r=Object.getPrototypeOf(e);if(!eg.has(r))eg.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})}})},rg=P("$ZodError",tg),ng=P("$ZodError",tg,void 0,{Parent:Error});function VO(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 hl(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)VO(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function gl(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],p=u===a.length-1;if(l==="_errors"){if(p)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(p)f._errors.push(t(i));c=f,u++}}}};return n(e),r}function Oi(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Ci=(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 qt;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>Dt(u,i,et())));throw il(c,s?.callee??t),c}return a.value};return t};var Ri=(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)=>Dt(u,i,et())));throw il(c,s?.callee??t),c}return a.value};return t};var Bo=(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 qt;return s.issues.length?og(e,s.issues,o):{success:!0,data:s.value}},yl=Bo(ng);function og(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>Dt(o,r,et()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var zi=(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?og(e,s.issues,o):{success:!0,data:s.value}};var BO=Symbol.for("zod.compile.invalid"),WO=Symbol.for("zod.compile.fallback"),Ni=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==BO)return!0;if(n.definite===!0&&r===void 0)return!1}return HO(e,t,r)};function HO(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[WO]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new qt;return s.issues.length===0}var Li=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},sg=(e)=>{let t=Ci(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,Oi(r,i))};return r};var ig=(e)=>{let t=Ci(e),r=(n,o,s,i)=>t(n,o,s,Oi(r,i));return r};var ag=(e)=>{let t=Ri(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,Oi(r,i))};return r};var cg=(e)=>{let t=Ri(e),r=async(n,o,s,i)=>await t(n,o,s,Oi(r,i));return r};var ug=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Bo(e)(t,r,o)};var lg=(e)=>(t,r,n)=>Bo(e)(t,r,n);var pg=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return zi(e)(t,r,o)};var dg=(e)=>async(t,r,n)=>zi(e)(t,r,n);var fg=/^[cC][0-9a-z]{6,}$/,mg=/^[0-9a-z]+$/,hg=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,gg=/^[0-9a-vA-V]{20}$/,yg=/^[A-Za-z0-9]{27}$/,bg=/^[a-zA-Z0-9_-]{21}$/;function _g(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var wg=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var vg=/^([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})$/,_l=(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 Sg=/^(?:[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 KO="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function xg(){return new RegExp(KO,"u")}var $g=/^(?:(?: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])$/,kg=/^(([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 Eg=/^((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])$/,Tg=/^(([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])$/,Pg=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ag=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Ig=/^https?$/,Og=/^\+[1-9]\d{6,14}$/;var Cg="(?:(?:\\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 GO(e){return new RegExp(`^${e}$`)}var Rg=GO(Cg);function bl(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 zg(e){return new RegExp(`^${bl(e)}$`)}function Ng(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${bl({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${bl({precision:e.precision})}`:r;return new RegExp(`^${Cg}T(?:${n})$`)}var Lg=/^[\s\S]{0,}$/;var wl=/^-?\d+$/,Wo=/^-?\d+(?:\.\d+)?$/,jg=/^(?:true|false)$/i,Mg=/^null$/i;var Dg=/^[^A-Z]*$/,qg=/^[^a-z]*$/;var Ue=P("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var vl=(e)=>{let t=e.value;return!Nh(t)&&t.length!==void 0},ji={number:"number",bigint:"bigint",object:"date"},Sl=P("$ZodCheckLessThan",(e,t)=>{Ue.init(e,t);let r=ji[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:ji[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})}}),xl=P("$ZodCheckGreaterThan",(e,t)=>{Ue.init(e,t);let r=ji[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:ji[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})}}),Fg=P("$ZodCheckMultipleOf",(e,t)=>{Ue.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):Lh(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})}}),Ug=P("$ZodCheckNumberFormat",(e,t)=>{Ue.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=ki[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 Vg=P("$ZodCheckMaxLength",(e,t)=>{var r;Ue.init(e,t),(r=e._zod.def).when??(r.when=vl),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?Pi(o):s)<=t.maximum)return;let a=Ai(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Zg=P("$ZodCheckMinLength",(e,t)=>{var r;Ue.init(e,t),(r=e._zod.def).when??(r.when=vl),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?Pi(o):s)>=t.minimum)return;let a=Ai(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Bg=P("$ZodCheckLengthEquals",(e,t)=>{var r;Ue.init(e,t),(r=e._zod.def).when??(r.when=vl),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?Pi(o):s;if(i===t.length)return;let a=Ai(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})}}),Ho=P("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Ue.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=()=>{})}),Wg=P("$ZodCheckRegex",(e,t)=>{Ho.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})}}),Hg=P("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Dg),Ho.init(e,t)}),Kg=P("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=qg),Ho.init(e,t)}),Gg=P("$ZodCheckIncludes",(e,t)=>{Ue.init(e,t);let r=wr(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})}}),Jg=P("$ZodCheckStartsWith",(e,t)=>{Ue.init(e,t);let r=new RegExp(`^${wr(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})}}),Yg=P("$ZodCheckEndsWith",(e,t)=>{Ue.init(e,t);let r=new RegExp(`.*${wr(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 Xg=P("$ZodCheckOverwrite",(e,t)=>{Ue.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class $l{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 ZY={keyword:"dependencies",type:"object",schemaType:"object",error:II.error,code(e){let[t,r]=BY(e);PI(e,t),AI(e,r)}};function BY({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 PI(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=dr.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)dr.checkReportMissingProp(e,u)});else r.if(Yo._`${c} && (${dr.checkMissingProp(e,a,s)})`),dr.reportMissingProp(e,s),r.else()}}II.validatePropertyDeps=PI;function AI(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(OI.alwaysValidSchema(s,t[a]))continue;r.if(dr.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)}}II.validateSchemaDeps=AI;II.default=ZY});var jI=E(function(LI){Object.defineProperty(LI,"__esModule",{value:!0});var Sl=ee(),NI=ce(),GY={message:"property name must be valid",params:({params:e})=>Sl._`{propertyName: ${e.propertyName}}`},JY={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:GY,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(NI.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(Sl.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};LI.default=JY});var Ig=E(function(DI){Object.defineProperty(DI,"__esModule",{value:!0});var pn=Nt(),Ae=ee(),XY=Tr(),fn=ce(),QY={message:"must NOT have additional properties",params:({params:e})=>Ae._`{additionalProperty: ${e.additionalProperty}}`},e8={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:QY,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"&&fn.alwaysValidSchema(i,r))return;let u=pn.allSchemaProperties(n.properties),l=pn.allSchemaProperties(n.patternProperties);d(),e.ok(Ae._`${s} === ${XY.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 _;if(u.length>8){let T=fn.schemaRefOrVal(i,n.properties,"properties");_=pn.isOwnProperty(t,T,y)}else if(u.length)_=Ae.or(...u.map((T)=>Ae._`${y} === ${T}`));else _=Ae.nil;if(l.length)_=Ae.or(_,...l.map((T)=>Ae._`${pn.usePattern(e,T)}.test(${y})`));return Ae.not(_)}function m(y){t.code(Ae._`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"&&!fn.alwaysValidSchema(i,r)){let _=t.name("valid");if(c.removeAdditional==="failing")g(y,_,!1),t.if(Ae.not(_),()=>{e.reset(),m(y)});else if(g(y,_),!a)t.if(Ae.not(_),()=>t.break())}}function g(y,_,T){let x={keyword:"additionalProperties",dataProp:y,dataPropType:fn.Type.Str};if(T===!1)Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(x,_)}}};DI.default=e8});var UI=E(function(FI){Object.defineProperty(FI,"__esModule",{value:!0});var qI=Ki(),xl=Nt(),Xo=ce(),MI=Ig(),r8={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)MI.default.code(new qI.KeywordCxt(s,MI.default,"additionalProperties"));let i=xl.allSchemaProperties(r);for(let d of i)s.definedProperties.add(d);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=Xo.mergeEvaluated.props(t,Xo.toHash(i),s.props);let a=i.filter((d)=>!Xo.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(xl.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)}}};FI.default=r8});var VI=E(function(WI){Object.defineProperty(WI,"__esModule",{value:!0});var kl=Nt(),mn=ee(),$l=ce(),El=ce(),o8={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=kl.allSchemaProperties(r),c=a.filter((g)=>$l.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 mn.Name))s.props=El.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))$l.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(mn._`${kl.usePattern(e,g)}.test(${y})`,()=>{let _=c.includes(g);if(!_)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:El.Type.Str},l);if(s.opts.unevaluated&&d!==!0)t.assign(mn._`${d}[${y}]`,!0);else if(!_&&!s.allErrors)t.if(mn.not(l),()=>t.break())})})}}};WI.default=o8});var HI=E(function(BI){Object.defineProperty(BI,"__esModule",{value:!0});var ZI=ce(),i8={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(ZI.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"}};BI.default=i8});var JI=E(function(GI){Object.defineProperty(GI,"__esModule",{value:!0});var KI=Nt(),c8={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:KI.validateUnion,error:{message:"must match a schema in anyOf"}};GI.default=c8});var QI=E(function(XI){Object.defineProperty(XI,"__esModule",{value:!0});var hn=ee(),YI=ce(),l8={message:"must match exactly one schema in oneOf",params:({params:e})=>hn._`{passingSchemas: ${e.passing}}`},d8={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:l8,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(YI.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c);if(d>0)t.if(hn._`${c} && ${i}`).assign(i,!1).assign(a,hn._`[${a}, ${d}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,d),f)e.mergeEvaluated(f,hn.Name)})})}}};XI.default=d8});var rR=E(function(tR){Object.defineProperty(tR,"__esModule",{value:!0});var eR=ce(),f8={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(eR.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};tR.default=f8});var sR=E(function(oR){Object.defineProperty(oR,"__esModule",{value:!0});var gn=ee(),Tl=ce(),h8={message:({params:e})=>gn.str`must match "${e.ifClause}" schema`,params:({params:e})=>gn._`{failingKeyword: ${e.ifClause}}`},g8={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:h8,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)Tl.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=nR(n,"then"),s=nR(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(gn.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,gn._`${l}`);else e.setParams({ifClause:l})}}}};function nR(e,t){let r=e.schema[t];return r!==void 0&&!Tl.alwaysValidSchema(e,r)}oR.default=g8});var cR=E(function(aR){Object.defineProperty(aR,"__esModule",{value:!0});var iR=ce(),b8={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)iR.checkStrictMode(r,`"${e}" without "if" is ignored`)}};aR.default=b8});var lR=E(function(uR){Object.defineProperty(uR,"__esModule",{value:!0});var _8=Pg(),v8=_I(),S8=Ag(),x8=$I(),k8=TI(),$8=zI(),E8=jI(),T8=Ig(),O8=UI(),P8=VI(),A8=HI(),I8=JI(),R8=QI(),C8=rR(),z8=sR(),N8=cR();function L8(e=!1){let t=[A8.default,I8.default,R8.default,C8.default,z8.default,N8.default,E8.default,T8.default,$8.default,O8.default,P8.default];if(e)t.push(v8.default,x8.default);else t.push(_8.default,S8.default);return t.push(k8.default),t}uR.default=L8});var pR=E(function(dR){Object.defineProperty(dR,"__esModule",{value:!0});var Q=ee(),D8={message:({schemaCode:e})=>Q.str`must match format "${e}"`,params:({schemaCode:e})=>Q._`{format: ${e}}`},M8={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:D8,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"),_=r.let("format");r.if(Q._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Q._`${g}.type || "string"`).assign(_,Q._`${g}.validate`),()=>r.assign(y,Q._`"string"`).assign(_,g)),e.fail$data(Q.or(T(),x()));function T(){if(c.strictSchema===!1)return Q.nil;return Q._`${i} && !${_}`}function x(){let A=l.$async?Q._`(${g}.async ? await ${_}(${n}) : ${_}(${n}))`:Q._`${_}(${n})`,w=Q._`(typeof ${_} == "function" ? ${A} : ${_}.test(${n}))`;return Q._`${_} && ${_} !== true && ${y} === ${t} && !${w}`}}function m(){let h=d.formats[s];if(!h){T();return}if(h===!0)return;let[g,y,_]=x(h);if(g===t)e.pass(A());function T(){if(c.strictSchema===!1){d.logger.warn(w());return}throw Error(w());function w(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(w){let v=w instanceof RegExp?Q.regexpCode(w):c.code.formats?Q._`${c.code.formats}${Q.getProperty(s)}`:void 0,S=r.scopeValue("formats",{key:s,ref:w,code:v});if(typeof w=="object"&&!(w instanceof RegExp))return[w.type||"string",w.validate,Q._`${S}.validate`];return["string",w,S]}function A(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Q._`await ${_}(${n})`}return typeof y=="function"?Q._`${_}(${n})`:Q._`${_}.test(${n})`}}}};dR.default=M8});var mR=E(function(fR){Object.defineProperty(fR,"__esModule",{value:!0});var F8=pR(),U8=[F8.default];fR.default=U8});var yR=E(function(hR){Object.defineProperty(hR,"__esModule",{value:!0});hR.contentVocabulary=hR.metadataVocabulary=void 0;hR.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];hR.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var wR=E(function(bR){Object.defineProperty(bR,"__esModule",{value:!0});var Z8=AA(),B8=lI(),H8=lR(),K8=mR(),Ol=yR(),G8=[Z8.default,B8.default,(0,H8.default)(),K8.default,Ol.metadataVocabulary,Ol.contentVocabulary];bR.default=G8});var xR=E(function(vR){Object.defineProperty(vR,"__esModule",{value:!0});vR.DiscrError=void 0;var _R;(function(e){e.Tag="tag",e.Mapping="mapping"})(_R||(vR.DiscrError=_R={}))});var ER=E(function($R){Object.defineProperty($R,"__esModule",{value:!0});var jt=ee(),Qo=xR(),Pl=ll(),Y8=Gi(),kR=ce(),X8={message:({params:{discrError:e,tagName:t}})=>e===Qo.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>jt._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Q8={keyword:"discriminator",type:"object",schemaType:"object",error:X8,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",jt._`${r}${jt.getProperty(a)}`);t.if(jt._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:Qo.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(jt._`${u} === ${h}`),t.assign(c,d(m[h]));t.else(),e.error(!1,{discrError:Qo.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,jt.Name),h}function f(){var m;let h={},g=_(o),y=!0;for(let A=0;A<i.length;A++){let w=i[A];if((w===null||w===void 0?void 0:w.$ref)&&!kR.schemaHasRulesButRef(w,s.self.RULES)){let S=w.$ref;if(w=Pl.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,S),w instanceof Pl.SchemaEnv)w=w.schema;if(w===void 0)throw new Y8.default(s.opts.uriResolver,s.baseId,S)}let v=(m=w===null||w===void 0?void 0:w.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||_(w)),T(v,A)}if(!y)throw Error(`discriminator: "${a}" must be required`);return h;function _({required:A}){return Array.isArray(A)&&A.includes(a)}function T(A,w){if(A.const)x(A.const,w);else if(A.enum)for(let v of A.enum)x(v,w);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(A,w){if(typeof A!="string"||A in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[A]=w}}}};$R.default=Q8});var TR=E(function(dwe,tX){tX.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 Cg=E(function(mt,Rg){Object.defineProperty(mt,"__esModule",{value:!0});mt.MissingRefError=mt.ValidationError=mt.CodeGen=mt.Name=mt.nil=mt.stringify=mt.str=mt._=mt.KeywordCxt=mt.Ajv=void 0;var rX=SA(),nX=wR(),oX=ER(),OR=TR(),sX=["/properties"],Al="http://json-schema.org/draft-07/schema";class Xi extends rX.default{_addVocabularies(){if(super._addVocabularies(),nX.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(oX.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(OR,sX):OR;this.addMetaSchema(e,Al,!1),this.refs["http://json-schema.org/schema"]=Al}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Al)?Al:void 0)}}mt.Ajv=Xi;Rg.exports=mt=Xi;Rg.exports.Ajv=Xi;Object.defineProperty(mt,"__esModule",{value:!0});mt.default=Xi;var iX=Ki();Object.defineProperty(mt,"KeywordCxt",{enumerable:!0,get:function(){return iX.KeywordCxt}});var es=ee();Object.defineProperty(mt,"_",{enumerable:!0,get:function(){return es._}});Object.defineProperty(mt,"str",{enumerable:!0,get:function(){return es.str}});Object.defineProperty(mt,"stringify",{enumerable:!0,get:function(){return es.stringify}});Object.defineProperty(mt,"nil",{enumerable:!0,get:function(){return es.nil}});Object.defineProperty(mt,"Name",{enumerable:!0,get:function(){return es.Name}});Object.defineProperty(mt,"CodeGen",{enumerable:!0,get:function(){return es.CodeGen}});var aX=al();Object.defineProperty(mt,"ValidationError",{enumerable:!0,get:function(){return aX.default}});var cX=Gi();Object.defineProperty(mt,"MissingRefError",{enumerable:!0,get:function(){return cX.default}})});var DR=E(function(LR){Object.defineProperty(LR,"__esModule",{value:!0});LR.formatNames=LR.fastFormats=LR.fullFormats=void 0;function pr(e,t){return{validate:e,compare:t}}LR.fullFormats={date:pr(RR,jg),time:pr(Ng(!0),Dg),"date-time":pr(PR(!0),zR),"iso-time":pr(Ng(),CR),"iso-date-time":pr(PR(),NR),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:gX,"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:xX,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:yX,int32:{type:"number",validate:_X},int64:{type:"number",validate:vX},float:{type:"number",validate:IR},double:{type:"number",validate:IR},password:!0,binary:!0};LR.fastFormats={...LR.fullFormats,date:pr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,jg),time:pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Dg),"date-time":pr(/^\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,zR),"iso-time":pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,CR),"iso-date-time":pr(/^\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,NR),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};LR.formatNames=Object.keys(LR.fullFormats);function dX(e){return e%4===0&&(e%100!==0||e%400===0)}var pX=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,fX=[0,31,28,31,30,31,30,31,31,30,31,30,31];function RR(e){let t=pX.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&&dX(r)?29:fX[n])}function jg(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var zg=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Ng(e){return function(r){let n=zg.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 Dg(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 CR(e,t){if(!(e&&t))return;let r=zg.exec(e),n=zg.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 Lg=/t|\s/i;function PR(e){let t=Ng(e);return function(n){let o=n.split(Lg);return o.length===2&&RR(o[0])&&t(o[1])}}function zR(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 NR(e,t){if(!(e&&t))return;let[r,n]=e.split(Lg),[o,s]=t.split(Lg),i=jg(r,o);if(i===void 0)return;return i||Dg(n,s)}var mX=/\/|:/,hX=/^(?:[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 gX(e){return mX.test(e)&&hX.test(e)}var AR=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function yX(e){return AR.lastIndex=0,AR.test(e)}var bX=-2147483648,wX=2147483647;function _X(e){return Number.isInteger(e)&&e<=wX&&e>=bX}function vX(e){return Number.isInteger(e)}function IR(){return!0}var SX=/[^\\]\\Z/;function xX(e){if(SX.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var FR=E(function(qR){Object.defineProperty(qR,"__esModule",{value:!0});qR.formatLimitDefinition=void 0;var MR=Cg(),Ie=ee(),yn=Ie.operators,Il={formatMaximum:{okStr:"<=",ok:yn.LTE,fail:yn.GT},formatMinimum:{okStr:">=",ok:yn.GTE,fail:yn.LT},formatExclusiveMaximum:{okStr:"<",ok:yn.LT,fail:yn.GTE},formatExclusiveMinimum:{okStr:">",ok:yn.GT,fail:yn.LTE}},$X={message:({keyword:e,schemaCode:t})=>Ie.str`should be ${Il[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Ie._`{comparison: ${Il[e].okStr}, limit: ${t}}`};qR.formatLimitDefinition={keyword:Object.keys(Il),type:"string",schemaType:"string",$data:!0,error:$X,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 MR.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",Ie._`${f}[${c.schemaCode}]`);e.fail$data(Ie.or(Ie._`typeof ${m} != "object"`,Ie._`${m} instanceof RegExp`,Ie._`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?Ie._`${i.code.formats}${Ie.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return Ie._`${f}.compare(${r}, ${n}) ${Il[o].fail} 0`}},dependencies:["format"]};var EX=(e)=>(e.addKeyword(qR.formatLimitDefinition),e);qR.default=EX});var ZR=E(function(Qi,VR){Object.defineProperty(Qi,"__esModule",{value:!0});var Dt=DR(),OX=FR(),ts=ee(),UR=new ts.Name("fullFormats"),PX=new ts.Name("fastFormats"),Fg=(e,t={keywords:!0})=>{if(Array.isArray(t))return WR(e,t,Dt.fullFormats,UR),e;let[r,n]=t.mode==="fast"?[Dt.fastFormats,PX]:[Dt.fullFormats,UR],o=t.formats||Dt.formatNames;if(WR(e,o,r,n),t.keywords)(0,OX.default)(e);return e};Fg.get=(e,t="full")=>{let n=(t==="fast"?Dt.fastFormats:Dt.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function WR(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=ts._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}VR.exports=Qi=Fg;Object.defineProperty(Qi,"__esModule",{value:!0});Qi.default=Fg});var id={};c1(id,{program:()=>Oy,createCommand:()=>Py,createOption:()=>Ay,createArgument:()=>Iy,Command:()=>Ry,Option:()=>Cy,Argument:()=>zy,Help:()=>Ny,CommanderError:()=>Ly,InvalidArgumentError:()=>jy,InvalidOptionArgumentError:()=>Dy},{program:(Iee)=>Oy=Iee,createCommand:(Iee)=>Py=Iee,createOption:(Iee)=>Ay=Iee,createArgument:(Iee)=>Iy=Iee,Command:(Iee)=>Ry=Iee,Option:(Iee)=>Cy=Iee,Argument:(Iee)=>zy=Iee,Help:(Iee)=>Ny=Iee,CommanderError:(Iee)=>Ly=Iee,InvalidArgumentError:(Iee)=>jy=Iee,InvalidOptionArgumentError:(Iee)=>Dy=Iee});var ve={};a1(ve,{ZodISODate:()=>Os,ZodISODateTime:()=>Ts,ZodISODuration:()=>As,ZodISOTime:()=>Ps,date:()=>VN,datetime:()=>yS,duration:()=>BN,time:()=>ZN});var{Argument:$y}=aa(),{Command:sd}=ky(),{CommanderError:q1,InvalidArgumentError:Ey}=as(),{Help:F1}=ed(),{Option:Ty}=td();var Oy=new sd,Py=(e)=>new sd(e),Ay=(e,t)=>new Ty(e,t),Iy=(e,t)=>new $y(e,t),Ry=sd,Cy=Ty,zy=$y,Ny=F1,Ly=q1,jy=Ey,Dy=Ey;var{program:Cee,createCommand:zee,createArgument:Nee,createOption:Lee,CommanderError:jee,InvalidArgumentError:Dee,InvalidOptionArgumentError:Mee,Command:My,Argument:qee,Option:Fee,Help:Uee}=id;function us(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 cd(e,t="|"){return e.map((r)=>dd(r)).join(t)}function ls(e,t){if(typeof t==="bigint")return t.toString();return t}class Fy{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 ds(e){return new Fy(e)}function Uy(e){return e===null||e===void 0}function Rr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Wy(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 qy=Symbol("evaluating");function Vy(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===qy)return;if(n===void 0)n=qy,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function gt(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 mr(e){return ps(e._zod.def)??e._zod.def.shape}function Zy(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return gt(this,t,n),n},enumerable:!0,configurable:!0})}function By(e,t,r){if(t in e)gt(e,t,r);else e[t]=r}function Sn(e,t,r,n){let o=mr(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Zy(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else By(e,s,n?n(i.value,s):i.value)}}function U1(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Zy(e,r,()=>t[r]);else By(e,r,n.value)}}function yt(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function Hy(e){return JSON.stringify(e)}function Ky(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var ud="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Kn(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Gy=ds(()=>{if(et.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function xn(e){if(Kn(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(Kn(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function ld(e){if(xn(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 Jy=new Set(["string","number","symbol"]),Yy=new Set(["string","number","bigint","boolean","symbol","undefined"]);function gr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Mt(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function F(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 dd(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Xy(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]}))(),pd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function W1(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 Sn(s,e,ua(e,t)),Mt(e,yt(r,{shape:s,checks:[]}))}function ua(e,t){let r=mr(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 V1(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(ua(e,t)),i={};return Sn(i,e,Reflect.ownKeys(mr(e)).filter((a)=>!s.has(a))),Mt(e,yt(r,{shape:i,checks:[]}))}function Z1(e,t){if(!xn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=mr(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 Mt(e,yt(e._zod.def,{shape:Qy(e,t)}))}function Qy(e,t){let r={};return Sn(r,e,Reflect.ownKeys(mr(e))),U1(r,t),r}function B1(e,t){if(!xn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Mt(e,yt(e._zod.def,{shape:Qy(e,t)}))}function H1(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={};Sn(r,e,Reflect.ownKeys(mr(e))),Sn(r,t,Reflect.ownKeys(mr(t)));let n=yt(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Mt(e,n)}function eb(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(ua(t,r)):void 0,c={};return Sn(c,t,Reflect.ownKeys(mr(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Mt(t,yt(t._zod.def,{shape:c,checks:[]}))}function K1(e,t,r){let n=r?new Set(ua(t,r)):void 0,o={};return Sn(o,t,Reflect.ownKeys(mr(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Mt(t,yt(t._zod.def,{shape:o}))}function $t(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 tb(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 Zt(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function cs(e){return typeof e==="string"?e:e?.message}function fd(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 la(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function Bt(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:cs(e.inst?._zod.def?.error?.(e))??cs(s?.(e))??cs(t?.error?.(e))??cs(r.customError?.(e))??cs(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 G1=/[\uD800-\uDBFF]/;function da(e){let t=e.length;if(!G1.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 pa(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function rb(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 kn(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function nb(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else J1(e,r,n.value)}}function hr(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function fa(e,t,r){return hr(e,t,r,!1)}function ob(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return hr(this,r,n(this))},set(o){hr(this,r,o)}})}return t}function J1(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:hr(this,t,r.bind(this))},set(n){hr(this,t,n)}})}function Y1(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var ad,Ir=!1,X1={configurable:!0,get(){Ir=!0;return}};function te(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&ad!==e._zod){ad=void 0;return}ad=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,X1);let o=Ir;Ir=!1;try{let s=r(this);if(Ir)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return Ir=Ir||o,s}catch(s){throw delete this[t],Ir=Ir||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function Q1(e,t,r,n){let o=Y1(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 ez="~constantCatch";function sb(e){let t=()=>e;return t[ez]=!0,t}var ib,hd=Object.freeze({status:"aborted"}),md={value:void 0,enumerable:!1},ab="captureStackTrace"in Error?Error:null;function tz(e){let t=ab;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return ab=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){md.value=new s(m);try{Object.defineProperty(f,"_zod",md)}finally{md.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,_=g;while(_&&_!==y)_=Object.getPrototypeOf(_);let T=_??g;if(!a.has(T))a.add(T),nb(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?tz(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 Ht extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class fs extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ib=globalThis).__zod_globalConfig??(ib.__zod_globalConfig={});var et=globalThis.__zod_globalConfig;function it(e){if(e)Object.assign(et,e);return et}function rz(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,ls,2)),e.message}function nz(e){this._zod.message=e}var oz={get:rz,set:nz,enumerable:!0,configurable:!0},yd={value:void 0,enumerable:!1},cb=new WeakSet([Object.prototype,Error.prototype]),ub=(e,t)=>{e.name="$ZodError",yd.value=t,Object.defineProperty(e,"issues",yd),yd.value=void 0,Object.defineProperty(e,"message",oz);let r=Object.getPrototypeOf(e);if(!cb.has(r))cb.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})}})},lb=O("$ZodError",ub),db=O("$ZodError",ub,void 0,{Parent:Error});function sz(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 bd(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)sz(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function wd(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 ha=(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 Ht;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>Bt(u,i,it())));throw ud(c,s?.callee??t),c}return a.value};return t};var ga=(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)=>Bt(u,i,it())));throw ud(c,s?.callee??t),c}return a.value};return t};var ms=(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 Ht;return s.issues.length?pb(e,s.issues,o):{success:!0,data:s.value}},_d=ms(db);function pb(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>Bt(o,r,it()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var ya=(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?pb(e,s.issues,o):{success:!0,data:s.value}};var az=Symbol.for("zod.compile.invalid"),cz=Symbol.for("zod.compile.fallback"),ba=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==az)return!0;if(n.definite===!0&&r===void 0)return!1}return uz(e,t,r)};function uz(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[cz]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new Ht;return s.issues.length===0}var wa=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},fb=(e)=>{let t=ha(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 mb=(e)=>{let t=ha(e),r=(n,o,s,i)=>t(n,o,s,ma(r,i));return r};var hb=(e)=>{let t=ga(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 gb=(e)=>{let t=ga(e),r=async(n,o,s,i)=>await t(n,o,s,ma(r,i));return r};var yb=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ms(e)(t,r,o)};var bb=(e)=>(t,r,n)=>ms(e)(t,r,n);var wb=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ya(e)(t,r,o)};var _b=(e)=>async(t,r,n)=>ya(e)(t,r,n);var vb=/^[cC][0-9a-z]{6,}$/,Sb=/^[0-9a-z]+$/,xb=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,kb=/^[0-9a-vA-V]{20}$/,$b=/^[A-Za-z0-9]{27}$/,Eb=/^[a-zA-Z0-9_-]{21}$/;function Tb(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 Pb=/^([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})$/,Sd=(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 lz="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Ib(){return new RegExp(lz,"u")}var Rb=/^(?:(?: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])$/,Cb=/^(([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 zb=/^((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])$/,Nb=/^(([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])$/,Lb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,jb=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Db=/^https?$/,Mb=/^\+[1-9]\d{6,14}$/;var qb="(?:(?:\\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 dz(e){return new RegExp(`^${e}$`)}var Fb=dz(qb);function vd(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 Ub(e){return new RegExp(`^${vd(e)}$`)}function Wb(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${vd({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${vd({precision:e.precision})}`:r;return new RegExp(`^${qb}T(?:${n})$`)}var Vb=/^[\s\S]{0,}$/,Zb=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var _a=/^-?\d+$/,Gn=/^-?\d+(?:\.\d+)?$/,Bb=/^(?:true|false)$/i,Hb=/^null$/i;var Kb=/^[^A-Z]*$/,Gb=/^[^a-z]*$/;var Be=O("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var xd=(e)=>{let t=e.value;return!Uy(t)&&t.length!==void 0},va={number:"number",bigint:"bigint",object:"date"},kd=O("$ZodCheckLessThan",(e,t)=>{Be.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})}}),$d=O("$ZodCheckGreaterThan",(e,t)=>{Be.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})}}),Jb=O("$ZodCheckMultipleOf",(e,t)=>{Be.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):Wy(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})}}),Yb=O("$ZodCheckNumberFormat",(e,t)=>{Be.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 Xb=O("$ZodCheckMaxLength",(e,t)=>{var r;Be.init(e,t),(r=e._zod.def).when??(r.when=xd),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?da(o):s)<=t.maximum)return;let a=pa(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Qb=O("$ZodCheckMinLength",(e,t)=>{var r;Be.init(e,t),(r=e._zod.def).when??(r.when=xd),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?da(o):s)>=t.minimum)return;let a=pa(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),ew=O("$ZodCheckLengthEquals",(e,t)=>{var r;Be.init(e,t),(r=e._zod.def).when??(r.when=xd),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?da(o):s;if(i===t.length)return;let a=pa(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})}}),hs=O("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Be.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=()=>{})}),tw=O("$ZodCheckRegex",(e,t)=>{hs.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})}}),rw=O("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Kb),hs.init(e,t)}),nw=O("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Gb),hs.init(e,t)}),ow=O("$ZodCheckIncludes",(e,t)=>{Be.init(e,t);let r=gr(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})}}),sw=O("$ZodCheckStartsWith",(e,t)=>{Be.init(e,t);let r=new RegExp(`^${gr(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})}}),iw=O("$ZodCheckEndsWith",(e,t)=>{Be.init(e,t);let r=new RegExp(`.*${gr(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 aw=O("$ZodCheckOverwrite",(e,t)=>{Be.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class Ed{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 ey={major:4,minor:6,patch:7};var de=P("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ey;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=bt(a),p;for(let f of c){if(f._zod.def.when){if(Hh(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 qt;if(p||h instanceof Promise)p=(p??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if(Ti(a.issues,m,e),!l)l=bt(a,m)});else{if(a.issues.length===m)continue;if(Ti(a.issues,m,e),!l)l=bt(a,m)}}if(p)return p.then(()=>a);return a},i=(a,c,u)=>{if(bt(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new qt;return l.then((p)=>e._zod.parse(p,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((p)=>i(p,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new qt;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return Ii(this,"~standard",El(this))},set "~standard"(e){ir(this,"~standard",e)}}),my=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>Dt(r,t,et()))}:{value:e.value};async function JO(e,t){let r={async:!0};return my(await e._zod.run({value:t,issues:[]},r),r)}function El(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return my(n,r)}catch(n){}return JO(e,t)},vendor:"zod",version:1}}var Fi=P("$ZodString",(e,t)=>{de.init(e,t),e._zod.pattern=t.pattern??Lg,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}}),be=P("$ZodStringFormat",(e,t)=>{Ho.init(e,t),Fi.init(e,t)}),hy=P("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=vg),be.init(e,t)}),gy=P("$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=_l(n))}else t.pattern??(t.pattern=_l());be.init(e,t)}),yy=P("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Sg),be.init(e,t)}),by=1,Di=2;function _y(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function YO(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return _y(e)||Di;return XO(e,t)}function XO(e,t){if(!t.normalize&&t.protocol?.source===Ig.source&&!/^https?:\/\//i.test(e))return by;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??Di}return new URL(e)}catch{return Di}}var QO=/[\t\n\r]/g;function ty(e){return e.replace(QO,"")}function e1(e,t){return t.lastIndex=0,t.test(e.hostname)}function t1(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var wy=P("$ZodURL",(e,t)=>{be.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=YO(n,t);if(o===by){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===Di){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=ty(n);return}if(t.hostname&&!e1(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&&!t1(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:ty(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),vy=P("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=xg()),be.init(e,t)}),Sy=P("$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?bg:_g(t.length)),be.init(e,t)}),xy=P("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=fg),be.init(e,t)}),$y=P("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=mg),be.init(e,t)}),ky=P("$ZodULID",(e,t)=>{t.pattern??(t.pattern=hg),be.init(e,t)}),Ey=P("$ZodXID",(e,t)=>{t.pattern??(t.pattern=gg),be.init(e,t)}),Ty=P("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=yg),be.init(e,t)}),Py=P("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ng(t)),be.init(e,t)}),Ay=P("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Rg),be.init(e,t)}),Iy=P("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=zg(t)),be.init(e,t)}),Oy=P("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=wg),be.init(e,t)}),Cy=P("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=$g),be.init(e,t)}),r1=/^[0-9a-fA-F:.]+$/;function Ry(e){if(!r1.test(e))return!1;return _y(`http://[${e}]`)}var zy=P("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=kg),be.init(e,t),e._zod.check=(r)=>{if(!Ry(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Ny=P("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Eg),be.init(e,t)});function n1(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 Ry(r)}var Ly=P("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Tg),be.init(e,t),e._zod.check=(r)=>{if(!n1(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function jy(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 Tl=/^[0-9a-zA-Z+/]*={0,2}$/,My=P("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Tl),be.init(e,t),e._zod.check=(r)=>{if(jy(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Ui=/^[A-Za-z0-9_-]*$/;function o1(e){if(!Ui.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return jy(r)}var Dy=P("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ui),be.init(e,t),e._zod.check=(r)=>{if(o1(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),qy=P("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Og),be.init(e,t)});function s1(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 Fy=P("$ZodJWT",(e,t)=>{be.init(e,t),e._zod.check=(r)=>{if(s1(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var Pl=P("$ZodNumber",(e,t)=>{de.init(e,t),e._zod.pattern=Wo,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}}),Uy=P("$ZodNumberFormat",(e,t)=>{Ug.init(e,t),Pl.init(e,t)}),Vy=P("$ZodBoolean",(e,t)=>{de.init(e,t),e._zod.pattern=jg,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 Zy=P("$ZodNull",(e,t)=>{de.init(e,t),e._zod.pattern=Mg,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}}),By=P("$ZodAny",(e,t)=>{de.init(e,t),e._zod.parse=(r)=>r}),Wy=P("$ZodUnknown",(e,t)=>{de.init(e,t),e._zod.parse=(r)=>r}),Hy=P("$ZodNever",(e,t)=>{de.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function i1(e,t){let r=ll(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 ll(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,Ti(s.issues,l,e),s}}return o(s,i)}}var a1=(e)=>Array.isArray(e)?e.length:-1;function ry(e,t,r){if(e.issues.length)t.issues.push(...Mt(r,e.issues));t.value[r]=e.value}var Ky=P("$ZodArray",(e,t)=>{de.init(e,t);let r=Ge.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((p)=>ry(p,n,c)));else if(ry(l,n,c),a&&l.issues.length!==0&&bt(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},i1(e,a1)});function qi(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(...Mt(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 c1=[];function Gy(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:c1,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=Zh(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function Jy(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:p,optout:f}=u,m=0;for(let h in t){if(i&&r.issues.length!==m){if(bt(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)=>qi(y,r,h,t,p,f)));else qi(g,r,h,t,p,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 u1=P("$ZodObject",(e,t)=>{de.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=Uo(()=>Gy(t));ee(e,"propValues",(u)=>{let l=u.def.shape,p={};for(let f in l){let m=l[f]._zod;if(m.values){if(!Object.prototype.hasOwnProperty.call(p,f))yt(p,f,new Set);for(let h of m.values)p[f].add(h);if(m.optin!==void 0)p[f].add(void 0)}}return p});let s=zn,i=t.catchall,a,c=Ge.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let p=u.value;if(!s(p))return u.issues.push({expected:"object",code:"invalid_type",input:p,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(bt(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let w=m[y],E=w._zod.optin,x=w._zod.optout,I=w._zod.run({value:p[y],issues:[]},l);if(I instanceof Promise)f.push(I.then((b)=>qi(b,u,y,p,E,x)));else qi(I,u,y,p,E,x)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return Jy(f,p,u,l,o.value,e,h===!0)}}),Yy=P("$ZodObjectJIT",(e,t)=>{u1.init(e,t);let r=e._zod.parse,n=Uo(()=>Gy(t)),o=Ge.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new $l(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),w=(b)=>`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`,E=(b,v)=>`
|
|
177
|
-
let ${
|
|
178
|
-
for (let i = 0; i < ${
|
|
179
|
-
const iss = ${
|
|
176
|
+
};`)(...Object.values(this.closed))}}var uw={major:4,minor:6,patch:7};var pe=O("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=uw;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=$t(a),d;for(let f of c){if(f._zod.def.when){if(tb(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 Ht;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if(la(a.issues,m,e),!l)l=$t(a,m)});else{if(a.issues.length===m)continue;if(la(a.issues,m,e),!l)l=$t(a,m)}}if(d)return d.then(()=>a);return a},i=(a,c,u)=>{if($t(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new Ht;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 Ht;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return fa(this,"~standard",Pd(this))},set "~standard"(e){hr(this,"~standard",e)}}),xw=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>Bt(r,t,it()))}:{value:e.value};async function pz(e,t){let r={async:!0};return xw(await e._zod.run({value:t,issues:[]},r),r)}function Pd(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return xw(n,r)}catch(n){}return pz(e,t)},vendor:"zod",version:1}}var $a=O("$ZodString",(e,t)=>{pe.init(e,t),e._zod.pattern=t.pattern??Vb,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}}),_e=O("$ZodStringFormat",(e,t)=>{hs.init(e,t),$a.init(e,t)}),kw=O("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Pb),_e.init(e,t)}),$w=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=Sd(n))}else t.pattern??(t.pattern=Sd());_e.init(e,t)}),Ew=O("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ab),_e.init(e,t)}),Tw=1,xa=2;function Ow(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function fz(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return Ow(e)||xa;return mz(e,t)}function mz(e,t){if(!t.normalize&&t.protocol?.source===Db.source&&!/^https?:\/\//i.test(e))return Tw;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??xa}return new URL(e)}catch{return xa}}var hz=/[\t\n\r]/g;function lw(e){return e.replace(hz,"")}function gz(e,t){return t.lastIndex=0,t.test(e.hostname)}function yz(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var Pw=O("$ZodURL",(e,t)=>{_e.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=fz(n,t);if(o===Tw){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===xa){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=lw(n);return}if(t.hostname&&!gz(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&&!yz(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:lw(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Aw=O("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Ib()),_e.init(e,t)}),Iw=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:Tb(t.length)),_e.init(e,t)}),Rw=O("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=vb),_e.init(e,t)}),Cw=O("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Sb),_e.init(e,t)}),zw=O("$ZodULID",(e,t)=>{t.pattern??(t.pattern=xb),_e.init(e,t)}),Nw=O("$ZodXID",(e,t)=>{t.pattern??(t.pattern=kb),_e.init(e,t)}),Lw=O("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=$b),_e.init(e,t)}),jw=O("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Wb(t)),_e.init(e,t)}),Dw=O("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Fb),_e.init(e,t)}),Mw=O("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Ub(t)),_e.init(e,t)}),qw=O("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Ob),_e.init(e,t)}),Fw=O("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Rb),_e.init(e,t)}),bz=/^[0-9a-fA-F:.]+$/;function Uw(e){if(!bz.test(e))return!1;return Ow(`http://[${e}]`)}var Ww=O("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Cb),_e.init(e,t),e._zod.check=(r)=>{if(!Uw(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Vw=O("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=zb),_e.init(e,t)});function wz(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 Uw(r)}var Zw=O("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Nb),_e.init(e,t),e._zod.check=(r)=>{if(!wz(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function Bw(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 Ad=/^[0-9a-zA-Z+/]*={0,2}$/,Hw=O("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Ad),_e.init(e,t),e._zod.check=(r)=>{if(Bw(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Ea=/^[A-Za-z0-9_-]*$/;function _z(e){if(!Ea.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Bw(r)}var Kw=O("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ea),_e.init(e,t),e._zod.check=(r)=>{if(_z(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Gw=O("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Mb),_e.init(e,t)});function vz(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 Jw=O("$ZodJWT",(e,t)=>{_e.init(e,t),e._zod.check=(r)=>{if(vz(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var Id=O("$ZodNumber",(e,t)=>{pe.init(e,t),e._zod.pattern=Gn,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}}),Yw=O("$ZodNumberFormat",(e,t)=>{Yb.init(e,t),Id.init(e,t)}),Xw=O("$ZodBoolean",(e,t)=>{pe.init(e,t),e._zod.pattern=Bb,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 Qw=O("$ZodNull",(e,t)=>{pe.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}}),e_=O("$ZodAny",(e,t)=>{pe.init(e,t),e._zod.parse=(r)=>r}),t_=O("$ZodUnknown",(e,t)=>{pe.init(e,t),e._zod.parse=(r)=>r}),r_=O("$ZodNever",(e,t)=>{pe.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Sz(e,t){let r=fd(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 fd(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,la(s.issues,l,e),s}}return o(s,i)}}var xz=(e)=>Array.isArray(e)?e.length:-1;function dw(e,t,r){if(e.issues.length)t.issues.push(...Zt(r,e.issues));t.value[r]=e.value}var n_=O("$ZodArray",(e,t)=>{pe.init(e,t);let r=et.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)=>dw(d,n,c)));else if(dw(l,n,c),a&&l.issues.length!==0&&$t(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},Sz(e,xz)});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(...Zt(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 kz=[];function o_(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:kz,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=Xy(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function s_(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($t(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 $z=O("$ZodObject",(e,t)=>{pe.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=ds(()=>o_(t));te(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))gt(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=Kn,i=t.catchall,a,c=et.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($t(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let _=m[y],T=_._zod.optin,x=_._zod.optout,A=_._zod.run({value:d[y],issues:[]},l);if(A instanceof Promise)f.push(A.then((w)=>ka(w,u,y,d,T,x)));else ka(A,u,y,d,T,x)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return s_(f,d,u,l,o.value,e,h===!0)}}),i_=O("$ZodObjectJIT",(e,t)=>{$z.init(e,t);let r=e._zod.parse,n=ds(()=>o_(t)),o=et.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new Ed(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),_=(w)=>`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`,T=(w,v)=>`
|
|
177
|
+
let ${w}_ab = false;
|
|
178
|
+
for (let i = 0; i < ${w}.issues.length; i++) {
|
|
179
|
+
const iss = ${w}.issues[i];
|
|
180
180
|
iss.path = iss.path ? [${v}, ...iss.path] : [${v}];
|
|
181
181
|
payload.issues.push(iss);
|
|
182
|
-
if (iss.continue !== true) ${
|
|
182
|
+
if (iss.continue !== true) ${w}_ab = true;
|
|
183
183
|
}
|
|
184
|
-
if (${
|
|
184
|
+
if (${w}_ab && ctx && ctx.abortEarly) {
|
|
185
185
|
payload.value = newResult;
|
|
186
186
|
return payload;
|
|
187
|
-
}`;y.write("const input = payload.value;");let x=Object.create(null),
|
|
188
|
-
const ${v}_present = ${
|
|
187
|
+
}`;y.write("const input = payload.value;");let x=Object.create(null),A=0;for(let w of h.allKeys)x[w]=`key_${A++}`;y.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let w of h.allKeys){if(w==="__proto__")continue;let v=x[w],S=typeof w==="symbol"?`syms[${g.indexOf(w)}]`:Hy(w),I=`${S} in input`,j=m[w],G=j?._zod?.optin,se=G!==void 0,ie=j?._zod?.optout==="optional";if(y.write(`const ${v} = ${_(S)};`),se&&ie){let Le=G==="optional"?`${v}_present`:`${v}.value !== undefined || ${v}_present`;y.write(`
|
|
188
|
+
const ${v}_present = ${I};
|
|
189
189
|
if (!${v}.issues.length || ${v}_present) {
|
|
190
|
-
if (${v}.issues.length) {${
|
|
190
|
+
if (${v}.issues.length) {${T(v,S)}
|
|
191
191
|
}
|
|
192
192
|
|
|
193
|
-
if (${
|
|
193
|
+
if (${Le}) {
|
|
194
194
|
newResult[${S}] = ${v}.value;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
|
|
198
|
-
`)}else if(!
|
|
199
|
-
const ${v}_present = ${
|
|
200
|
-
if (${v}.issues.length) {${
|
|
198
|
+
`)}else if(!se)y.write(`
|
|
199
|
+
const ${v}_present = ${I};
|
|
200
|
+
if (${v}.issues.length) {${T(v,S)}
|
|
201
201
|
}
|
|
202
202
|
if (!${v}_present && !${v}.issues.length) {
|
|
203
203
|
payload.issues.push({
|
|
@@ -217,102 +217,130 @@ ${t.join(`
|
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
`);else if(y.write(`
|
|
220
|
-
if (${v}.issues.length) {${
|
|
220
|
+
if (${v}.issues.length) {${T(v,S)}
|
|
221
221
|
}
|
|
222
222
|
`),G==="defaulted")y.write(`newResult[${S}] = ${v}.value;`);else y.write(`
|
|
223
|
-
if (${v}.value !== undefined || ${
|
|
223
|
+
if (${v}.value !== undefined || ${I}) {
|
|
224
224
|
newResult[${S}] = ${v}.value;
|
|
225
225
|
}
|
|
226
|
-
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=zn,c=!Ge.jitless,l=c&&Uh.value,p=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),!p)return m;return Jy([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function ny(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)=>!bt(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)=>Dt(i,n,et())))}),t}var Al=P("$ZodUnion",(e,t)=>{de.init(e,t),ee(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),ee(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),ee(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}),ee(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)=>$i(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 ny(i,n,e,o);return Promise.all(i).then((a)=>ny(a,n,e,o))}});function l1(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 Xy=P("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Al.init(e,t);let r=e._zod.parse;ee(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))yt(s,u,new Set);for(let p of l)s[u].add(p)}}if(!o.def.unionFallback&&i>1)s[o.def.discriminator]?.delete(void 0);return s}),t.options.forEach((o,s)=>{let i=Vo(o._zod.def);if(i&&!Object.prototype.hasOwnProperty.call(i,t.discriminator))throw Error(`Invalid discriminated union option at index "${s}"`)});let n=Uo(()=>l1(t));e._zod.parse=(o,s)=>{let i=o.value;if(!zn(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}}),Qy=P("$ZodIntersection",(e,t)=>{de.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])=>oy(r,c,u));return oy(r,s,i)}});function kl(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(cn(e)&&cn(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=kl(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=kl(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 oy(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let p;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),p=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);p=[f]}else return!1;for(let f of p){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=kl(t.value,r.value);if(!c.valid){if(bt(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var eb=P("$ZodTuple",(e,t)=>{de.init(e,t);let r=t.items,n=Ge.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=sy(r,"optin"),u=sy(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),p=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,p&&!f&&h.issues.length)f=bt(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(p&&o.issues.length!==g){if(bt(o,g))break;g=o.issues.length}m++;let w=t.rest._zod.run({value:y,issues:[]},s);if(w instanceof Promise)a.push(w.then((E)=>iy(E,o,m)));else iy(w,o,m)}}if(a.length)return Promise.all(a).then(()=>ay(l,o,r,i,u));return ay(l,o,r,i,u)}});function sy(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 iy(e,t,r){if(e.issues.length)t.issues.push(...Mt(r,e.issues));t.value[r]=e.value}function ay(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(...Mt(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 tb=P("$ZodRecord",(e,t)=>{de.init(e,t);let r=Ge.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!cn(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 p=t.keyType._zod.run({value:l,issues:[]},o);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:p.issues.map((h)=>Dt(h,o,et())),input:l,path:[l],inst:e});continue}let f=p.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(...Mt(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Mt(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"&&Wo.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)=>Dt(h,o,et())),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(...Mt(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Mt(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 rb=P("$ZodEnum",(e,t)=>{de.init(e,t);let r=qo(t.entries),n=new Set(r);e._zod.values=n,ee(e,"pattern",(o)=>{let s=qo(o.def.entries).filter((i)=>Vh.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>wr(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}}),nb=P("$ZodLiteral",(e,t)=>{de.init(e,t);let r=new Set(t.values);e._zod.values=r,ee(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?wr(s):s?wr(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 ob=P("$ZodTransform",(e,t)=>{de.init(e,t),e._zod.optin="optional",Ge.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Zo(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 qt;return r.value=o,r}});function cy(e,t){return e.value=t.issues.length?void 0:t.value,e}var Il=P("$ZodOptional",(e,t)=>{de.init(e,t),ee(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",ee(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),ee(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${$i(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)=>cy(r,s));return cy(r,o)}return t.innerType._zod.run(r,n)}}),sb=P("$ZodExactOptional",(e,t)=>{Il.init(e,t),ee(e,"values",(r)=>r.def.innerType._zod.values),ee(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),ib=P("$ZodNullable",(e,t)=>{de.init(e,t),ee(e,"optin",(r)=>r.def.innerType._zod.optin),ee(e,"optout",(r)=>r.def.innerType._zod.optout),ee(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${$i(n.source)}|null)$`):void 0}),ee(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)}}),ab=P("$ZodDefault",(e,t)=>{de.init(e,t),e._zod.optin="defaulted",ee(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)=>uy(s,t));return uy(o,t)}});function uy(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var cb=P("$ZodPrefault",(e,t)=>{de.init(e,t),e._zod.optin="defaulted",ee(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)}}),ub=P("$ZodNonOptional",(e,t)=>{de.init(e,t),ee(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)=>ly(s,e));return ly(o,e)}});function ly(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 py(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)=>Dt(o,n,et()))},input:e.value}),e}var lb=P("$ZodCatch",(e,t)=>{de.init(e,t),ee(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),ee(e,"optout",(r)=>r.def.innerType._zod.optout),ee(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)=>py(r,s,t,n));return py(r,o,t,n)}});var Ol=P("$ZodPipe",(e,t)=>{de.init(e,t),ee(e,"values",(r)=>r.def.in._zod.values),ee(e,"optin",(r)=>r.def.in._zod.optin),ee(e,"optout",(r)=>r.def.out._zod.optout),ee(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)=>Mi(i,t.in,n));return Mi(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Mi(s,t.out,n));return Mi(o,t.out,n)}});function Mi(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 pb=P("$ZodPreprocess",(e,t)=>{Ol.init(e,t)}),db=P("$ZodReadonly",(e,t)=>{de.init(e,t),ee(e,"propValues",(r)=>r.def.innerType._zod.propValues),ee(e,"values",(r)=>r.def.innerType._zod.values),ee(e,"optin",(r)=>r.def.innerType?._zod?.optin),ee(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(dy);return dy(o)}});function dy(e){if(!e.memo)e.value=Object.freeze(e.value);return e}var fb=P("$ZodLazy",(e,t)=>{de.init(e,t),jh(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),ee(e,"pattern",(r)=>r.innerType?._zod?.pattern),ee(e,"propValues",(r)=>r.innerType?._zod?.propValues),ee(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),ee(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),mb=P("$ZodCustom",(e,t)=>{Ue.init(e,t),de.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)=>fy(s,r,n,e));fy(o,r,n,e);return}});function fy(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(un(o))}}class gb extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var Rl="~memo",hb=[];function yb(e){return e!==null&&typeof e==="object"}function Cl(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var bb=new WeakMap,Ko=0,Bi=1,Go=2;function Wi(e,t,r){let n=bb.get(e);if(n!==void 0)return n?Go:Ko;if(t.has(e))return Go;t.add(e);let o=Ko,s=(l)=>{if(o!==Go&&l?._zod){let p=Wi(l,t,r);if(p>o)o=p}},i=(l,p)=>{let f=Ko;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(p&&!h.enumerable)continue;let g=h.get?Bi:h.value?._zod?Wi(h.value,t,r):Ko;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=Vo(c);a(l?i(l,!0):Bi),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?Wi(l,t,!1):Bi);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 p=Object.getOwnPropertyDescriptor(c,l);if(!p||p.get)continue;let f=p.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),p1(e,o)}function p1(e,t){if(t!==Bi)bb.set(e,t===Go);return t}function d1(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Vi,Zi=[],f1={alloc(e,t,r){let n=Vi;if(!n)return r;Vi=void 0;let o={value:r,issues:null};return n.set(t.value,o),Zi.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"&&m1(s,o.value))throw new gb;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 w=Wi(e,new Set,!1);if(w===Ko){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(w===Go||n)r=!0;else n=!0}let l=c.value;if(!yb(l))return i(c,u);let p=u[Rl];if(!p)p={buckets:new WeakMap,backEdges:void 0},u[Rl]=p;let f;if(o===u)f=s;else f=d1(p,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(...Cl(m.issues))}else c.memo=!0,p.backEdges??(p.backEdges=new WeakSet),p.backEdges.add(m.value);return c}Vi=f;let h=Zi.length,g=i(c,u);Vi=void 0;let y=Zi.length>h?Zi.pop():void 0;if(g instanceof Promise)return g.then((w)=>{if(y)y.issues=w.issues.length?Cl(w.issues):hb;return w});if(y)y.issues=g.issues.length?Cl(g.issues):hb;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function zl(){return f1}function m1(e,t){let r=e[Rl]?.backEdges;return r!==void 0&&yb(t)&&r.has(t)}var h1=()=>{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=Kh(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 ${cl(s.values[0])}`;return`Invalid option: expected one of ${sl(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":""}: ${sl(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 Nl(){return{localeError:h1()}}var _b;class wb{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 vb(){return new wb}(_b=globalThis).__zod_globalRegistry??(_b.__zod_globalRegistry=vb());var vr=globalThis.__zod_globalRegistry;function Ll(e){if(e.checks)e.checks=[...e.checks];return e}function Sb(e,t){return new e(Ll({type:"string",...U(t)}))}function xb(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...U(t)})}function $b(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...U(t)})}function kb(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...U(t)})}function Eb(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(t)})}function Tb(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(t)})}function Pb(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(t)})}function jl(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...U(t)})}function Ab(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...U(t)})}function Ib(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(t)})}function Ob(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...U(t)})}function Cb(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(t)})}function Rb(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...U(t)})}function zb(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...U(t)})}function Nb(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(t)})}function Lb(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(t)})}function jb(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(t)})}function Mb(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(t)})}function Db(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(t)})}function qb(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...U(t)})}function Fb(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...U(t)})}function Ub(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...U(t)})}function Vb(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...U(t)})}function Hi(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(t)})}function Ki(e,t){return new e({type:"string",format:"date",check:"string_format",...U(t)})}function Gi(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...U(t)})}function Ji(e,t){return new e({type:"string",format:"duration",check:"string_format",...U(t)})}function Zb(e,t){return new e(Ll({type:"number",checks:[],...U(t)}))}function Bb(e,t){return new e(Ll({type:"number",coerce:!0,checks:[],...U(t)}))}function Wb(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...U(t)})}function Hb(e,t){return new e({type:"boolean",...U(t)})}function Kb(e,t){return new e({type:"null",...U(t)})}function Gb(e){return new e({type:"any"})}function Jb(e){return new e({type:"unknown"})}function Yb(e,t){return new e({type:"never",...U(t)})}function Yi(e,t){return new Sl({check:"less_than",...U(t),value:e,inclusive:!1})}function Jo(e,t){return new Sl({check:"less_than",...U(t),value:e,inclusive:!0})}function Xi(e,t){return new xl({check:"greater_than",...U(t),value:e,inclusive:!1})}function Yo(e,t){return new xl({check:"greater_than",...U(t),value:e,inclusive:!0})}function Qi(e,t){return new Fg({check:"multiple_of",...U(t),value:e})}function ea(e,t){return new Vg({check:"max_length",...U(t),maximum:e})}function Ln(e,t){return new Zg({check:"min_length",...U(t),minimum:e})}function ta(e,t){return new Bg({check:"length_equals",...U(t),length:e})}function Ml(e,t){return new Wg({check:"string_format",format:"regex",...U(t),pattern:e})}function Dl(e){return new Hg({check:"string_format",format:"lowercase",...U(e)})}function ql(e){return new Kg({check:"string_format",format:"uppercase",...U(e)})}function Fl(e,t){return new Gg({check:"string_format",format:"includes",...U(t),includes:e})}function Ul(e,t){return new Jg({check:"string_format",format:"starts_with",...U(t),prefix:e})}function Vl(e,t){return new Yg({check:"string_format",format:"ends_with",...U(t),suffix:e})}function Sr(e){return new Xg({check:"overwrite",tx:e})}function Zl(e){return Sr((t)=>t.normalize(e))}function Bl(){return Sr((e)=>e.trim())}function Wl(){return Sr((e)=>e.toLowerCase())}function Hl(){return Sr((e)=>e.toUpperCase())}function Kl(){return Sr((e)=>Fh(e))}function Xb(e,t,r){return new e({type:"array",element:t,...U(r)})}function Qb(e,t,r){let n=U(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function e_(e,t,r){return new e({type:"custom",check:"custom",fn:t,...U(r)})}function t_(e,t){let r=g1((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(un(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(un(s))}},e(n.value,n)),t);return r}function g1(e,t){let r=new Ue({check:"custom",...U(t)});return r._zod.check=e,r}function Xo(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))yt(e,n,r[n]);return e}function Jl(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 ar(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 we(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 p=e._zod.parent;if(p){if(!i.ref)i.ref=p;we(p,t,l),t.seen.get(p).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Xo(i.schema,c);if(t.io==="input"&&Je(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 r_(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Yl(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 p=e.external.registry.get(i[0])?.id,f=e.external.uri??((h)=>h);if(p)return{ref:f(p)};let m=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=m,{defId:m,ref:`${f("__shared")}#/${a}/${r_(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+r_(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 p in l)delete l[p];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
|
-
|
|
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 s_(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;s_(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 i_=new Set(["type","properties","required","additionalProperties"]),n_=["oneOf","anyOf"];function o_(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 Gl(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!i_.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]??o_(u);if(l===null||l===void 0)continue;if(!a.some((p)=>JSON.stringify(p)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:Gl(a)??{allOf:a};yt(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=o_(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 y1(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of i_)if(o in e)return;let r=t.filter((o)=>n_.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Gl(t);else{let o=r[0],s=n_.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)=>Gl([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Xo(e,n)}function Xl(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},p=c.ref;if(c.ref=null,p){n(p);let m=e.seen.get(p),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 Xo(u,h);if(Xo(u,l),a._zod.parent===p)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!==p){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())s_(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 p=a.get(l);if(p)p.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])y1(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)}Xo(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;yt(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:Qo(t,"input",e.processors),output:Qo(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function Je(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 Je(n.element,r);if(n.type==="set")return Je(n.valueType,r);if(n.type==="lazy")return Je(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 Je(n.innerType,r);if(n.type==="intersection")return Je(n.left,r)||Je(n.right,r);if(n.type==="record"||n.type==="map")return Je(n.keyType,r)||Je(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return Je(n.in,r)||Je(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(Je(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(Je(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(Je(o,r))return!0;if(n.rest&&Je(n.rest,r))return!0;return!1}return!1}var a_=(e,t={})=>(r)=>{let n=Jl({...r,processors:t});return we(e,n),Yl(n,e),Xl(n,e)},Qo=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Jl({...o??{},target:s,io:t,processors:r});return we(e,i),Yl(i,e),Xl(i,e)};var jn=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},Mn=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},c_=(e,t)=>{jn(e,"minimum",t),Mn(e,"maximum",t)},d_=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},f_=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},m_=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},h_=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},u_=(e,t)=>jn(e,"minimum",t.minimum),l_=(e,t)=>Mn(e,"maximum",t.maximum),p_=(e)=>(t,r)=>{h_(t,r.format);let[n,o]=e[r.format];jn(t,"minimum",n),Mn(t,"maximum",o)},b1={greater_than:(e,t)=>jn(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>Mn(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>d_(e,t.value),number_format:p_(ki),bigint_format:p_(ul),min_length:u_,max_length:l_,length_equals:(e,t)=>c_(e,t.length),min_size:u_,max_size:l_,size_equals:(e,t)=>c_(e,t.size),string_format:(e,t)=>{if(h_(e,t.format),t.pattern)f_(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)=>m_(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)b1[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)jn(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)jn(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)Mn(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)Mn(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)d_(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)m_(t,o.mime);for(let s of o.patterns??[])f_(t,s);return t}var _1={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},w1=new Map([[Tl,Pg],[Ui,Ag]]),g_=(e)=>w1.get(e)??e,y_=(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=_1[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 p=[...c].map(g_);if(p.length===1)o.pattern=p[0].source;else if(p.length>1)o.allOf=[...p.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},b_=(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 p=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(p)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 w of a)if(Number.isFinite(w)&&w!==0)h.add(Math.abs(w));else ar(e,t,o,n,`A multipleOf divisor of ${w} 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((w)=>({multipleOf:w}))]}},__=(e,t,r,n)=>{r.type="boolean"};var w_=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"};var v_=(e,t,r,n)=>{r.not={}},S_=(e,t,r,n)=>{},x_=(e,t,r,n)=>{};var $_=(e,t,r,n)=>{let o=e._zod.def,s=qo(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},k_=(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(ar(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(ar(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}};var E_=(e,t,r,n)=>{ar(e,t,r,n,"Custom types cannot be represented in JSON Schema")};var T_=(e,t,r,n)=>{ar(e,t,r,n,"Transforms cannot be represented in JSON Schema")};var P_=(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=we(s.element,t,{...n,path:[...n.path,"items"]})};function es(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return es(t.out);if(t.type==="catch")return es(t.innerType);return e._zod.optin}var A_=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&ar(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)yt(o.properties,u,we(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"?es(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=we(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},I_=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>we(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},O_=(e,t,r,n)=>{let o=e._zod.def,s=we(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=we(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)},C_=(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)=>we(g,t,{...n,path:[...n.path,i,y]})),u=s.rest?we(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"?es(g)!==void 0:g._zod.optout==="optional"))break;l--}let p=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=p}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=p}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=p}let{minimum:m,maximum:h}=ct(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function Ql(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=Ql(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((w)=>Ql(e,w,r));if(y.some((w,E)=>w!==g[E]))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:p,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")?Wo:wl).source;return m}var ep=new WeakMap;function v1(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 ep.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=Ql(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 R_=(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=we(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let p of a)yt(o.patternProperties,g_(p).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=we(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=ep.get(t);if(!l)l=[],ep.set(t,l),t.deferred.push(()=>v1(t));l.push(e)}o.additionalProperties=we(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&es(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((p)=>typeof p==="string"||typeof p==="number");if(l.length>0)o.required=l.map(String)}},z_=(e,t,r,n)=>{let o=e._zod.def,s=we(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"}]},N_=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},tp=Symbol();function L_(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 ar(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),tp}var j_=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=L_(o.defaultValue,e,t,r,n);if(i!==tp)r.default=i},M_=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=L_(o.defaultValue,e,t,r,n);if(i!==tp)r._prefault=i},D_=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{ar(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},q_=(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;we(i,t,n);let a=t.seen.get(e);a.ref=i},F_=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0};var rp=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},U_=(e,t,r,n)=>{let o=e._zod.innerType;we(o,t,n);let s=t.seen.get(e);s.ref=o};var V_=new WeakSet([Object.prototype,Error.prototype]);function ra(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 I1=(e,t)=>{rg.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(V_.has(r))return;V_.add(r),ra(r,"format",(n)=>(o)=>gl(n,o)),ra(r,"flatten",(n)=>(o)=>hl(n,o)),ra(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,Fo,2)}),ra(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,Fo,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var ut=P("ZodError",I1,void 0,{Parent:Error});var Z_=Ci(ut),B_=Ri(ut),W_=Bo(ut),H_=zi(ut),K_=sg(ut),G_=ig(ut),J_=ag(ut),Y_=cg(ut),X_=ug(ut),Q_=lg(ut),ew=pg(ut),tw=dg(ut);function C1(){if(!Ge.localeError)et(Nl())}function ts(){if(!Ge.memoizer)et({memoizer:zl()})}var ye=P("ZodType",(e,t)=>(C1(),de.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(at(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 Ct(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(xC(e,t))},superRefine(e,t){return this.check($C(e,t))},overwrite(e){return this.check(Sr(e))},optional(){return ve(this)},exactOptional(){return lC(this)},nullable(){return nw(this)},nullish(){return ve(nw(this))},nonoptional(e){return gC(this,e)},array(){return T(this)},or(e){return ue([this,e])},and(e){return ia(this,e)},transform(e){return ow(this,dw(e))},default(e){return fC(this,e)},prefault(e){return hC(this,e)},catch(e){return bC(this,e)},pipe(e){return ow(this,e)},readonly(){return vC(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 Ii(this,"~standard",{...El(this),jsonSchema:{input:Qo(this,"input"),output:Qo(this,"output")}})},set "~standard"(e){ir(this,"~standard",e)},parse:function e(t,r){return Z_(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await B_(this,t,r,{callee:e})},safeParse(e,t){return W_(this,e,t)},async safeParseAsync(e,t){return H_(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){ir(this,"spa",e)},validate(e,t){return Ni(this,e,t)},validateAsync(e,t){return Li(this,e,t)},encode:function e(t,r){return K_(this,t,r,{callee:e})},decode:function e(t,r){return G_(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await J_(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await Y_(this,t,r,{callee:e})},safeEncode(e,t){return X_(this,e,t)},safeDecode(e,t){return Q_(this,e,t)},async safeEncodeAsync(e,t){return ew(this,e,t)},async safeDecodeAsync(e,t){return tw(this,e,t)},toJSONSchema(e){return a_(this,{})(e)},get description(){return vr.get(this)?.description},get _def(){return this._zod.def}}),sw=P("_ZodString",(e,t)=>{Fi.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>y_(e,r,n,o)},Jh({format:(e)=>ct(e).format??null,minLength:(e)=>ct(e).minimum??null,maxLength:(e)=>ct(e).maximum??null},{regex(...e){return this.check(Ml(...e))},includes(...e){return this.check(Fl(...e))},startsWith(...e){return this.check(Ul(...e))},endsWith(...e){return this.check(Vl(...e))},min(...e){return this.check(Ln(...e))},max(...e){return this.check(ea(...e))},length(...e){return this.check(ta(...e))},nonempty(...e){return this.check(Ln(1,...e))},lowercase(e){return this.check(Dl(e))},uppercase(e){return this.check(ql(e))},trim(){return this.check(Bl())},normalize(...e){return this.check(Zl(...e))},toLowerCase(){return this.check(Wl())},toUpperCase(){return this.check(Hl())},slugify(){return this.check(Kl())}})),iw=P("ZodString",(e,t)=>{Fi.init(e,t),sw.init(e,t)},{email(e){return this.check(xb(R1,e))},url(e){return this.check(jl(aw,e))},jwt(e){return this.check(Vb(G1,e))},emoji(e){return this.check(Ab(N1,e))},guid(e){return this.check($b(z1,e))},uuid(e){return this.check(kb(na,e))},uuidv4(e){return this.check(Eb(na,e))},uuidv6(e){return this.check(Tb(na,e))},uuidv7(e){return this.check(Pb(na,e))},nanoid(e){return this.check(Ib(L1,e))},cuid(e){return this.check(Ob(j1,e))},cuid2(e){return this.check(Cb(M1,e))},ulid(e){return this.check(Rb(D1,e))},base64(e){return this.check(qb(W1,e))},base64url(e){return this.check(Fb(H1,e))},xid(e){return this.check(zb(q1,e))},ksuid(e){return this.check(Nb(F1,e))},ipv4(e){return this.check(Lb(U1,e))},ipv6(e){return this.check(jb(V1,e))},cidrv4(e){return this.check(Mb(Z1,e))},cidrv6(e){return this.check(Db(B1,e))},e164(e){return this.check(Ub(K1,e))},datetime(e){return this.check(Hi(rs,e))},date(e){return this.check(Ki(ns,e))},time(e){return this.check(Gi(os,e))},duration(e){return this.check(Ji(ss,e))}});function d(e){return Sb(iw,e)}var $e=P("ZodStringFormat",(e,t)=>{be.init(e,t),sw.init(e,t)}),rs=P("ZodISODateTime",(e,t)=>{Py.init(e,t),$e.init(e,t)}),ns=P("ZodISODate",(e,t)=>{Ay.init(e,t),$e.init(e,t)}),os=P("ZodISOTime",(e,t)=>{Iy.init(e,t),$e.init(e,t)}),ss=P("ZodISODuration",(e,t)=>{Oy.init(e,t),$e.init(e,t)}),R1=P("ZodEmail",(e,t)=>{yy.init(e,t),$e.init(e,t)});var z1=P("ZodGUID",(e,t)=>{hy.init(e,t),$e.init(e,t)});var na=P("ZodUUID",(e,t)=>{gy.init(e,t),$e.init(e,t)});var aw=P("ZodURL",(e,t)=>{wy.init(e,t),$e.init(e,t)});function sp(e){return jl(aw,e)}var N1=P("ZodEmoji",(e,t)=>{vy.init(e,t),$e.init(e,t)});var L1=P("ZodNanoID",(e,t)=>{Sy.init(e,t),$e.init(e,t)});var j1=P("ZodCUID",(e,t)=>{xy.init(e,t),$e.init(e,t)});var M1=P("ZodCUID2",(e,t)=>{$y.init(e,t),$e.init(e,t)});var D1=P("ZodULID",(e,t)=>{ky.init(e,t),$e.init(e,t)});var q1=P("ZodXID",(e,t)=>{Ey.init(e,t),$e.init(e,t)});var F1=P("ZodKSUID",(e,t)=>{Ty.init(e,t),$e.init(e,t)});var U1=P("ZodIPv4",(e,t)=>{Cy.init(e,t),$e.init(e,t)});var V1=P("ZodIPv6",(e,t)=>{zy.init(e,t),$e.init(e,t)});var Z1=P("ZodCIDRv4",(e,t)=>{Ny.init(e,t),$e.init(e,t)});var B1=P("ZodCIDRv6",(e,t)=>{Ly.init(e,t),$e.init(e,t)});var W1=P("ZodBase64",(e,t)=>{My.init(e,t),$e.init(e,t)});var H1=P("ZodBase64URL",(e,t)=>{Dy.init(e,t),$e.init(e,t)});var K1=P("ZodE164",(e,t)=>{qy.init(e,t),$e.init(e,t)});var G1=P("ZodJWT",(e,t)=>{Fy.init(e,t),$e.init(e,t)});var oa=P("ZodNumber",(e,t)=>{Pl.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>b_(e,r,n,o),e.isFinite=!0},Jh({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(Xi(e,t))},gte(e,t){return this.check(Yo(e,t))},min(e,t){return this.check(Yo(e,t))},lt(e,t){return this.check(Yi(e,t))},lte(e,t){return this.check(Jo(e,t))},max(e,t){return this.check(Jo(e,t))},int(e){return this.check(rw(e))},safe(e){return this.check(rw(e))},positive(e){return this.check(Xi(0,e))},nonnegative(e){return this.check(Yo(0,e))},negative(e){return this.check(Yi(0,e))},nonpositive(e){return this.check(Jo(0,e))},multipleOf(e,t){return this.check(Qi(e,t))},step(e,t){return this.check(Qi(e,t))},finite(){return this}}));function A(e){return Zb(oa,e)}var J1=P("ZodNumberFormat",(e,t)=>{Uy.init(e,t),oa.init(e,t)});function rw(e){return Wb(J1,e)}var cw=P("ZodBoolean",(e,t)=>{Vy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>__(e,r,n,o)});function q(e){return Hb(cw,e)}var Y1=P("ZodNull",(e,t)=>{Zy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>w_(e,r,n,o)});function sa(e){return Kb(Y1,e)}var X1=P("ZodAny",(e,t)=>{By.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>S_(e,r,n,o)});function uw(){return Gb(X1)}var Q1=P("ZodUnknown",(e,t)=>{Wy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>x_(e,r,n,o)});function fe(){return Jb(Q1)}var eC=P("ZodNever",(e,t)=>{Hy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>v_(e,r,n,o)});function tC(e){return Yb(eC,e)}var rC=P("ZodArray",(e,t)=>{ts(),Ky.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>P_(e,r,n,o),e.element=t.element},{min(e,t){return this.check(Ln(e,t))},nonempty(e){return this.check(Ln(1,e))},max(e,t){return this.check(ea(e,t))},length(e,t){return this.check(ta(e,t))},unwrap(){return this.element}});function T(e,t){return Xb(rC,e,t)}var lw=P("ZodObject",(e,t)=>{ts(),Yy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>A_(e,r,n,o),jO(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return j(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(at(this._zod.def,{catchall:e}))},passthrough(){return this.clone(at(this._zod.def,{catchall:fe()}))},loose(){return this.clone(at(this._zod.def,{catchall:fe()}))},strict(){return this.clone(at(this._zod.def,{catchall:tC()}))},strip(){return this.clone(at(this._zod.def,{catchall:void 0}))},extend(e){return AO(this,e)},safeExtend(e){return IO(this,e)},merge(e){return OO(this,e)},pick(e){return TO(this,e)},omit(e){return PO(this,e)},partial(...e){return Wh(ip,this,e[0])},exactPartial(...e){return Wh(fw,this,e[0],"exactPartial")},required(...e){return CO(mw,this,e[0])}});function _(e,t){let r={type:"object",shape:e??{},...U(t)};return new lw(r)}function ke(e,t){return new lw({type:"object",shape:e,catchall:fe(),...U(t)})}var pw=P("ZodUnion",(e,t)=>{Al.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>I_(e,r,n,o),e.options=t.options});function ue(e,t){return new pw({type:"union",options:e,...U(t)})}var nC=P("ZodDiscriminatedUnion",(e,t)=>{pw.init(e,t),Xy.init(e,t)});function xr(e,t,r){return new nC({type:"union",options:t,discriminator:e,...U(r)})}var oC=P("ZodIntersection",(e,t)=>{Qy.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>O_(e,r,n,o)});function ia(e,t){return new oC({type:"intersection",left:e,right:t})}var sC=P("ZodTuple",(e,t)=>{ts(),eb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>C_(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 ip({type:"optional",innerType:t}))})}});function iC(e,t,r){let n=t instanceof de,o=n?r:t;return new sC({type:"tuple",items:e,rest:n?t:null,...U(o)})}var np=P("ZodRecord",(e,t)=>{ts(),tb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>R_(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function Q(e,t,r){if(!t||!t._zod)return new np({type:"record",keyType:d(),valueType:e,...U(t)});return new np({type:"record",keyType:e,valueType:t,...U(r)})}function aC(e,t,r){return new np({type:"record",keyType:e,valueType:t,...U(r),partial:!0})}var op=P("ZodEnum",(e,t)=>{rb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(n,o,s)=>$_(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 op({...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 op({...t,checks:[],...U(o),entries:s})}});function j(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new op({type:"enum",entries:r,...U(t)})}var cC=P("ZodLiteral",(e,t)=>{nb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>k_(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 R(e,t){return new cC({type:"literal",values:Array.isArray(e)?e:[e],...U(t)})}var uC=P("ZodTransform",(e,t)=>{ts(),ob.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>T_(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Zo(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(un(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(un(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 dw(e){return new uC({type:"transform",transform:e})}var ip=P("ZodOptional",(e,t)=>{Il.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function ve(e){return new ip({type:"optional",innerType:e})}var fw=P("ZodExactOptional",(e,t)=>{sb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function lC(e){return new fw({type:"optional",innerType:e})}var pC=P("ZodNullable",(e,t)=>{ib.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>z_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function nw(e){return new pC({type:"nullable",innerType:e})}var dC=P("ZodDefault",(e,t)=>{ab.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>j_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function fC(e,t){return new dC({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():al(t)}})}var mC=P("ZodPrefault",(e,t)=>{cb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>M_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function hC(e,t){return new mC({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():al(t)}})}var mw=P("ZodNonOptional",(e,t)=>{ub.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>N_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function gC(e,t){return new mw({type:"nonoptional",innerType:e,...U(t)})}var yC=P("ZodCatch",(e,t)=>{lb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>D_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function bC(e,t){return new yC({type:"catch",innerType:e,catchValue:typeof t==="function"?t:Yh(t)})}var hw=P("ZodPipe",(e,t)=>{Ol.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>q_(e,r,n,o),e.in=t.in,e.out=t.out});function ow(e,t){return new hw({type:"pipe",in:e,out:t})}var _C=P("ZodPreprocess",(e,t)=>{hw.init(e,t),pb.init(e,t)}),wC=P("ZodReadonly",(e,t)=>{db.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>F_(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function vC(e){return new wC({type:"readonly",innerType:e})}var SC=P("ZodLazy",(e,t)=>{fb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>U_(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function gw(e){return new SC({type:"lazy",getter:e})}var yw=P("ZodCustom",(e,t)=>{mb.init(e,t),ye.init(e,t),e._zod.processJSONSchema=(r,n,o)=>E_(e,r,n,o)});function bw(e,t){return Qb(yw,e??(()=>!0),t)}function xC(e,t={}){return e_(yw,e,t)}function $C(e,t){return t_(e,t)}function ln(e){let t=gw(()=>ue([d(e),A(),q(),sa(),T(t),Q(d(),t)]));return t}function aa(e,t){return new _C({type:"pipe",in:dw(e),out:t})}var ww={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 _w;(function(e){})(_w||(_w={}));function vw(e){return Hi(rs,e)}function EC(e){return Ki(ns,e)}function TC(e){return Gi(os,e)}function PC(e){return Ji(ss,e)}function AC(e){return Bb(oa,e)}var xw={name:"@tripwire-sh/cli",version:"0.1.1",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 ca=xw.version,F="tripwire",is="tripwire-get-started",as="tripwire-cli",OC="https://mcp.tripwire.sh/mcp",CC="https://app.tripwire.sh/api/auth",$w="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function qn(e){return e.TRIPWIRE_MCP_URL||OC}function kw(e){return(e.TRIPWIRE_AUTH_URL||CC).replace(/\/+$/,"")}var RC="urn:ietf:params:oauth:grant-type:device_code",zC=_({device_code:d(),user_code:d(),verification_uri:d(),verification_uri_complete:d().optional(),expires_in:A(),interval:A().optional()}),Ew=_({access_token:d().min(1),refresh_token:d().min(1).optional(),expires_in:A().optional(),token_type:d().optional()}),cp=_({error:d(),error_description:d().optional()});class ap extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class cs extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var Tw={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function ua(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=ln().safeParse(JSON.parse(o));return{status:n.status,body:i.success?i.data:s}}catch{return{status:n.status,body:s}}}function Pw(e,t){let r=cp.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 Aw(e,t,r){let{status:n,body:o}=await ua(e,`${t}/device/code`,{client_id:as,scope:$w,resource:r}),s=zC.safeParse(o);if(n>=400||!s.success)throw Pw(o,`Device authorization failed (HTTP ${n})`);return s.data}function Iw(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}}async function Ow(e,t,r,n){let o=(n.interval??5)*1000,s=e.now()+n.expires_in*1000;while(e.now()<s){await e.sleep(o);let{status:i,body:a}=await ua(e,`${t}/oauth2/token`,{grant_type:RC,device_code:n.device_code,client_id:as,resource:r}),c=Ew.safeParse(a);if(i<400&&c.success)return Iw(e,c.data,t,r);let u=cp.safeParse(a),l=u.success?u.data.error:"";if(l==="authorization_pending")continue;if(l==="slow_down"){o+=5000;continue}if(l==="access_denied")throw Error("Sign-in was denied in the browser");if(l==="expired_token")throw Error("The code expired. Run tripwire login again.");throw Pw(a,`Token request failed (HTTP ${i})`)}throw Error("The code expired. Run tripwire login again.")}async function Cw(e,t){if(!t.refreshToken)throw new ap;let{status:r,body:n}=await ua(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:as,resource:t.mcpUrl}).catch(()=>{throw new cs}),o=Ew.safeParse(n);if(r>=400||!o.success){let s=cp.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new ap:new cs}return Iw(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function Rw(e,t){let r=t.refreshToken??t.accessToken;await ua(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:as}).catch(()=>{return})}var qw=Cn(lp(),1);var da={label:(e)=>e,good:(e)=>e,next:(e)=>e,bad:(e)=>e};function ls(e,t){if(!e||t.NO_COLOR)return da;let r=qw.default.createColors(!0);return{label:r.dim,good:r.green,next:r.yellow,bad:r.red}}var Lw=10;function pt(e,t=da){return e.map(([r,n])=>{let o=" ".repeat(Math.max(1,Lw-r.length));return`${r===""?" ".repeat(Lw):`${t.label(r)}${o}`}${n}`.trimEnd()}).join(`
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
${
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
`){if(o&&Yw(o))n+=Xw(o);if(s)n+=Qw(s)}}return n},mR=/\r?\n/;function $r(e,t,r){return String(e).normalize().split(mR).map((n)=>fR(n,t,r)).join(`
|
|
237
|
-
|
|
226
|
+
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=Kn,c=!et.jitless,l=c&&Gy.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 s_([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function pw(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)=>!$t(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)=>Bt(i,n,it())))}),t}var Rd=O("$ZodUnion",(e,t)=>{pe.init(e,t),te(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),te(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),te(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}),te(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)=>Rr(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 pw(i,n,e,o);return Promise.all(i).then((a)=>pw(a,n,e,o))}});function Ez(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 a_=O("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Rd.init(e,t);let r=e._zod.parse;te(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))gt(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=ds(()=>Ez(t));e._zod.parse=(o,s)=>{let i=o.value;if(!Kn(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}}),c_=O("$ZodIntersection",(e,t)=>{pe.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])=>fw(r,c,u));return fw(r,s,i)}});function Td(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(xn(e)&&xn(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=Td(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=Td(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 fw(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=Td(t.value,r.value);if(!c.valid){if($t(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var u_=O("$ZodTuple",(e,t)=>{pe.init(e,t);let r=t.items,n=et.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=mw(r,"optin"),u=mw(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=$t(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($t(o,g))break;g=o.issues.length}m++;let _=t.rest._zod.run({value:y,issues:[]},s);if(_ instanceof Promise)a.push(_.then((T)=>hw(T,o,m)));else hw(_,o,m)}}if(a.length)return Promise.all(a).then(()=>gw(l,o,r,i,u));return gw(l,o,r,i,u)}});function mw(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 hw(e,t,r){if(e.issues.length)t.issues.push(...Zt(r,e.issues));t.value[r]=e.value}function gw(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(...Zt(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 l_=O("$ZodRecord",(e,t)=>{pe.init(e,t);let r=et.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!xn(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)=>Bt(h,o,it())),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(...Zt(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Zt(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"&&Gn.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)=>Bt(h,o,it())),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(...Zt(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Zt(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 d_=O("$ZodEnum",(e,t)=>{pe.init(e,t);let r=us(t.entries),n=new Set(r);e._zod.values=n,te(e,"pattern",(o)=>{let s=us(o.def.entries).filter((i)=>Jy.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>gr(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}}),p_=O("$ZodLiteral",(e,t)=>{pe.init(e,t);let r=new Set(t.values);e._zod.values=r,te(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?gr(s):s?gr(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 f_=O("$ZodTransform",(e,t)=>{pe.init(e,t),e._zod.optin="optional",et.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new fs(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 Ht;return r.value=o,r}});function yw(e,t){return e.value=t.issues.length?void 0:t.value,e}var Cd=O("$ZodOptional",(e,t)=>{pe.init(e,t),te(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",te(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),te(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Rr(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)=>yw(r,s));return yw(r,o)}return t.innerType._zod.run(r,n)}}),m_=O("$ZodExactOptional",(e,t)=>{Cd.init(e,t),te(e,"values",(r)=>r.def.innerType._zod.values),te(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),h_=O("$ZodNullable",(e,t)=>{pe.init(e,t),te(e,"optin",(r)=>r.def.innerType._zod.optin),te(e,"optout",(r)=>r.def.innerType._zod.optout),te(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Rr(n.source)}|null)$`):void 0}),te(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)}}),g_=O("$ZodDefault",(e,t)=>{pe.init(e,t),e._zod.optin="defaulted",te(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)=>bw(s,t));return bw(o,t)}});function bw(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var y_=O("$ZodPrefault",(e,t)=>{pe.init(e,t),e._zod.optin="defaulted",te(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)}}),b_=O("$ZodNonOptional",(e,t)=>{pe.init(e,t),te(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)=>ww(s,e));return ww(o,e)}});function ww(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 _w(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)=>Bt(o,n,it()))},input:e.value}),e}var w_=O("$ZodCatch",(e,t)=>{pe.init(e,t),te(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),te(e,"optout",(r)=>r.def.innerType._zod.optout),te(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)=>_w(r,s,t,n));return _w(r,o,t,n)}});var zd=O("$ZodPipe",(e,t)=>{pe.init(e,t),te(e,"values",(r)=>r.def.in._zod.values),te(e,"optin",(r)=>r.def.in._zod.optin),te(e,"optout",(r)=>r.def.out._zod.optout),te(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)=>Sa(i,t.in,n));return Sa(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Sa(s,t.out,n));return Sa(o,t.out,n)}});function Sa(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 __=O("$ZodPreprocess",(e,t)=>{zd.init(e,t)}),v_=O("$ZodReadonly",(e,t)=>{pe.init(e,t),te(e,"propValues",(r)=>r.def.innerType._zod.propValues),te(e,"values",(r)=>r.def.innerType._zod.values),te(e,"optin",(r)=>r.def.innerType?._zod?.optin),te(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(vw);return vw(o)}});function vw(e){if(!e.memo)e.value=Object.freeze(e.value);return e}function Tz(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 Zb({minimum:o,maximum:s}).source;let i=e._zod.pattern;return(n&&i===Gn?_a:i)?.source}function Od(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=Od(n);if(r&&o&&s&&s!==o)return r.replace(Rr(o),()=>Rr(s));return r}if(t.options){let o=t.options.map(Od);if(o.every(Boolean))return`^(${o.map((s)=>Rr(s)).join("|")})$`}return Tz(e)}var S_=O("$ZodTemplateLiteral",(e,t)=>{pe.init(e,t);let r=[];for(let n of t.parts)if(typeof n==="object"&&n!==null){let o=Od(n);if(!o)throw Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);r.push(Rr(o))}else if(n===null||Yy.has(typeof n))r.push(gr(`${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 x_=O("$ZodLazy",(e,t)=>{pe.init(e,t),Vy(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),te(e,"pattern",(r)=>r.innerType?._zod?.pattern),te(e,"propValues",(r)=>r.innerType?._zod?.propValues),te(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),te(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),k_=O("$ZodCustom",(e,t)=>{Be.init(e,t),pe.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)=>Sw(s,r,n,e));Sw(o,r,n,e);return}});function Sw(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(kn(o))}}class E_ extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var Ld="~memo",$_=[];function T_(e){return e!==null&&typeof e==="object"}function Nd(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var O_=new WeakMap,gs=0,Pa=1,ys=2;function Aa(e,t,r){let n=O_.get(e);if(n!==void 0)return n?ys:gs;if(t.has(e))return ys;t.add(e);let o=gs,s=(l)=>{if(o!==ys&&l?._zod){let d=Aa(l,t,r);if(d>o)o=d}},i=(l,d)=>{let f=gs;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(d&&!h.enumerable)continue;let g=h.get?Pa:h.value?._zod?Aa(h.value,t,r):gs;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):Pa),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?Aa(l,t,!1):Pa);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),Oz(e,o)}function Oz(e,t){if(t!==Pa)O_.set(e,t===ys);return t}function Pz(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Ta,Oa=[],Az={alloc(e,t,r){let n=Ta;if(!n)return r;Ta=void 0;let o={value:r,issues:null};return n.set(t.value,o),Oa.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"&&Iz(s,o.value))throw new E_;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 _=Aa(e,new Set,!1);if(_===gs){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(_===ys||n)r=!0;else n=!0}let l=c.value;if(!T_(l))return i(c,u);let d=u[Ld];if(!d)d={buckets:new WeakMap,backEdges:void 0},u[Ld]=d;let f;if(o===u)f=s;else f=Pz(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(...Nd(m.issues))}else c.memo=!0,d.backEdges??(d.backEdges=new WeakSet),d.backEdges.add(m.value);return c}Ta=f;let h=Oa.length,g=i(c,u);Ta=void 0;let y=Oa.length>h?Oa.pop():void 0;if(g instanceof Promise)return g.then((_)=>{if(y)y.issues=_.issues.length?Nd(_.issues):$_;return _});if(y)y.issues=g.issues.length?Nd(g.issues):$_;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function jd(){return Az}function Iz(e,t){let r=e[Ld]?.backEdges;return r!==void 0&&T_(t)&&r.has(t)}var Rz=()=>{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=rb(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 ${dd(s.values[0])}`;return`Invalid option: expected one of ${cd(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":""}: ${cd(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 Dd(){return{localeError:Rz()}}var P_;class A_{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 I_(){return new A_}(P_=globalThis).__zod_globalRegistry??(P_.__zod_globalRegistry=I_());var Cr=globalThis.__zod_globalRegistry;function Md(e){if(e.checks)e.checks=[...e.checks];return e}function R_(e,t){return new e(Md({type:"string",...F(t)}))}function C_(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...F(t)})}function z_(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...F(t)})}function N_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...F(t)})}function L_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...F(t)})}function j_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...F(t)})}function D_(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...F(t)})}function qd(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...F(t)})}function M_(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...F(t)})}function q_(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...F(t)})}function F_(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...F(t)})}function U_(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...F(t)})}function W_(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...F(t)})}function V_(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...F(t)})}function Z_(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...F(t)})}function B_(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...F(t)})}function H_(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...F(t)})}function K_(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...F(t)})}function G_(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...F(t)})}function J_(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...F(t)})}function Y_(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...F(t)})}function X_(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...F(t)})}function Q_(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...F(t)})}function Ia(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...F(t)})}function Ra(e,t){return new e({type:"string",format:"date",check:"string_format",...F(t)})}function Ca(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...F(t)})}function za(e,t){return new e({type:"string",format:"duration",check:"string_format",...F(t)})}function ev(e,t){return new e(Md({type:"number",checks:[],...F(t)}))}function tv(e,t){return new e(Md({type:"number",coerce:!0,checks:[],...F(t)}))}function rv(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...F(t)})}function nv(e,t){return new e({type:"boolean",...F(t)})}function ov(e,t){return new e({type:"null",...F(t)})}function sv(e){return new e({type:"any"})}function iv(e){return new e({type:"unknown"})}function av(e,t){return new e({type:"never",...F(t)})}function Na(e,t){return new kd({check:"less_than",...F(t),value:e,inclusive:!1})}function bs(e,t){return new kd({check:"less_than",...F(t),value:e,inclusive:!0})}function La(e,t){return new $d({check:"greater_than",...F(t),value:e,inclusive:!1})}function ws(e,t){return new $d({check:"greater_than",...F(t),value:e,inclusive:!0})}function ja(e,t){return new Jb({check:"multiple_of",...F(t),value:e})}function Da(e,t){return new Xb({check:"max_length",...F(t),maximum:e})}function Yn(e,t){return new Qb({check:"min_length",...F(t),minimum:e})}function Ma(e,t){return new ew({check:"length_equals",...F(t),length:e})}function Fd(e,t){return new tw({check:"string_format",format:"regex",...F(t),pattern:e})}function Ud(e){return new rw({check:"string_format",format:"lowercase",...F(e)})}function Wd(e){return new nw({check:"string_format",format:"uppercase",...F(e)})}function Vd(e,t){return new ow({check:"string_format",format:"includes",...F(t),includes:e})}function Zd(e,t){return new sw({check:"string_format",format:"starts_with",...F(t),prefix:e})}function Bd(e,t){return new iw({check:"string_format",format:"ends_with",...F(t),suffix:e})}function zr(e){return new aw({check:"overwrite",tx:e})}function Hd(e){return zr((t)=>t.normalize(e))}function Kd(){return zr((e)=>e.trim())}function Gd(){return zr((e)=>e.toLowerCase())}function Jd(){return zr((e)=>e.toUpperCase())}function Yd(){return zr((e)=>Ky(e))}function cv(e,t,r){return new e({type:"array",element:t,...F(r)})}function uv(e,t,r){let n=F(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function lv(e,t,r){return new e({type:"custom",check:"custom",fn:t,...F(r)})}function dv(e,t){let r=Cz((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(kn(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(kn(s))}},e(n.value,n)),t);return r}function Cz(e,t){let r=new Be({check:"custom",...F(t)});return r._zod.check=e,r}function _s(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))gt(e,n,r[n]);return e}function Ss(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??Cr,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 Fe(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 we(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;we(d,t,l),t.seen.get(d).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)_s(i.schema,c);if(t.io==="input"&&tt(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 pv(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function xs(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}/${pv(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+pv(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
|
+
|
|
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 hv(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;hv(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 gv=new Set(["type","properties","required","additionalProperties"]),fv=["oneOf","anyOf"];function mv(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 Xd(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!gv.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]??mv(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]:Xd(a)??{allOf:a};gt(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=mv(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 zz(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of gv)if(o in e)return;let r=t.filter((o)=>fv.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Xd(t);else{let o=r[0],s=fv.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)=>Xd([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,_s(e,n)}function ks(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 _s(u,h);if(_s(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())hv(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)??[])zz(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)}_s(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;gt(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:vs(t,"input",e.processors),output:vs(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function tt(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 tt(n.element,r);if(n.type==="set")return tt(n.valueType,r);if(n.type==="lazy")return tt(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 tt(n.innerType,r);if(n.type==="intersection")return tt(n.left,r)||tt(n.right,r);if(n.type==="record"||n.type==="map")return tt(n.keyType,r)||tt(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return tt(n.in,r)||tt(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(tt(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(tt(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(tt(o,r))return!0;if(n.rest&&tt(n.rest,r))return!0;return!1}return!1}var yv=(e,t={})=>(r)=>{let n=Ss({...r,processors:t});return we(e,n),xs(n,e),ks(n,e)},vs=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Ss({...o??{},target:s,io:t,processors:r});return we(e,i),xs(i,e),ks(i,e)};var Xn=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},Qn=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},bv=(e,t)=>{Xn(e,"minimum",t),Qn(e,"maximum",t)},xv=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},kv=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},$v=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},Ev=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},wv=(e,t)=>Xn(e,"minimum",t.minimum),_v=(e,t)=>Qn(e,"maximum",t.maximum),vv=(e)=>(t,r)=>{Ev(t,r.format);let[n,o]=e[r.format];Xn(t,"minimum",n),Qn(t,"maximum",o)},Nz={greater_than:(e,t)=>Xn(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>Qn(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>xv(e,t.value),number_format:vv(ca),bigint_format:vv(pd),min_length:wv,max_length:_v,length_equals:(e,t)=>bv(e,t.length),min_size:wv,max_size:_v,size_equals:(e,t)=>bv(e,t.size),string_format:(e,t)=>{if(Ev(e,t.format),t.pattern)kv(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)=>$v(e,t.mime)};function at(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)Nz[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)Xn(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)Xn(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)Qn(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)Qn(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)xv(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)$v(t,o.mime);for(let s of o.patterns??[])kv(t,s);return t}var Lz={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},jz=new Map([[Ad,Lb],[Ea,jb]]),Tv=(e)=>jz.get(e)??e,tp=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=at(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=Lz[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(Tv);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}))]}},rp=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=at(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 _ of a)if(Number.isFinite(_)&&_!==0)h.add(Math.abs(_));else Fe(e,t,o,n,`A multipleOf divisor of ${_} 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((_)=>({multipleOf:_}))]}},np=(e,t,r,n)=>{r.type="boolean"},Ov=(e,t,r,n)=>{Fe(e,t,r,n,"BigInt cannot be represented in JSON Schema")},Pv=(e,t,r,n)=>{Fe(e,t,r,n,"Symbols cannot be represented in JSON Schema")},op=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},Av=(e,t,r,n)=>{Fe(e,t,r,n,"Undefined cannot be represented in JSON Schema")},Iv=(e,t,r,n)=>{Fe(e,t,r,n,"Void cannot be represented in JSON Schema")},sp=(e,t,r,n)=>{r.not={}},ip=(e,t,r,n)=>{},ap=(e,t,r,n)=>{},Rv=(e,t,r,n)=>{Fe(e,t,r,n,"Date cannot be represented in JSON Schema")},cp=(e,t,r,n)=>{let o=e._zod.def,s=us(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},up=(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(Fe(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(Fe(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}},Cv=(e,t,r,n)=>{Fe(e,t,r,n,"NaN cannot be represented in JSON Schema")},lp=(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},zv=(e,t,r,n)=>{let o=r;o.type="string",o.format="binary",o.contentEncoding="binary";let{minimum:s,maximum:i,mime:a}=at(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}))},Nv=(e,t,r,n)=>{r.type="boolean"},dp=(e,t,r,n)=>{Fe(e,t,r,n,"Custom types cannot be represented in JSON Schema")},Lv=(e,t,r,n)=>{Fe(e,t,r,n,"Function types cannot be represented in JSON Schema")},pp=(e,t,r,n)=>{Fe(e,t,r,n,"Transforms cannot be represented in JSON Schema")},jv=(e,t,r,n)=>{Fe(e,t,r,n,"Map cannot be represented in JSON Schema")},Dv=(e,t,r,n)=>{Fe(e,t,r,n,"Set cannot be represented in JSON Schema")},fp=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=at(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=we(s.element,t,{...n,path:[...n.path,"items"]})};function $s(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return $s(t.out);if(t.type==="catch")return $s(t.innerType);return e._zod.optin}var mp=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Fe(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)gt(o.properties,u,we(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"?$s(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=we(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},hp=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>we(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},gp=(e,t,r,n)=>{let o=e._zod.def,s=we(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=we(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)},yp=(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)=>we(g,t,{...n,path:[...n.path,i,y]})),u=s.rest?we(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"?$s(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}=at(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function Qd(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=Qd(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((_)=>Qd(e,_,r));if(y.some((_,T)=>_!==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")?Gn:_a).source;return m}var ep=new WeakMap;function Dz(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 ep.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=Qd(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 bp=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=at(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=we(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of a)gt(o.patternProperties,Tv(d).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=we(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=ep.get(t);if(!l)l=[],ep.set(t,l),t.deferred.push(()=>Dz(t));l.push(e)}o.additionalProperties=we(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&$s(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)}},wp=(e,t,r,n)=>{let o=e._zod.def,s=we(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"}]},_p=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},vp=Symbol();function Mv(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 Fe(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),vp}var Sp=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=Mv(o.defaultValue,e,t,r,n);if(i!==vp)r.default=i},xp=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=Mv(o.defaultValue,e,t,r,n);if(i!==vp)r._prefault=i},kp=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{Fe(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},$p=(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;we(i,t,n);let a=t.seen.get(e);a.ref=i},Ep=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0},qv=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},qa=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},Tp=(e,t,r,n)=>{let o=e._zod.innerType;we(o,t,n);let s=t.seen.get(e);s.ref=o},Sv={string:tp,number:rp,boolean:np,bigint:Ov,symbol:Pv,null:op,undefined:Av,void:Iv,never:sp,any:ip,unknown:ap,date:Rv,enum:cp,literal:up,nan:Cv,template_literal:lp,file:zv,success:Nv,custom:dp,function:Lv,transform:pp,map:jv,set:Dv,array:fp,object:mp,union:hp,intersection:gp,tuple:yp,record:bp,nullable:wp,nonoptional:_p,default:Sp,prefault:xp,catch:kp,pipe:$p,readonly:Ep,promise:qv,optional:qa,lazy:Tp};function Fv(e,t){if("_idmap"in e){let n=e,o=Ss({...t,processors:Sv}),s={};for(let c of n._idmap.entries()){let[u,l]=c;we(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;xs(o,l),gt(i,u,ks(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=Ss({...t,processors:Sv});return we(e,r),xs(r,e),ks(r,e)}var Uv=new WeakSet([Object.prototype,Error.prototype]);function Fa(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 Hz=(e,t)=>{lb.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(Uv.has(r))return;Uv.add(r),Fa(r,"format",(n)=>(o)=>wd(n,o)),Fa(r,"flatten",(n)=>(o)=>bd(n,o)),Fa(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,ls,2)}),Fa(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,ls,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var bt=O("ZodError",Hz,void 0,{Parent:Error});var Wv=ha(bt),Vv=ga(bt),Zv=ms(bt),Bv=ya(bt),Hv=fb(bt),Kv=mb(bt),Gv=hb(bt),Jv=gb(bt),Yv=yb(bt),Xv=bb(bt),Qv=wb(bt),eS=_b(bt);function Gz(){if(!et.localeError)it(Dd())}function Es(){if(!et.memoizer)it({memoizer:jd()})}var he=O("ZodType",(e,t)=>(Gz(),pe.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(yt(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 Mt(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(FN(e,t))},superRefine(e,t){return this.check(UN(e,t))},overwrite(e){return this.check(zr(e))},optional(){return Se(this)},exactOptional(){return EN(this)},nullable(){return rS(this)},nullish(){return Se(rS(this))},nonoptional(e){return RN(this,e)},array(){return k(this)},or(e){return re([this,e])},and(e){return Za(this,e)},transform(e){return nS(this,lS(e))},default(e){return PN(this,e)},prefault(e){return IN(this,e)},catch(e){return zN(this,e)},pipe(e){return nS(this,e)},readonly(){return jN(this)},describe(e){let t=this.clone();return Cr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Cr.get(this);let t=this.clone();return Cr.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 fa(this,"~standard",{...Pd(this),jsonSchema:{input:vs(this,"input"),output:vs(this,"output")}})},set "~standard"(e){hr(this,"~standard",e)},parse:function e(t,r){return Wv(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await Vv(this,t,r,{callee:e})},safeParse(e,t){return Zv(this,e,t)},async safeParseAsync(e,t){return Bv(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){hr(this,"spa",e)},validate(e,t){return ba(this,e,t)},validateAsync(e,t){return wa(this,e,t)},encode:function e(t,r){return Hv(this,t,r,{callee:e})},decode:function e(t,r){return Kv(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await Gv(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await Jv(this,t,r,{callee:e})},safeEncode(e,t){return Yv(this,e,t)},safeDecode(e,t){return Xv(this,e,t)},async safeEncodeAsync(e,t){return Qv(this,e,t)},async safeDecodeAsync(e,t){return eS(this,e,t)},toJSONSchema(e){return yv(this,{})(e)},get description(){return Cr.get(this)?.description},get _def(){return this._zod.def}}),oS=O("_ZodString",(e,t)=>{$a.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tp(e,r,n,o)},ob({format:(e)=>at(e).format??null,minLength:(e)=>at(e).minimum??null,maxLength:(e)=>at(e).maximum??null},{regex(...e){return this.check(Fd(...e))},includes(...e){return this.check(Vd(...e))},startsWith(...e){return this.check(Zd(...e))},endsWith(...e){return this.check(Bd(...e))},min(...e){return this.check(Yn(...e))},max(...e){return this.check(Da(...e))},length(...e){return this.check(Ma(...e))},nonempty(...e){return this.check(Yn(1,...e))},lowercase(e){return this.check(Ud(e))},uppercase(e){return this.check(Wd(e))},trim(){return this.check(Kd())},normalize(...e){return this.check(Hd(...e))},toLowerCase(){return this.check(Gd())},toUpperCase(){return this.check(Jd())},slugify(){return this.check(Yd())}})),sS=O("ZodString",(e,t)=>{$a.init(e,t),oS.init(e,t)},{email(e){return this.check(C_(Jz,e))},url(e){return this.check(qd(iS,e))},jwt(e){return this.check(Q_(pN,e))},emoji(e){return this.check(M_(Xz,e))},guid(e){return this.check(z_(Yz,e))},uuid(e){return this.check(N_(Ua,e))},uuidv4(e){return this.check(L_(Ua,e))},uuidv6(e){return this.check(j_(Ua,e))},uuidv7(e){return this.check(D_(Ua,e))},nanoid(e){return this.check(q_(Qz,e))},cuid(e){return this.check(F_(eN,e))},cuid2(e){return this.check(U_(tN,e))},ulid(e){return this.check(W_(rN,e))},base64(e){return this.check(J_(uN,e))},base64url(e){return this.check(Y_(lN,e))},xid(e){return this.check(V_(nN,e))},ksuid(e){return this.check(Z_(oN,e))},ipv4(e){return this.check(B_(sN,e))},ipv6(e){return this.check(H_(iN,e))},cidrv4(e){return this.check(K_(aN,e))},cidrv6(e){return this.check(G_(cN,e))},e164(e){return this.check(X_(dN,e))},datetime(e){return this.check(Ia(Ts,e))},date(e){return this.check(Ra(Os,e))},time(e){return this.check(Ca(Ps,e))},duration(e){return this.check(za(As,e))}});function p(e){return R_(sS,e)}var $e=O("ZodStringFormat",(e,t)=>{_e.init(e,t),oS.init(e,t)}),Ts=O("ZodISODateTime",(e,t)=>{jw.init(e,t),$e.init(e,t)}),Os=O("ZodISODate",(e,t)=>{Dw.init(e,t),$e.init(e,t)}),Ps=O("ZodISOTime",(e,t)=>{Mw.init(e,t),$e.init(e,t)}),As=O("ZodISODuration",(e,t)=>{qw.init(e,t),$e.init(e,t)}),Jz=O("ZodEmail",(e,t)=>{Ew.init(e,t),$e.init(e,t)});var Yz=O("ZodGUID",(e,t)=>{kw.init(e,t),$e.init(e,t)});var Ua=O("ZodUUID",(e,t)=>{$w.init(e,t),$e.init(e,t)});var iS=O("ZodURL",(e,t)=>{Pw.init(e,t),$e.init(e,t)});function Is(e){return qd(iS,e)}var Xz=O("ZodEmoji",(e,t)=>{Aw.init(e,t),$e.init(e,t)});var Qz=O("ZodNanoID",(e,t)=>{Iw.init(e,t),$e.init(e,t)});var eN=O("ZodCUID",(e,t)=>{Rw.init(e,t),$e.init(e,t)});var tN=O("ZodCUID2",(e,t)=>{Cw.init(e,t),$e.init(e,t)});var rN=O("ZodULID",(e,t)=>{zw.init(e,t),$e.init(e,t)});var nN=O("ZodXID",(e,t)=>{Nw.init(e,t),$e.init(e,t)});var oN=O("ZodKSUID",(e,t)=>{Lw.init(e,t),$e.init(e,t)});var sN=O("ZodIPv4",(e,t)=>{Fw.init(e,t),$e.init(e,t)});var iN=O("ZodIPv6",(e,t)=>{Ww.init(e,t),$e.init(e,t)});var aN=O("ZodCIDRv4",(e,t)=>{Vw.init(e,t),$e.init(e,t)});var cN=O("ZodCIDRv6",(e,t)=>{Zw.init(e,t),$e.init(e,t)});var uN=O("ZodBase64",(e,t)=>{Hw.init(e,t),$e.init(e,t)});var lN=O("ZodBase64URL",(e,t)=>{Kw.init(e,t),$e.init(e,t)});var dN=O("ZodE164",(e,t)=>{Gw.init(e,t),$e.init(e,t)});var pN=O("ZodJWT",(e,t)=>{Jw.init(e,t),$e.init(e,t)});var Wa=O("ZodNumber",(e,t)=>{Id.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rp(e,r,n,o),e.isFinite=!0},ob({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=at(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=at(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=at(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>at(e).format??null},{gt(e,t){return this.check(La(e,t))},gte(e,t){return this.check(ws(e,t))},min(e,t){return this.check(ws(e,t))},lt(e,t){return this.check(Na(e,t))},lte(e,t){return this.check(bs(e,t))},max(e,t){return this.check(bs(e,t))},int(e){return this.check(tS(e))},safe(e){return this.check(tS(e))},positive(e){return this.check(La(0,e))},nonnegative(e){return this.check(ws(0,e))},negative(e){return this.check(Na(0,e))},nonpositive(e){return this.check(bs(0,e))},multipleOf(e,t){return this.check(ja(e,t))},step(e,t){return this.check(ja(e,t))},finite(){return this}}));function P(e){return ev(Wa,e)}var fN=O("ZodNumberFormat",(e,t)=>{Yw.init(e,t),Wa.init(e,t)});function tS(e){return rv(fN,e)}var aS=O("ZodBoolean",(e,t)=>{Xw.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>np(e,r,n,o)});function D(e){return nv(aS,e)}var mN=O("ZodNull",(e,t)=>{Qw.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>op(e,r,n,o)});function Va(e){return ov(mN,e)}var hN=O("ZodAny",(e,t)=>{e_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ip(e,r,n,o)});function cS(){return sv(hN)}var gN=O("ZodUnknown",(e,t)=>{t_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ap(e,r,n,o)});function de(){return iv(gN)}var yN=O("ZodNever",(e,t)=>{r_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>sp(e,r,n,o)});function bN(e){return av(yN,e)}var wN=O("ZodArray",(e,t)=>{Es(),n_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>fp(e,r,n,o),e.element=t.element},{min(e,t){return this.check(Yn(e,t))},nonempty(e){return this.check(Yn(1,e))},max(e,t){return this.check(Da(e,t))},length(e,t){return this.check(Ma(e,t))},unwrap(){return this.element}});function k(e,t){return cv(wN,e,t)}var Ap=O("ZodObject",(e,t)=>{Es(),i_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mp(e,r,n,o),Q1(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(yt(this._zod.def,{catchall:e}))},passthrough(){return this.clone(yt(this._zod.def,{catchall:de()}))},loose(){return this.clone(yt(this._zod.def,{catchall:de()}))},strict(){return this.clone(yt(this._zod.def,{catchall:bN()}))},strip(){return this.clone(yt(this._zod.def,{catchall:void 0}))},extend(e){return Z1(this,e)},safeExtend(e){return B1(this,e)},merge(e){return H1(this,e)},pick(e){return W1(this,e)},omit(e){return V1(this,e)},partial(...e){return eb(Rp,this,e[0])},exactPartial(...e){return eb(dS,this,e[0],"exactPartial")},required(...e){return K1(pS,this,e[0])}});function b(e,t){let r={type:"object",shape:e??{},...F(t)};return new Ap(r)}function Ee(e,t){return new Ap({type:"object",shape:e,catchall:de(),...F(t)})}var uS=O("ZodUnion",(e,t)=>{Rd.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hp(e,r,n,o),e.options=t.options});function re(e,t){return new uS({type:"union",options:e,...F(t)})}var _N=O("ZodDiscriminatedUnion",(e,t)=>{uS.init(e,t),a_.init(e,t)});function yr(e,t,r){return new _N({type:"union",options:t,discriminator:e,...F(r)})}var vN=O("ZodIntersection",(e,t)=>{c_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gp(e,r,n,o)});function Za(e,t){return new vN({type:"intersection",left:e,right:t})}var SN=O("ZodTuple",(e,t)=>{Es(),u_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>yp(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 Rp({type:"optional",innerType:t}))})}});function xN(e,t,r){let n=t instanceof pe,o=n?r:t;return new SN({type:"tuple",items:e,rest:n?t:null,...F(o)})}var Op=O("ZodRecord",(e,t)=>{Es(),l_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bp(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,r){if(!t||!t._zod)return new Op({type:"record",keyType:p(),valueType:e,...F(t)});return new Op({type:"record",keyType:e,valueType:t,...F(r)})}function Ip(e,t,r){return new Op({type:"record",keyType:e,valueType:t,...F(r),partial:!0})}var Pp=O("ZodEnum",(e,t)=>{d_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(n,o,s)=>cp(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 Pp({...t,checks:[],...F(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 Pp({...t,checks:[],...F(o),entries:s})}});function z(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Pp({type:"enum",entries:r,...F(t)})}var kN=O("ZodLiteral",(e,t)=>{p_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>up(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 kN({type:"literal",values:Array.isArray(e)?e:[e],...F(t)})}var $N=O("ZodTransform",(e,t)=>{Es(),f_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pp(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new fs(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(kn(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(kn(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 lS(e){return new $N({type:"transform",transform:e})}var Rp=O("ZodOptional",(e,t)=>{Cd.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>qa(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Se(e){return new Rp({type:"optional",innerType:e})}var dS=O("ZodExactOptional",(e,t)=>{m_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>qa(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function EN(e){return new dS({type:"optional",innerType:e})}var TN=O("ZodNullable",(e,t)=>{h_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function rS(e){return new TN({type:"nullable",innerType:e})}var ON=O("ZodDefault",(e,t)=>{g_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Sp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function PN(e,t){return new ON({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():ld(t)}})}var AN=O("ZodPrefault",(e,t)=>{y_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function IN(e,t){return new AN({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():ld(t)}})}var pS=O("ZodNonOptional",(e,t)=>{b_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_p(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function RN(e,t){return new pS({type:"nonoptional",innerType:e,...F(t)})}var CN=O("ZodCatch",(e,t)=>{w_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>kp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function zN(e,t){return new CN({type:"catch",innerType:e,catchValue:typeof t==="function"?t:sb(t)})}var fS=O("ZodPipe",(e,t)=>{zd.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$p(e,r,n,o),e.in=t.in,e.out=t.out});function nS(e,t){return new fS({type:"pipe",in:e,out:t})}var NN=O("ZodPreprocess",(e,t)=>{fS.init(e,t),__.init(e,t)}),LN=O("ZodReadonly",(e,t)=>{v_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ep(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function jN(e){return new LN({type:"readonly",innerType:e})}var DN=O("ZodTemplateLiteral",(e,t)=>{S_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lp(e,r,n,o)});function MN(e,t){return new DN({type:"template_literal",parts:e,...F(t)})}var qN=O("ZodLazy",(e,t)=>{x_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Tp(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function Cp(e){return new qN({type:"lazy",getter:e})}var mS=O("ZodCustom",(e,t)=>{k_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>dp(e,r,n,o)});function Ba(e,t){return uv(mS,e??(()=>!0),t)}function FN(e,t={}){return lv(mS,e,t)}function UN(e,t){return dv(e,t)}function br(e){let t=Cp(()=>re([p(e),P(),D(),Va(),k(t),J(p(),t)]));return t}function Ha(e,t){return new NN({type:"pipe",in:lS(e),out:t})}var gS={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 hS;(function(e){})(hS||(hS={}));function yS(e){return Ia(Ts,e)}function VN(e){return Ra(Os,e)}function ZN(e){return Ca(Ps,e)}function BN(e){return za(As,e)}function HN(e){return tv(Wa,e)}var wS={name:"@tripwire-sh/cli",version:"0.1.2",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 Ka=wS.version,U="tripwire",Rs="tripwire-get-started",_S="tripwire-workflows",Cs="tripwire-cli",GN="https://mcp.tripwire.sh/mcp",JN="https://app.tripwire.sh/api/auth",vS="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function to(e){return e.TRIPWIRE_MCP_URL||GN}function SS(e){return(e.TRIPWIRE_AUTH_URL||JN).replace(/\/+$/,"")}var YN="urn:ietf:params:oauth:grant-type:device_code",XN=b({device_code:p(),user_code:p(),verification_uri:p(),verification_uri_complete:p().optional(),expires_in:P(),interval:P().optional()}),kS=b({access_token:p().min(1),refresh_token:p().min(1).optional(),expires_in:P().optional(),token_type:p().optional()}),Np=b({error:p(),error_description:p().optional()});class zp extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class zs extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var $S={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function Ga(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=br().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 ES(e,t){let r=Np.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 TS(e,t,r){let{status:n,body:o}=await Ga(e,`${t}/device/code`,{client_id:Cs,scope:vS,resource:r}),s=XN.safeParse(o);if(n>=400||!s.success)throw ES(o,`Device authorization failed (HTTP ${n})`);return s.data}function OS(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 xS=5000;function QN(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 PS(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 Ga(e,`${t}/oauth2/token`,{grant_type:YN,device_code:n.device_code,client_id:Cs,resource:r}),l=kS.safeParse(c);if(a<400&&l.success)return OS(e,l.data,t,r);if(a===429){if(s=QN(u,e.now()),s===null)o+=xS;continue}let d=Np.safeParse(c),f=d.success?d.data.error:"";if(f==="authorization_pending")continue;if(f==="slow_down"){o+=xS;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 ES(c,`Token request failed (HTTP ${a})`)}throw Error("The code expired. Run tripwire login again.")}async function AS(e,t){if(!t.refreshToken)throw new zp;let{status:r,body:n}=await Ga(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:Cs,resource:t.mcpUrl}).catch(()=>{throw new zs}),o=kS.safeParse(n);if(r>=400||!o.success){let s=Np.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new zp:new zs}return OS(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function IS(e,t){let r=t.refreshToken??t.accessToken;await Ga(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:Cs}).catch(()=>{return})}import{stripVTControlCharacters as eq}from"node:util";var eL=z(["pending","approved","rejected"]),bne=eL.options;var Ns=[{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 RS(e){return e.status==="live"}var Ls=z(Ns.filter(RS).map((e)=>e.id)),vne=Ns.filter((e)=>RS(e)&&!("paused"in e)).map((e)=>e.label),Sne=Ns.filter((e)=>e.status==="planned").map((e)=>e.label),xne=Ns.filter((e)=>("signIn"in e)).map((e)=>e.id);var tL=Object.fromEntries(Ns.map((e)=>[e.id,e]));var Ja=b({owner:p(),name:p(),fullName:p()}),rL=b({id:p(),login:p(),name:p(),type:z(["Organization","User"]),avatarUrl:p(),repoAccess:z(["all","selected"]),repoCount:P(),installedAt:ve.datetime()}),nL=b({id:p(),owner:p(),name:p(),fullName:p(),private:D(),pushedAt:ve.datetime(),openFlags:P(),stars:P()}),Ene=b({accounts:k(rL),repos:k(nL)});var js=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"]),CS=b({login:p(),externalId:p(),avatarUrl:p().optional()}),Lp=b({number:P().int(),title:p(),headSha:p(),baseRef:p().optional(),headRef:p().optional(),draft:D().optional(),url:p()}),oL=b({externalId:p(),body:p(),url:p(),subjectNumber:P().int(),byTripwire:D().optional()}),sL=b({ref:p(),headSha:p(),commitCount:P().int(),url:p().optional()}),Xa=z(["issue","change-request"]),iL=b({kind:Xa,number:P().int(),title:p(),url:p(),state:z(["open","closed"]),author:p(),labels:k(p()),locked:D(),updatedAt:ve.datetime()}),aL=b({workflowId:p(),nodeId:p(),tickId:p()}),ro={id:p(),forge:Ls,deliveryId:p(),repo:Ja,repoExternalId:p().optional(),installationExternalId:p().optional(),actor:CS,occurredAt:ve.datetime(),receivedAt:ve.datetime()},Ya={id:p(),forge:Ls,deliveryId:p(),actor:CS,occurredAt:ve.datetime(),receivedAt:ve.datetime(),installation:b({externalId:p(),account:p(),accountType:z(["User","Organization"]).optional()}),repositories:k(b({externalId:p(),owner:p(),name:p(),fullName:p(),private:D()}))},zS=yr("kind",[b({...ro,kind:C("change-request.opened"),changeRequest:Lp}),b({...ro,kind:C("change-request.updated"),changeRequest:Lp}),b({...ro,kind:C("change-request.closed"),changeRequest:Lp}),b({...ro,kind:C("comment.created"),comment:oL}),b({...ro,kind:C("push"),push:sL}),b({...ro,kind:C("schedule.matched"),schedule:aL,thread:iL}),b({...Ya,kind:C("installation.created")}),b({...Ya,kind:C("installation.deleted")}),b({...Ya,kind:C("installation-repositories.added")}),b({...Ya,kind:C("installation-repositories.removed")})]),cL=js.extract(["change-request.opened","change-request.updated","change-request.closed"]),Ine=cL.options;var uL=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],lL=["sun","mon","tue","wed","thu","fri","sat"],dL=[{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:uL,nameBase:1},{name:"day of week",range:"0 to 7 or sun to sat",min:0,max:7,names:lL,nameBase:0}];function jp(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 pL(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=jp(l,t),u=jp(d,t)}else c=jp(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 Qa(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 dL.entries()){let d=pL(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 jS(e){try{return new Intl.DateTimeFormat("en-US",{timeZone:e}),!0}catch{return!1}}var NS=new Map;function fL(e){let t=NS.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 NS.set(e,r),r}function Mp(e,t){let r=fL(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 Dp(e,t){let r=Mp(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 LS(e,t){let r=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute),n=[r-Dp(r-129600000,t),r-Dp(r+129600000,t),r-Dp(r,t)].sort((o,s)=>o-s);for(let o of n){let s=Mp(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 mL(e,t){let r=t.getUTCDate(),n=t.getUTCDay(),o=e.days.includes(r),s=e.weekdays.includes(n);if(e.daysRestricted&&e.weekdaysRestricted)return o||s;return o&&s}var hL=1830,gL=180;function yL(e,t){let r=LS(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<=gL;o++){let s=new Date(n+o*60000),i=LS({year:s.getUTCFullYear(),month:s.getUTCMonth()+1,day:s.getUTCDate(),hour:s.getUTCHours(),minute:s.getUTCMinutes()},t);if(i)return i}return null}function DS(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 qp(e,t,r){let n=Mp(r,t),o=new Date(Date.UTC(n.year,n.month-1,n.day));for(let s=0;s<=hL;s++){if(e.months.includes(o.getUTCMonth()+1)&&mL(e,o))for(let i of e.hours)for(let a of e.minutes){let c=yL({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 tc=5,je=Cp(()=>re([p(),P(),D(),Va(),k(je),J(p(),je)])),nc=b({x:P(),y:P()}),bL=z(["all-of","any-of","not"]),wL=z(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),_L=["comment"];function qS(e){return _L.includes(e)}var jne=b({url:Is().meta({secret:!0}).describe("webhook url"),signingSecret:p().min(1).optional().meta({secret:!0}).describe("signing secret")}),Dne=b({url:Is().meta({secret:!0}).describe("discord webhook url")}),no=15,oc=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`}),Fp=p().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),Up=b({id:P().int().positive().optional(),login:oc}),Mne=b({id:P().int().positive(),login:oc,avatarUrl:p(),permission:p().min(1)}),qne=b({name:p().min(1),color:p().regex(/^[0-9a-fA-F]{6}$/),description:p().nullable()}),vL=Ha((e)=>p().safeParse(e).success?{login:e}:e,Up);function FS(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var Ds=b({reviewers:k(vL).max(no,`ask at most ${no} people`).default([]),teamReviewers:k(Fp).max(no,`ask at most ${no} teams`).default([])}),US=Ds.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>no)t.addIssue({code:"custom",message:`ask at most ${no} people and teams`})}),Nr=b({labels:k(p().trim().min(1)).min(1,"choose at least one label")}),MS=5000,sc=b({message:p().trim().min(1,"write a message").max(MS,`keep it under ${MS} characters`)}),SL=z(["resolved","off-topic","too heated","spam"]),WS=b({reason:SL.optional()}),Wp={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function Vp(e){return e.n*Wp[e.unit]}var xL=52*Wp.weeks,kL=3650*Wp.days,$L=z(["hours","days","weeks"]),EL=z(["hours","days","weeks","months"]),TL=b({n:P().int().min(1),unit:$L}).refine((e)=>Vp(e)<=xL,{message:"runs at least once a year"}),VS="UTC",ZS=p().min(1).refine(jS,{error:(e)=>`${String(e.input)} is not an IANA timezone, like Europe/Berlin`}),ec=p().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use 24-hour HH:MM, like 07:30"),Zp=z(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),OL=yr("preset",[b({preset:C("hourly"),minute:P().int().min(0).max(59)}),b({preset:C("daily"),at:ec}),b({preset:C("weekdays"),at:ec}),b({preset:C("weekly"),on:Zp,at:ec}),b({preset:C("monthly"),day:P().int().min(1).max(28),at:ec})]),PL=b({cron:p().trim().superRefine((e,t)=>{let r=Qa(e);if(!r.ok){t.addIssue({code:"custom",message:r.error});return}if(qp(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(DS(r.spec)<tc)t.addIssue({code:"custom",message:`runs must be at least ${tc} minutes apart`})})}),BS=re([TL,OL,PL]),HS=b({n:P().int().min(1),unit:EL}).refine((e)=>Vp(e)<=kL,{message:"10 years at most"}),KS=z(["open","closed","any"]),rc=k(p().min(1)),AL=b({subjects:k(Xa).min(1),state:KS,inactiveFor:HS,labels:rc.optional(),excludeLabels:rc.optional(),skipLocked:D().default(!0)}),oo=b({every:BS,timezone:ZS.optional(),match:AL}),IL=b({every:BS.optional(),timezone:ZS.optional(),match:b({subjects:k(Xa).optional(),state:KS.optional(),inactiveFor:HS.optional(),labels:rc.optional(),excludeLabels:rc.optional(),skipLocked:D().optional()}).default({})});var RL=["every","subjects","state","inactiveFor"];function GS(e){return RL.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 CL=b({id:p(),type:C("trigger"),kinds:k(js).min(1),schedule:IL.optional(),position:nc.optional()});function ic(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var zL=b({id:p(),type:C("rule"),ref:p().regex(/^[a-z][a-z0-9-]*@\d+$/),config:je,position:nc.optional()}),NL=b({id:p(),type:C("gate"),mode:bL,position:nc.optional()}),LL=b({id:p(),type:C("action"),action:wL,params:J(p(),je).optional(),position:nc.optional()}),Bp=yr("type",[CL,zL,NL,LL]),JS=z(["pass","fail","approve","deny"]),jL=b({id:p(),from:p(),to:p(),when:JS.optional()}),wr=b({id:p(),name:p(),version:P().int().min(1),nodes:k(Bp).min(1),edges:k(jL)}),YS={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 XS=[{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}],QS=[{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 Vne=J(p(),je).catch({});function ac(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function tx(e){let t=Nr.safeParse(e);return t.success?t.data.labels:[]}function rx(e){return`${e.length===1?"the label":"the labels"} ${ac(e)}`}function DL(e){let t=Ds.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=DL(t);return r.length>0?`requests GitHub review from ${ac(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 ML=b({runId:p(),verdict:p().nullable(),status:p(),reason:p().nullable()}),ox=b({event:zS,run:ML.nullable(),pending:D().optional()}),qL=b({repoFullName:p(),subjectNumber:P().int(),title:p(),url:p().nullable(),actor:b({login:p(),avatarUrl:p().nullable()}),currentVerdict:p().nullable(),currentRunId:p().nullable(),latestActivityAt:ve.datetime(),eventCount:P().int(),timeline:k(ox)}),FL=yr("type",[b({type:C("group"),group:qL}),b({type:C("event"),entry:ox})]),Kne=b({items:k(FL)});var UL=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],Yne=z(UL);var WL="https://tripwire.sh/orgs";var Xne=b({sub:p().min(1),azp:p().min(1).optional(),client_id:p().min(1).optional(),scope:p().optional(),[WL]:k(p()).optional()});var VL=z(["success","failure","neutral","pending"]),toe=b({sha:p(),conclusion:VL,summary:p(),detailsUrl:p()});var ZL=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],BL=ZL.length;var HL=P().int().min(0).max(BL),sx=z(["run-page","check","comment","review","webhook"]),ooe=sx.options,KL=["run-page","check","comment","review"],cc=b({level:HL.default(0),surfaces:k(sx).default(()=>[...KL]),showHelp:D().default(!0)}),ix=cc.extend({inherit:D().default(!0)}),GL=cc.parse({});var JL=z(["green","blue","purple","pink","orange","red","grey"]),_r=z(["issue","pull"]),Ms=z(["open","closed","merged"]),ax=b({key:p(),label:p(),value:P(),delta:P().optional(),invertDelta:D().optional(),sub:p().optional(),series:k(P()),color:JL,suffix:p().optional()}),YL=b({rule:p(),count:P()}),XL=b({kind:_r,number:P(),title:p(),comments:P(),blocked:P(),status:Ms}),QL=b({login:p(),count:P(),flagged:D().optional()}),ej=b({login:p(),reason:p(),caughtBy:p(),status:z(["Hidden","Removed"]),commentId:p().optional()}),tj=b({kind:z(["review","check"]),title:p(),detail:p(),status:z(["Approved","Changes","Passed","Failed"]),actor:p().optional()}),rj=b({kind:_r,number:P(),title:p(),status:Ms,meta:p(),metrics:k(ax),series:k(P()),byParticipant:k(QL),flagged:k(ej).optional(),checks:k(tj).optional()}),aoe=b({metrics:k(ax),blockedByRule:k(YL),activeThreads:k(XL),threads:J(p(),rj)});var io=z(["issue","pull","comment"]),Hp=z(["spam","harassment","off-topic","automod","nsfw"]),Kp=z(["low","medium","high","critical"]),nj=z(["pending","resolved"]),so=b({login:p(),avatarUrl:p()}),doe=b({id:p(),type:io,repository:Ja,number:P(),title:p(),bodyPreview:p(),author:so,reason:Hp,severity:Kp,reporter:so.nullable(),automodRule:p().optional(),reportedAt:ve.datetime(),status:nj,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"})}),Lr=b({value:P(),delta:P(),series:k(P())}),poe=b({sentToReview:Lr,blocked:Lr,passed:Lr}),foe=z(["approve","remove","ban"]);var oj=z(["info","warn","critical"]),sj=b({severity:oj,file:p(),line:P().int().min(1).optional(),note:p().max(240)}),goe=b({verdict:z(["pass","block","needs_review"]),confidence:P().min(0).max(1),summary:p().max(200),findings:k(sj).max(5)}),cx=b({model:p().optional(),maxSteps:P().int().min(1).max(15).default(12)});var ij=b({type:z(["reasoning","tool_call"]),toolName:p().optional(),excerpt:p(),truncated:D()}),yoe=b({model:p(),stepsUsed:P().int().min(0),maxSteps:P().int().min(0),trimmed:D(),costUsd:P().nullable().optional(),usage:b({input:P().int().min(0),output:P().int().min(0),cached:P().int().min(0).nullable()}),steps:k(ij)});var aj=z(["blocklist","heuristic","classifier","regex"]),cj=z(["flag","hide","close","require-review"]),uj=z(["pending","confirmed","false-positive"]),lj=b({id:p(),type:io,repoFullName:p(),number:P(),author:b({login:p(),avatarUrl:p()}),snippet:p(),matchedAt:ve.datetime(),verdict:uj,threadKind:_r,commentId:p()}),koe=b({id:p(),name:p(),description:p(),category:aj,pattern:p(),scope:k(io),action:cj,enabled:D(),matches24h:P(),matches30d:P(),falsePositiveRate:P().min(0).max(100),lastFiredAt:ve.datetime(),trend:k(P()),recentMatches:k(lj)}),$oe=b({activeRules:Lr,matches24h:Lr,falsePositiveRate:Lr,autoActioned24h:Lr}),Eoe=b({ruleId:p(),version:P().int().min(1),status:z(["evaluated","skipped"]),passed:D(),evidence:de(),reason:p().optional(),evaluatedAt:ve.datetime()}),dj=b({minDays:P().int().min(0)}),Toe=b({min:P().int().min(0)}),pj=b({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")}),fj=b({maxPerWindow:P().int().min(1),windowHours:P().min(0.1).default(24)}),mj=b({max:P().int().min(1)}),hj=b({maxNonLatinRatio:P().min(0).max(1).default(0.5)}),gj=b({}),yj=b({paths:k(p()).min(1)}),bj=b({minLength:P().int().min(1).default(32)}),He=[{ruleId:"account-age",forges:["github"],version:1,name:"Account age",blurb:"the contributor's forge account must be at least N days old.",configSchema:dj,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:pj,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:fj,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:mj,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:hj,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:gj,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:yj,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:bj,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:"off until you turn it on, because ai review costs tokens.",configSchema:cx,defaultConfig:{maxSteps:12},optIn:!0,changeNote:"findings must quote code",description:"Reads the change like a reviewer and flags slop. Off until you turn it on, because it costs tokens.",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 Noe=J(p(),je);var vj=z(["silent","ci-check","comment"]),ux=z(["comment","silent"]),Sj=z(["full","one-liner-link","custom"]),Gp=b({customText:p().max(4000).default(""),showDetailsButton:D().default(!0)}),xj=Gp.extend({mode:Sj.default("full"),template:p().max(4000).default("")}),kj=b({onSuccess:vj.default("ci-check"),passComment:Gp.prefault({}),onBlock:ux.default("comment"),blockComment:xj.prefault({}),moderationQueued:ux.default("comment"),reviewComment:Gp.prefault({}),failClosedFallback:D().default(!0),redaction:ix.prefault({})}),$j=b({redaction:cc.prefault({})}),Moe=$j.parse({});var Ej=kj.parse({});var lx="If you think this is wrong, say so in a comment. A maintainer will decide.",dx="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Joe=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
229
|
+
|
|
230
|
+
${lx}`,Yoe=`A new commit will not fix this.
|
|
231
|
+
|
|
232
|
+
${dx}`,Xoe=`Fix what you can and push. Some problems will not clear with a new commit.
|
|
233
|
+
|
|
234
|
+
${dx}`,Qoe=`Push a new commit to run the checks again.
|
|
235
|
+
|
|
236
|
+
${lx}`;var Tj=b({total:P(),weeks:k(k(P().min(0).max(4)))}),Oj=b({accountAgeDays:P(),location:p().nullable(),emailVerified:D(),twoFactor:D()}),Pj=b({mergedPrs:P(),openPrs:P(),comments:P(),hiddenByAutomod:P()}),Aj=z(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),Ij=b({id:p(),kind:Aj,title:p(),detail:p(),at:ve.datetime()}),rse=b({handle:p(),initial:p(),joinedDaysAgo:P(),publicRepos:P(),followers:P(),watchlisted:D(),contributions:Tj,details:Oj,repoStats:Pj,activity:k(Ij)});var Rj=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],px=p().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),Cj=yr("kind",[b({kind:C("last"),window:px}),b({kind:C("lastCount"),window:px}),b({kind:C("trimmedLength")}),b({kind:C("nonLatinRatio")}),b({kind:C("letterCount")})]),zj=re([P(),p(),D()]),Nj=re([zj,k(re([P(),p()]))]),fx=b({kind:z(Rj),args:k(Nj)}),Lj=re([fx.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),b({kind:C("not"),args:xN([fx])})]),jj=b({when:b({id:p().min(1),transform:Cj.optional()}),comparison:Lj,severity:z(["low","medium","high"])});var ase=b({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:jj}),cse=b({});var pse=z(["prod","eval","dev"]),fse=z(["railway","openrouter","planetscale"]);var yse=z(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var Kt={installationId:p(),forge:Ls},bse=yr("status",[b({...Kt,status:C("claimable"),account:p().nullable(),repoCount:P(),stateOrg:b({id:p(),slug:p(),name:p()}).nullable()}),b({...Kt,status:C("claimed-by-your-org"),orgSlug:p()}),b({...Kt,status:C("processing")}),b({...Kt,status:C("recovering")}),b({...Kt,status:C("unreadable")}),b({...Kt,status:C("missing"),recoverable:D()}),b({...Kt,status:C("not-for-tripwire")}),b({...Kt,status:C("not-yours"),recoverable:D()}),b({...Kt,status:C("token-expired")}),b({...Kt,status:C("not-admin"),account:p().nullable()})]);var Dj=/^(Too (small|big)|Invalid (input|option|string|number|key|element|value)|Unrecognized key)/,Mj=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","a group of settings"]]);function uc(e,t){return`${e} ${t}${e===1?"":"s"}`}function qj(e){return e.map(String).join(".")}function Fj(e,t){switch(e.code){case"too_small":{if(e.origin==="array"||e.origin==="set")return`${t} needs at least ${uc(e.minimum,"item")}`;if(e.origin==="string")return e.minimum===1?`${t} cannot be empty`:`${t} needs at least ${uc(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 ${uc(e.maximum,"item")}`;if(e.origin==="string")return`${t} can be at most ${uc(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 ${Mj.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 ao(e,t){let r=t?.(e.path)??null,n=r??qj(e.path);if(Dj.test(e.message)){let o=Fj(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 Jp=z(["admin","member"]),Uj=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"]),Wj=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,Sse=p().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(Wj,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!Uj.has(e),{message:"this name is reserved"});var xse=z(["User","Organization"]),kse=b({role:Jp,maxUses:P().int().min(1).max(1000).default(1),expiresInDays:P().int().min(1).max(90).default(7)});var Yp=["moderation","activity","rules","workflows","responses","analytics","connections","members","settings"],Xp=z(Yp),mx=["read","manage"],Gt=z(mx),Ose=MN([Xp,":",Gt]),Pse=Yp.flatMap((e)=>mx.map((t)=>`${e}:${t}`));var hx=b({moderation:Gt.optional(),activity:Gt.optional(),rules:Gt.optional(),workflows:Gt.optional(),responses:Gt.optional(),analytics:Gt.optional(),connections:Gt.optional(),members:C("read").optional(),settings:C("read").optional()}).strict().refine((e)=>Object.values(e).some(Boolean),{message:"pick at least one area"}),Vj=Ip(Xp,k(Gt).min(1));var Ase=Ip(Xp,Gt);function Zj(e){let t={};for(let r of Yp){let n=e[r];if(n?.includes("manage"))t[r]="manage";else if(n?.includes("read"))t[r]="read"}return t}var Bj=new Set(["admin","member","owner"]),Qp=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)=>!Bj.has(e),{message:"this name is taken by a built-in role"}),Ise=b({name:Qp,scopes:hx}),gx=Vj.refine((e)=>hx.safeParse(Zj(e)).success,{message:"this role grants access a custom role cannot hold"}),Rse=b({organizationId:p().min(1),role:Qp,permission:gx}).strict(),Cse=b({organizationId:p().min(1),roleName:p().min(1).optional(),roleId:p().min(1).optional(),data:b({permission:gx}).strict()}).strict(),zse=re([Jp,Qp]);var Hj=z(["public","private"]),wx=b({name:p(),className:p()}),Kj=b({name:p(),description:p(),visibility:Hj,openIssues:P(),openPulls:P(),flagged:P(),updatedAt:ve.datetime()}),yx=b({kind:_r,number:P(),title:p(),status:Ms,author:p(),openedAt:ve.datetime(),comments:P(),flagged:P(),labels:k(wx)}),Gj=b({state:z(["Hidden","Removed"]),rule:p()}),Jj=b({id:p(),author:p(),body:p(),createdAt:ve.datetime(),flag:Gj.optional()}),bx=b({kind:_r,number:P(),title:p(),status:Ms,author:p(),openedAt:ve.datetime(),labels:k(wx),body:p(),comments:k(Jj),branch:p().optional(),baseBranch:p().optional()}),Dse=b({repos:k(Kj),issues:k(yx),pulls:k(yx),issueDetails:J(p(),bx),pullDetails:J(p(),bx)});var Fse=new Set(YS.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var Yj=z(["removed","hidden","banned","dismissed","required-review"]),Xj=z(["actioned","dismissed","appealed","reversed"]),Qj=z(["automod","report","manual"]),eD=b({kind:Qj,detail:p(),reporter:so.optional()}),tD=b({at:ve.datetime(),label:p(),by:p()}),rD=b({id:p(),type:io,repoFullName:p(),number:P(),content:p(),threadKind:_r,commentId:p()}),Bse=b({id:p(),label:p(),reason:Hp,severity:Kp,action:Yj,status:Xj,author:so,moderator:so.nullable(),caughtBy:eD,at:ve.datetime(),snapshot:D(),items:k(rD),history:k(tD)}),Hse=z(["what","reason","caught"]),co=z(["pass","block","needs_review"]);var _x=z(["queued","running","paused","completed","failed","closed"]),Yse=_x.options,Xse=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"},Qse=_x.nullable().catch(null),eie=co.nullable().catch(null);var vx=z(["event","pass","fail","approve","deny"]),nie=z(["event","result","decision"]),oie=z(["identity","not"]),ct={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"}},nD={identity:{event:"event",result:"result",decision:"decision"},not:{result:"result",decision:"decision"}};function oD(e,t){return nD[e][t]??null}function sD(e){let t=ct[e];return oD(t.fn,t.type)}var Fs={event:ct.event.label,pass:ct.pass.label,fail:ct.fail.label,approve:ct.approve.label,deny:ct.deny.label},ef={event:ct.event.type,pass:ct.pass.type,fail:ct.fail.type,approve:ct.approve.type,deny:ct.deny.type};function uo(e){let t=ct[e];if(t.type==="event")return"neutral";return t.fn==="not"?"fail":"ok"}var sie={event:uo("event"),pass:uo("pass"),fail:uo("fail"),approve:uo("approve"),deny:uo("deny")},iD={trigger:[],rule:["event","result","decision"],gate:["result"],action:["event","result","decision"]},aD={"send-to-moderation":["approve","deny"]},cD=vx.options;function Sx(e){return iD[e]}function dc(e,t){let r=sD(t);return r!==null&&Sx(e).includes(r)}function qs(e){return cD.filter((t)=>dc(e,t))}var iie={trigger:{accepts:qs("trigger")},rule:{accepts:qs("rule")},gate:{accepts:qs("gate")},action:{accepts:qs("action")}};function Us(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?aD[e.action]:[];default:return[]}}function $n(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var Tx={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-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"}},En=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),Ws=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function rf(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function uD(e){let t=e.trim();return rf(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function Ox(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function pc(e,t=He){switch(e.type){case"trigger":return"Trigger";case"rule":{let[r]=e.ref.split("@");return He.find((n)=>n.ruleId===r)?.name??t.find((n)=>n.ruleId===r)?.name??e.ref}case"gate":return QS.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 Px(e,t,r,n){if(dc(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=ef[t];return{rule:"gate-input",message:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function Ax(e,t,r){let n=Us(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 ${Fs[t]} output`};return null}function lD(e){return ef[e]==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function nf(e,t=He){let r=new Map,n=new Map;for(let o of e.nodes){let s=pc(o,t),i=(r.get(s)??0)+1;r.set(s,i),n.set(o.id,i===1?s:`${s} ${i}`)}return n}function dD(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},En(e.id)];return[En(e.id)]}function pD(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 fD(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:[En(t.id)]})))}function mD(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 Ix(e,t){let r=e.byId.get(t.from),n=e.byId.get(t.to);return r&&n?{source:r,target:n}:null}function xx(e){return(t)=>t.def.edges.flatMap((r)=>{let n=Ix(t,r);if(!n||Ax(n.source,$n(n.source,r.when),""))return[];let o=$n(n.source,r.when);if(Px(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"?lD(o):"It takes no inputs.",fixes:e==="gate-input"?dD(r,o):[En(r.id)]}]})}function kx(e){return(t)=>t.def.edges.flatMap((r)=>{let n=Ix(t,r);if(!n)return[];if(Ax(n.source,$n(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=Us(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${Fs[$n(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},En(r.id)]:[En(r.id)]}]})}function hD(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 gD(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&&dc(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,Ws(n.id)]}]})}function yD(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 ${Ox(u.slice(1))}.`,fixes:[En(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 bD(e){return Rx(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function wD(e){let t=bD(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 _D={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function vD(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!ic(t))return[];let r=GS(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${Ox(r.map((o)=>_D[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var SD={"remove-label":{schema:Nr,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:sc,field:"message",message:"Write the message.",label:"Write message"}},xD=new Set(["discord.com","discordapp.com","ptb.discord.com","canary.discord.com"]),kD=b({url:p().optional(),urlSet:D().optional()});function $D(e,t){let r=kD.safeParse(t??{});if(!r.success)return!1;let{url:n,urlSet:o}=r.data;if(n===void 0||n==="")return o===!0;let s=Is({protocol:/^https$/}).safeParse(n);if(!s.success)return!1;if(e==="webhook")return!0;let i=new URL(s.data);return xD.has(i.hostname)&&i.pathname.startsWith("/api/webhooks/")}var ED={webhook:{message:"Set the webhook URL. It must use HTTPS.",label:"Set URL"},discord:{message:"Set the Discord webhook URL.",label:"Set URL"}};function tf(e,t,r,n){return{nodeId:e,message:t,fixes:[{label:r,intent:{type:"focus-field",nodeId:e,field:n}}]}}function TD(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];if(t.action==="webhook"||t.action==="discord"){let o=ED[t.action];return $D(t.action,t.params)?[]:[tf(t.id,o.message,o.label,"url")]}if(t.action==="label")return Nr.safeParse(t.params??{}).success?[]:[tf(t.id,"Pick the labels to add.","Pick labels","labels")];let r=t.action==="remove-label"||t.action==="post-comment"?SD[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[tf(t.id,r.message,r.label,r.field)]})}function OD(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&ic(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 PD=new Set(["block","send-to-moderation"]);function Rx(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 AD(e){let t=Rx(e,e.def.nodes.filter(ic).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&PD.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[Ws(r.id)]}]:[])}function Cx(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function ID(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!Cx(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[Ws(t.id)]}]:[])}function RD(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=Cx(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: ${rf(ao(o))}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var CD={comment:"Customize sets the verdict comment now"};function zD(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&qS(t.action)?[{nodeId:t.id,message:`This step was removed. ${uD(CD[t.action])}`,fixes:[Ws(t.id)]}]:[])}function ND(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=US.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: ${rf(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function LD(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=Ds.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>FS(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 jD(e){return e.def.nodes.flatMap((t)=>{let[r]=Us(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}},Ws(t.id)]}]})}var DD=[{rule:"duplicate-id",check:pD},{rule:"missing-step",check:fD},{rule:"no-trigger",check:mD},{rule:"trigger-input",check:xx("trigger-input")},{rule:"gate-input",check:xx("gate-input")},{rule:"no-outputs",check:kx("no-outputs")},{rule:"wrong-output",check:kx("wrong-output")},{rule:"not-input",check:hD},{rule:"orphan-step",check:gD},{rule:"cycle",check:yD},{rule:"no-action",check:wD},{rule:"schedule-config",check:vD},{rule:"action-params",check:TD},{rule:"schedule-mixed",check:OD},{rule:"schedule-needs-change-request",check:AD},{rule:"unknown-rule",check:ID},{rule:"rule-config",check:RD},{rule:"removed-step",check:zD},{rule:"review-targets",check:ND},{rule:"stale-reviewer",check:LD},{rule:"dead-end",check:jD}];function $x(e,t){let r=new Map;for(let n of e)r.set(n[t],[...r.get(n[t])??[],n]);return r}function of(e,t,r=new Map){return{rule:e,severity:Tx[e].severity,step:t.nodeId?r.get(t.nodeId)??"Step":"Workflow",...t}}function Ex(e,t,r,n){let o=nf(e,t),s={def:e,byId:new Map(e.nodes.map((c)=>[c.id,c])),incoming:$x(e.edges,"to"),outgoing:$x(e.edges,"from"),name:(c)=>o.get(c.id)??pc(c,t),catalog:t,reviewers:n},i=DD.flatMap(({rule:c,check:u})=>r==="structure"&&Tx[c].stage!=="structure"?[]:u(s).map((l)=>of(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 MD=b({nodes:k(Ee({id:p().catch(""),type:p().catch(""),kinds:k(p()).optional().catch(void 0)}))});function qD(e,t){let r=new Map,n=new Map;for(let o of e){let s=Bp.safeParse(o),i=s.success?pc(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 FD(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 of("schema",{nodeId:i||void 0,message:"A setting is not valid.",fixes:[]},r)})}function sf(e,t={}){let r=t.catalog??He,n=t.stage??"enable",o=(f)=>[...f].sort((m,h)=>Number(m.severity==="warning")-Number(h.severity==="warning")),s=wr.safeParse(e);if(s.success)return{definition:s.data,results:o(Ex(s.data,r,n,t.reviewers))};let i=MD.safeParse(e),a=i.success?i.data.nodes:[],c=a.filter((f)=>f.type==="trigger"&&f.kinds?.length===0),u=wr.safeParse({...e,nodes:a.map((f)=>c.includes(f)?{...f,kinds:["push"]}:f)});if(c.length===0||!u.success)return{definition:null,results:FD(s.error,a.map((f)=>f.id),qD(a,r))};let l=nf(u.data,r),d=c.map((f)=>of("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,...Ex(u.data,r,n,t.reviewers)])}}function zx(e,t={}){return sf(e,t).results}var UD={pass:lc.pass,block:lc.block,needs_review:lc.needs_review},WD=co.nullable().catch(null);function Nx(e){let t=WD.parse(e??null);return t?UD[t]:null}var Sie=k(wr).catch([]),xie=b({workflows:k(b({id:p(),name:p()})),issues:k(b({workflowId:p(),messages:k(p())})).optional()}).catch({workflows:[]}),kie=b({decision:z(["approve","deny"])}).nullable().catch(null);var $ie=b({pausedNodeId:p()}).nullable().catch(null);var VD=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],Lx=z(VD),jx=z(["active","waiting","completed","skipped","failed"]);var ZD=p().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),BD=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function Dx(e){let t=BD.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var HD=b({status:jx,detail:p().max(256).nullable(),updatedAt:ve.datetime()}),KD=Ip(Lx,HD),Oie=b({runCode:p().trim().min(1).max(200),stage:Lx,status:jx,detail:p().trim().max(256).optional()}),Pie=b({code:ZD,stages:KD,completedAt:ve.datetime().nullable(),lastReportAt:ve.datetime().nullable()});function Mx(e){return e?`Please help me set up Tripwire.
|
|
237
|
+
|
|
238
|
+
org slug: ${e.org}
|
|
239
|
+
run code: ${e.code}`:"Please help me set up Tripwire."}var GD=b({ruleId:p(),summary:p()}),Cie=b({version:C(1),verdict:co,org:p(),repo:p(),changeRequest:b({number:P().int(),title:p(),author:p()}),firedRules:k(GD),runUrl:p(),timestamp:p()});var zie=b({content:p(),embeds:k(b({title:p(),url:p(),description:p(),color:P().int()}))});function lo(e,t){return{kind:"output",step:e,port:t}}function cf(e,t,r,n){let o={kind:"check",rule:e,config:t??{},version:r?.version,inputs:n,get passes(){return lo(o,"pass")},get fails(){return lo(o,"fail")},after:(...s)=>cf(e,t,r,s)};return o}function af(e,t){let r={kind:"gate",mode:e,inputs:t,get passes(){return lo(r,"pass")},get fails(){return lo(r,"fail")}};return r}function Jt(e,t,r=[]){return{kind:"action",action:e,params:t,inputs:r,after:(...n)=>Jt(e,t,n)}}function qx(e,t){let r={kind:"action",action:"send-to-moderation",params:void 0,approve:e.approve??[],deny:e.deny??[],inputs:t,get approved(){return lo(r,"approve")},get denied(){return lo(r,"deny")},after:(...n)=>qx(e,n)};return r}function Fx(){return{check(e,...t){let[r,n]=t;return cf(e,r,n,[])},customCheck(e,t){return cf(e,t,void 0,[])},allOf(...e){return af("all-of",e)},anyOf(...e){return af("any-of",e)},not(e){return af("not",[e])},trigger(...e){return{kind:"trigger",on:e,inputs:[]}},schedule(e){return{kind:"trigger",on:["schedule.matched"],schedule:e,inputs:[]}},block(){return Jt("block",void 0)},label(e){return Jt("label",e)},removeLabel(e){return Jt("remove-label",e)},requestReview(e){return Jt("request-review",e)},postComment(e){return Jt("post-comment",e)},lock(e){return Jt("lock",e)},close(){return Jt("close",void 0)},webhook(){return Jt("webhook",void 0)},discord(){return Jt("discord",void 0)},humanReview(e={}){return qx(e,[])},workflow(e){return{kind:"workflow",spec:e}},workflows(e){return e}}}var po=["change-request.opened","change-request.updated","change-request.closed","comment.created","push"],Vs=b({}),jr={block:Vs,label:Nr,"remove-label":Nr,"request-review":b({reviewers:k(re([oc,Up])).optional(),teamReviewers:k(Fp).optional()}),"post-comment":sc,lock:WS,close:Vs,webhook:Vs,discord:Vs,"send-to-moderation":Vs};var Ux=Fx();var Jie=tc*60000;function Zx(e){return"n"in e}function JD(e){return"preset"in e}var YD={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6};function uf(e){return e?{zone:e,defaulted:!1}:{zone:VS,defaulted:!0}}function XD(e){return e.defaulted?`${e.zone}, the default`:e.zone}var Bx={hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function lf(e){let[t,r]=Bx[e.unit];return`${e.n} ${e.n===1?t:r}`}var Hx=Zp.options.map((e)=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`);function Wx(e){return String(e).padStart(2,"0")}function Kx(e){let r=e%100>=11&&e%100<=13?"th":["th","st","nd","rd"][e%10]??"th";return`${e}${r}`}function df(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Zs(e,t,r){return e.length===r-t+1}function QD(e,t){let[r,n]=e;if(r!==t||n===void 0||e.length<2)return null;let o=n-r;return e.every((s,i)=>s===t+i*o)?o:null}function eM(e){if(e.join(",")==="1,2,3,4,5")return"on weekdays";if(e.join(",")==="0,6")return"on weekends";return`on ${df(e.map((t)=>Hx[t]??String(t)))}`}var tM=7;function rM(e){let t=Zs(e.days,1,31),r=Zs(e.weekdays,0,6);if(e.daysRestricted&&e.weekdaysRestricted)return t||r?{part:null}:null;if(t&&r)return{part:null};if(!(t||r))return null;if(t)return{part:eM(e.weekdays)};return e.days.length>tM?null:{part:`on the ${df(e.days.map(Kx))} of the month`}}function Vx(e,t,r){let n=QD(e,t),o=e.at(-1);return n!==null&&o!==void 0&&r%n===0&&o+n===t+r?n:null}function nM(e){let t=Qa(e);if(!t.ok)return null;let r=t.spec;if(!Zs(r.months,1,12))return null;let n=rM(r);if(!n)return null;let o=n.part===null,s=n.part,i=Zs(r.hours,0,23),a=Zs(r.minutes,0,59),c=null;if(a&&i)c="Every minute";else if(i){let u=Vx(r.minutes,0,60);if(u)c=`Every ${u} minutes`;else if(r.minutes.length===1){let[l=0]=r.minutes;c=l===0?"Every hour":`Every hour at minute ${l}`}}else if(r.minutes.length===1){let[u=0]=r.minutes,l=Vx(r.hours,0,24);if(l&&r.hours.length>2)c=`Every ${l} hours at minute ${u}`;else if(r.hours.length<=4)c=`At ${df(r.hours.map((d)=>`${Wx(d)}:${Wx(u)}`))}`}if(!c)return null;if(o)return c.startsWith("At")?`Every day ${c.toLowerCase()}`:c;return`${c} ${s??""}`.trim()}function oM(e){if(Zx(e))return e.n===1?`Every ${Bx[e.unit][0]}`:`Every ${lf(e)}`;if(JD(e))switch(e.preset){case"hourly":return e.minute===0?"Every hour":`Every hour at minute ${e.minute}`;case"daily":return`Every day at ${e.at}`;case"weekdays":return`Weekdays at ${e.at}`;case"weekly":return`Every ${Hx[YD[e.on]]} at ${e.at}`;case"monthly":return`On the ${Kx(e.day)} of every month at ${e.at}`;default:return"On a schedule"}return nM(e.cron)??`Cron ${e.cron.trim()}`}function Bs(e){let t=oM(e.every);if(Zx(e.every))return t;return`${t} (${XD(uf(e.timezone))})`}var sM={issue:"issues","change-request":"change requests"},iM={open:"open",closed:"closed",any:"open and closed"};function pf(e,t){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} ${t} ${e.at(-1)}`}function aM(e){let t=e?.match??{},r=["issue","change-request"].filter((o)=>t.subjects?.includes(o)),n=e?.every?[{key:"every",text:Bs({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:iM[t.state]}:{key:"state",text:"open or closed",placeholder:!0},{key:"gap",text:" "},r.length>0?{key:"subjects",text:pf(r.map((o)=>sM[o]),"and")}:{key:"subjects",text:"issues or change requests",placeholder:!0},{key:"inactive-lead",text:" with no activity for "},t.inactiveFor?{key:"inactiveFor",text:lf(t.inactiveFor)}:{key:"inactiveFor",text:"some time",placeholder:!0}),t.labels?.length)n.push({key:"labels",text:`, labeled ${pf(t.labels,"and")}`});if(t.excludeLabels?.length)n.push({key:"excludeLabels",text:`, not labeled ${pf(t.excludeLabels,"or")}`});if(t.skipLocked!==!1)n.push({key:"skipLocked",text:", skipping locked ones"});return n.push({key:"end",text:"."}),n}function Gx(e){return aM(e).map((t)=>t.placeholder?`[${t.text}]`:t.text).join("")}var cM=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 Jx(e){let t=e.map(String).filter((r)=>!/^\d+$/.test(r)).join(".");return cM.get(t)??null}function uM(e){return/[.?]$/.test(e)?e:`${e}.`}function Qx(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 lM(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 Yx(e,t){let r=0;for(let n of t)if(n===e[r])r++;return r===e.length}function Xx(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function dM(e,t){let r=Xx(e),n=null;for(let s of t){let i=Xx(s),c=Yx(r,i)||Yx(i,r)?Math.abs(i.length-r.length)/4:lM(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 fc(e,t,r){let n=dM(t,r);return n?`${t} is not ${e}. Did you mean ${n}?`:`${t} is not ${e}. Use one of: ${r.join(", ")}`}var ek=J(p(),de());function Hs(e,t,r){let n=ek.safeParse(e??{});if(!n.success)return[`${r} takes an object of settings`];let o=t instanceof Ap?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)=>fc(`a setting of ${r}`,a,o));let i=t.safeParse(n.data);return i.success?[]:i.error.issues.map((a)=>`${r}: ${ao(a)}`)}var pM=b({kind:z(["trigger","check","gate","action","output"])}),tk=b({kind:z(["trigger","check","gate","action"])}),fM=b({kind:C("output"),port:z(["pass","fail","approve","deny"])}),mM=b({}).loose(),hM=Ba((e)=>tk.safeParse(e).success),gM=J(p(),b({kind:C("workflow"),spec:Ba((e)=>mM.safeParse(e).success,{error:"each entry must be workflow({ ... })"})}),{error:"the default export must be workflows({ ... })"});function yM(e){return Object.hasOwn(jr,e)}function ff(e){return e.kind==="output"}function bM(e){return e.kind==="action"&&e.action==="send-to-moderation"}function wM(e,t){if(e==="pass")return;return t.kind==="trigger"?void 0:e}function _M(e){switch(e){case"pass":return"fail";case"fail":return"pass";case"approve":return"deny";default:return"approve"}}function vM(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 SM=/^[^\p{Cc}]+$/u;class rk{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=vM(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=wM(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(!pM.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}if(ff(r)){if(!fM.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(!tk.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=js.safeParse(n);if(o.success&&(o.data==="schedule.matched"||po.some((s)=>s===o.data)))r.push(o.data);else this.issue(fc("an event a workflow can start on",n,po),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=oo.safeParse(e.schedule);if(!n.success){for(let o of n.error.issues)this.issue(uM(ao(o,Jx)),e);return}this.nodes.push({id:t,type:"trigger",kinds:r,schedule:oo.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=He.find((a)=>a.ruleId===e.rule);if(!s){this.issue(fc("a rule",e.rule,He.map((a)=>a.ruleId)),e);return}let i=e.version??s.version;if(n=`${s.ruleId}@${i}`,i===s.version)for(let a of Hs(e.config,s.configSchema,s.ruleId))this.issue(a,e)}let o=je.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(!yM(r)){this.issue(fc("an action",r,Object.keys(jr)),e);return}let n=jr[r];for(let a of Hs(e.params,n,r))this.issue(a,e);let o=ek.safeParse(e.params??{}),s=J(p(),je).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(bM(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(!SM.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=hM.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=ff(e.check)?{step:e.check.step,port:e.check.port}:{step:e.check,port:"pass"};if(!ff(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,_M(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=wr.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(ao(i));return null}return s.data}}function mf(e){let t=[],r=[];for(let[n,o]of Object.entries(e)){let s=new rk(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 nk(e){let t=gM.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 mf(t.data)}function xM(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 kM(e){return e.nodes.flatMap((t)=>{if(t.type!=="trigger"||!t.schedule?.every)return[];let r=uf(t.schedule.timezone),n=xM(e,t.id),o=Gx(t.schedule);return[{nodeId:t.id,summary:Bs({every:t.schedule.every,timezone:t.schedule.timezone}),timezone:r.zone,defaulted:r.defaulted,description:n.length>0?`${o} Then Tripwire ${ac(n)}.`:`${o} No action runs after it.`}]})}function ok(e,t){return e.map((r)=>{let n=zx(r,t?{catalog:t}:{});return{id:r.id,name:r.name,valid:!n.some((o)=>o.severity==="error"),issues:n,schedules:kM(r)}})}var hf=new Set(["url","signingSecret","urlSet","signingSecretSet"]);var hae=k(je),gae=J(p(),je);var yae=p(),bae=J(p(),je);var wae=b({}).strict();var sk=new Set(["cycle","gate-input","not-input","trigger-input","wrong-output","no-outputs","missing-step","duplicate-id"]);function ik(e){return $M(e).issues.filter((t)=>sk.has(t.rule))}function $M(e,t=He){let r=sf(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)=>sk.has(o.rule)),canTurnOn:n.length===0,issues:n}}var mc={on:"Live",off:"Off","cant-run":"Can't run","needs-fixes":"Needs fixes","cant-turn-on":"Can't turn on"};function ak(e){if(e.enabled){if(!e.runnable)return"cant-run";return e.canTurnOn?"on":"needs-fixes"}return e.canTurnOn?"off":"cant-turn-on"}var Ks=Cp(()=>b({type:p().optional(),const:de().optional(),enum:k(de()).optional(),items:Ks.optional(),properties:J(p(),Ks).optional(),required:k(p()).optional(),anyOf:k(Ks).optional(),oneOf:k(Ks).optional()})),yf=J(p(),je),EM=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function fo(e){return EM.test(e)?e:JSON.stringify(e)}function hc(e,t){let r=e.anyOf??e.oneOf;if(r)return r.map((n)=>hc(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?hc(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 ${fo(i)}${e.required?.includes(i)?"":"?"}: ${hc(a,o)};`).join(`
|
|
241
|
+
`)}
|
|
242
|
+
${t}}`}default:return"unknown"}}function gf(e,t=""){let r=Ks.safeParse(Fv(e,{io:"input",unrepresentable:"any"}));return r.success?hc(r.data,t):"unknown"}function TM(){let e=He.map((n)=>` readonly ${fo(n.ruleId)}: ${gf(n.configSchema,"\t\t")};`),t=Object.entries(jr).map(([n,o])=>` readonly ${fo(n)}: ${gf(o,"\t\t")};`),r=po.map((n)=>JSON.stringify(n)).join(" | ");return["export interface TripwireCatalog {","\treadonly rules: {",...e,"\t};","\treadonly actions: {",...t,"\t};",` readonly events: ${r};`,` readonly schedule: ${gf(oo,"\t")};`,"}"].join(`
|
|
243
|
+
`)}var bf=["allOf","anyOf","block","check","close","customCheck","discord","humanReview","label","lock","not","postComment","removeLabel","requestReview","schedule","trigger","webhook","workflow","workflows"],OM=new Set([...bf,"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 PM(e){return/^[A-Z0-9]+$/.test(e)?e.toLowerCase():e}function ck(e){let r=e.split(/[^A-Za-z0-9]+/).filter(Boolean).map(PM).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 OM.has(n)?`${n}Step`:n}var AM={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"},uk=new Set(["block","close","send-to-moderation","webhook","discord"]),IM=k(je);function Gs(e,t){let r=`${t} `,n=IM.safeParse(e);if(n.success)return n.data.length===0?"[]":`[
|
|
244
|
+
${n.data.map((s)=>`${r}${Gs(s,r)},`).join(`
|
|
245
|
+
`)}
|
|
246
|
+
${t}]`;let o=yf.safeParse(e);if(o.success){let s=Object.entries(o.data);return s.length===0?"{}":`{
|
|
247
|
+
${s.map(([i,a])=>`${r}${fo(i)}: ${Gs(a,r)},`).join(`
|
|
248
|
+
`)}
|
|
249
|
+
${t}}`}return JSON.stringify(e)}function RM(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 CM(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 zM(e,t,r,n){let o=t.length>0?`.after(${t.join(", ")})`:"";switch(e.type){case"trigger":{if(e.schedule)return`schedule(${Gs(je.parse(JSON.parse(JSON.stringify(e.schedule))),n)})`;return`trigger(${e.kinds.map((s)=>JSON.stringify(s)).join(", ")})`}case"rule":{let[s=e.ref,i]=e.ref.split("@"),a=Number(i),c=He.find((m)=>m.ruleId===s),u=yf.safeParse(e.config),l=u.success&&Object.keys(u.data).length===0?null:Gs(e.config,n);if(!c)return`customCheck(${JSON.stringify(s)}${l?`, ${l}`:""})${o}`;let d=a===c.version?"":`, { version: ${a} }`,f=l??(d?"{}":"");return`check(${JSON.stringify(s)}${f?`, ${f}`:""}${d})${o}`}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 s=AM[e.action],i=Object.fromEntries(Object.entries(e.params??{}).filter(([c])=>!hf.has(c))),a=uk.has(e.action)||Object.keys(i).length===0?"":Gs(i,n);return`${s}(${a})${o}`}default:return null}}function NM(e){return Object.hasOwn(jr,e)}function LM(e){switch(e.type){case"trigger":{if(e.schedule===void 0)return e.kinds.filter((t)=>!po.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 oo.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=He.find((s)=>s.ruleId===t);if(!n)return[`${t} is no longer a rule`];if(Number(r)!==n.version)return[];let o=yf.safeParse(e.config??{});return o.success?Hs(o.data,n.configSchema,t):[`${t} settings are not an object`]}case"action":{if(e.action==="comment"||uk.has(e.action))return[];if(!NM(e.action))return[`${e.action} is no longer an action`];let t=Object.fromEntries(Object.entries(e.params??{}).filter(([r])=>!hf.has(r)));return Hs(t,jr[e.action],e.action)}default:return[]}}function jM(e){return[...ik(e).map((t)=>t.message),...e.nodes.flatMap(LM)]}function DM(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=ck(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 CM(e)){let d=e.edges.filter((m)=>m.to===l.id&&!c.has(m.from)).map((m)=>RM(m,o,n)),f=zM(l,d,r,"\t");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},`:` ${fo(l)}: ${d},`});return[`function ${t}() {`,...i,"\treturn workflow({",` name: ${JSON.stringify(e.name)},`,"\t\tsteps: {",...u,"\t\t},","\t});","}"].join(`
|
|
250
|
+
`)}function gc(e,t){let r=[],n=new Set,o=[],s=[],i=new Set,a=[];for(let d of e){if(i.has(d.id)){r.push(`${d.name}: another workflow already uses the id ${d.id}, so it is left out`);continue}i.add(d.id);let[f]=jM(d);if(f){r.push(`${d.name}: left out, it cannot be written as code. ${f}`);continue}let m=ck(d.name||d.id),h=m;for(let g=2;n.has(h);g++)h=`${m}${g}`;n.add(h),a.push(d.id),o.push(DM(d,h,r)),s.push(` ${fo(d.id)}: ${h}(),`)}let c=[...o,`export default workflows({
|
|
251
|
+
${s.join(`
|
|
252
|
+
`)}
|
|
253
|
+
});`].join(`
|
|
254
|
+
|
|
255
|
+
`);return{code:`${[`import {
|
|
256
|
+
${bf.filter((d)=>new RegExp(`\\b${d}\\(`).test(c)).map((d)=>` ${d},`).join(`
|
|
257
|
+
`)}
|
|
258
|
+
} from ${JSON.stringify(t.importFrom)};`,c].join(`
|
|
259
|
+
|
|
260
|
+
`)}
|
|
261
|
+
`,warnings:r,written:a}}function lk(e){return[e.trimEnd(),TM(),`export const {
|
|
262
|
+
${bf.map((t)=>` ${t},`).join(`
|
|
263
|
+
`)}
|
|
264
|
+
} = authoring<TripwireCatalog>();`].join(`
|
|
265
|
+
|
|
266
|
+
`).concat(`
|
|
267
|
+
`)}var mo="./.tripwire/workflow.ts";var{block:MM,check:qM,close:FM,label:UM,lock:WM,postComment:dk,removeLabel:VM,schedule:wf,trigger:ZM,workflow:yc,workflows:BM}=Ux;function pk(e){let t=wf({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.warnAfterDays,unit:"days"},excludeLabels:["stale","no-auto-close"],skipLocked:!0}}),r=wf({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.closeAfterDays,unit:"days"},labels:["stale"],excludeLabels:["no-auto-close"],skipLocked:!0}}),n=ZM(...e.resetOn);return{warn:t,"mark-stale":UM({labels:["stale"]}).after(t),"warn-comment":dk({message:e.warning}).after(t),close:r,"close-comment":dk({message:e.closing}).after(r),"close-it":FM().after(r),reset:n,"unmark-stale":VM({labels:["stale"]}).after(n)}}var fk=wf({every:{n:12,unit:"hours"},match:{subjects:["issue","change-request"],state:"closed",inactiveFor:{n:15,unit:"days"},skipLocked:!0}}),HM=BM({"block-new-accounts":yc({name:"Block new accounts",on:"change-request.opened",check:qM("account-age",{minDays:7}),fail:[MM()]}),"lock-inactive-threads":yc({name:"Lock inactive threads",steps:{trigger:fk,lock:WM({reason:"resolved"}).after(fk)}}),"close-stale-issues":yc({name:"Close stale issues",steps:pk({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":yc({name:"Close stale change requests",steps:pk({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"]})})}),KM={"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."},GM=new Map(Object.entries(KM));function JM(){let e=mf(HM);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:GM.get(t.id)??"",definition:t}))}var Nae=JM();var _k=vn(_c(),1);var Js={label:(e)=>e,good:(e)=>e,next:(e)=>e,bad:(e)=>e};function Ys(e,t){if(!e||t.NO_COLOR)return Js;let r=_k.default.createColors(!0);return{label:r.dim,good:r.green,next:r.yellow,bad:r.red}}var gk=10;function Ue(e,t=Js){return e.map(([r,n])=>{let o=" ".repeat(Math.max(1,gk-r.length));return`${r===""?" ".repeat(gk):`${t.label(r)}${o}`}${n}`.trimEnd()}).join(`
|
|
268
|
+
`)}function vk(e){return eq(e).length}function tq(e,t){return e+" ".repeat(Math.max(0,t-vk(e)))}function Tn(e,t,r=30){let n=e.map((s,i)=>{let c=Math.max(s.length,...t.map((u)=>vk(u[i]??"")))+5;return i===0?Math.max(r,c):c}),o=(s)=>s.map((i,a)=>a===s.length-1?i:tq(i,n[a]??0)).join("").trimEnd();return[o(e),...t.map(o)].join(`
|
|
269
|
+
`)}function On(e,t=Js){return Ue([["error",e]],{...t,label:t.bad})}function Sk(e,t=Js){return Ue([["warn",e]],t)}function xk(e){let t=e.replace(/[\s-]/g,"").toUpperCase();return t.length===8?`${t.slice(0,4)}-${t.slice(4)}`:e}function vf(e){return e.map((t)=>XS.find((r)=>r.kind===t)?.name.toLowerCase()??t)}function vc(e,t){return e?t.good("on"):"off"}function yk(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return`${t.toISOString().slice(0,16).replace("T"," ")} UTC`}function bk(e){return e.slice(e.lastIndexOf("/")+1)}var rq=b({user:b({name:p().nullish(),email:p().nullish()}).nullish(),access:b({approved:D(),requestAccessUrl:p().optional()}),orgs:k(b({slug:p(),role:p(),agentAllowed:D().optional()}))}),nq={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>"},oq=b({org:p(),role:p().optional(),nextStep:p(),installUrl:p().optional(),home:p().optional()}),sq=k(b({name:p(),gateOn:D(),toReview:P(),blocked24h:P()})),iq=k(b({ruleId:p(),name:p(),optIn:D().optional()})),aq=k(b({ruleId:p(),enabled:D(),management:p().nullish(),cannotRun:p().nullish(),matches24h:P().nullish()})),cq=k(b({id:p(),name:p(),enabled:D(),runnable:D().optional(),canTurnOn:D().optional(),triggerKinds:k(p()).optional()}));function uq(e,t){let r=ak({enabled:e.enabled,runnable:e.runnable??!0,canTurnOn:e.canTurnOn??!0}),n=mc[r].toLowerCase();if(r==="on")return t.good(n);if(r==="cant-run"||r==="needs-fixes")return t.bad(n);return n}var lq=b({enabled:D(),url:p().optional(),warnings:k(b({message:p()})).optional()}),dq=k(b({id:p(),repo:p().optional(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p()})),pq=b({id:p(),repo:p(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p(),steps:k(b({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()}),fq=b({items:k(b({itemId:p(),repo:p().optional(),number:P().nullish(),actor:p().nullish(),title:p().nullish()})),url:p().optional()}),mq=b({done:D(),alreadyDecided:D().optional(),confirmUrl:p().optional(),forUser:p().optional(),decision:z(["approve","remove","ban"]).optional(),itemId:p().optional(),repo:p().optional(),number:P().nullish()}),hq=[["approve","let the change request through"],["remove","block it"],["ban","get a link where a person bans the contributor"]];function kk(e){let t=hq.map(([r,n])=>`${r} to ${n}`);return`${e} is not a choice. Use ${t.slice(0,-1).join(", ")}, or ${t.at(-1)}.`}var gq={approve:"Approved",remove:"Blocked"};function yq(e){let t=e.number?`#${e.number}`:e.itemId;if(!t)return"";return e.repo?` ${t} on ${e.repo}`:` ${t}`}function bq(e){if(!e.step)return e.rule??e.kind;return e.stepId?`${e.step} (${e.stepId})`:e.step}var wq=b({ruleId:p(),enabled:D()}),_q=b({repo:p(),url:p().optional()});function wk(e,t){let r=e.result??e.verdict,n=e.verdictLabel??Nx(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 wt(e,t){return(r,n)=>{let o=e.safeParse(r);return o.success?t(o.data,n):null}}var vq={whoami:wt(rq,(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 Ue(o,t)}),setup_status:wt(oq,(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(nq[e.nextStep]??e.nextStep)]);if(e.installUrl)r.push(["open",e.installUrl]);return Ue(r,t)}),list_repos:wt(sq,(e,t)=>{if(e.length===0)return"No repos yet. Run tripwire status to see the next step.";return Tn(["REPO","GATE","TO REVIEW","BLOCKED 24H"],e.map((r)=>[r.name,vc(r.gateOn,t),String(r.toReview),String(r.blocked24h)]))}),list_rule_catalog:wt(iq,(e)=>Tn(["RULE","NAME","OPT-IN"],e.map((t)=>[t.ruleId,t.name,t.optIn?"yes":"no"]))),get_repo_rules:wt(aq,(e,t)=>{if(e.length===0)return"No rules on this repo.";return Tn(["RULE","STATE","MATCHES 24H","NOTE"],e.map((r)=>[r.ruleId,vc(r.enabled,t),String(r.matches24h??0),r.cannotRun??(r.management==="managed"?"set by a workflow":"")]))}),set_rule:wt(wq,(e,t)=>Ue([["done",`${e.ruleId} is ${vc(e.enabled,t)}`]],t)),turn_on_gate:wt(_q,(e,t)=>{let r=[["done",`Gate is ${t.good("on")} for ${e.repo}`]];if(e.url)r.push(["open",e.url]);return Ue(r,t)}),list_workflows:wt(cq,(e,t)=>{if(e.length===0)return"No workflows on this repo.";return Tn(["WORKFLOW","ID","STATE","TRIGGERS"],e.map((r)=>[r.name,r.id,uq(r,t),vf(r.triggerKinds??[]).join(", ")]))}),set_workflow_enabled:wt(lq,(e,t)=>{let r=[["done",`Workflow is ${vc(e.enabled,t)}`]];for(let n of e.warnings??[])r.push(["warning",n.message]);if(e.url)r.push(["open",e.url]);return Ue(r,t)}),list_runs:wt(dq,(e,t)=>{if(e.length===0)return"No runs yet.";return Tn(["RUN","REPO","PR","STATUS","VERDICT","CREATED"],e.map((r)=>[r.id,r.repo?bk(r.repo):"-",r.number?`#${r.number}`:"-",r.status,wk(r,t),yk(r.createdAt)]))}),get_run:wt(pq,(e,t)=>{let r=[["run",e.id],["repo",e.number?`${e.repo} #${e.number}`:e.repo],["status",e.status],["verdict",wk(e,t)],["created",yk(e.createdAt)]];if(e.url)r.push(["open",e.url]);let n=Ue(r,t);if(e.steps.length===0)return n;let o=Tn(["WORKFLOW","STEP","OUTCOME","SUMMARY"],e.steps.map((s)=>{let i=s.outcome??s.status;return[s.workflow??"-",bq(s),s.status==="fail"?t.bad(i):i,s.summary??""]}),0);return`${n}
|
|
270
|
+
|
|
271
|
+
${o}`}),list_moderation_queue:wt(fq,(e)=>{if(e.items.length===0)return"Nothing to review.";return Tn(["ITEM","REPO","PR","AUTHOR","TITLE"],e.items.map((t)=>[t.itemId,t.repo?bk(t.repo):"-",t.number?`#${t.number}`:"-",t.actor??"-",t.title??""]))}),decide_moderation:wt(mq,(e,t)=>{if(e.confirmUrl)return Ue([["open",e.confirmUrl],["",e.forUser??"Open this link to confirm."]],t);let r=yq(e);if(!e.done)return Ue([["done",`${r.trim()||"This item"} was already decided`]],t);let n=e.decision==="approve"||e.decision==="remove"?gq[e.decision]:"Decided";return Ue([["done",t.good(`${n}${r}`)]],t)})};function $k(e,t,r=Js){let n=vq[e];if(!(n&&t!==null))return null;return n(t,r)}var Sq={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."},xq=b({error:p(),hint:p().optional(),org:p().optional()});function kq(e,t){if(e==="list_repos"&&t)return`Run tripwire repos --org ${t} to see them.`;return e?Sq[e]:void 0}var $q=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","an object"]]);function Eq(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 ${$q.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 Tq(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(Eq(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 Sf(e,t=null){let r=xq.safeParse(t);if(r.success){let i=kq(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 Tq(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 Pf,stdin as Uk}from"node:process";import*as Mr from"node:readline";import Wq from"node:readline";var Ek=(()=>{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}})(),Tk=(e)=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Ok=(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 Oq=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Pq=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Pk=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,Aq=/\t{1,1000}/y,Ak=/[\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,Iq=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Rq=/\p{M}+/gu,Cq={limit:1/0,ellipsis:""},Ik=(e,t={},r={})=>{let n=t.limit??1/0,o=t.ellipsis??"",s=t?.ellipsisWidth??(o?Ik(o,Cq,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=[[Iq,d],[Oq,0],[Pq,a],[Aq,c],[Ak,u],[Pk,f]],h=0,g=0,y=e.length,_=0,T=!1,x=y,A=Math.max(0,n-s),w=0,v=0,S=0,I=0;e:while(!0){if(v>w||g>=y&&g>h){let j=e.slice(w,v)||e.slice(h,g);_=0;for(let G of j.replaceAll(Rq,"")){let se=G.codePointAt(0)||0;if(Tk(se))I=2;else if(Ok(se))I=f;else I=d;if(S+I>A)x=Math.min(x,Math.max(w,h)+_);if(S+I>n){T=!0;break e}_+=G.length,S+=I}w=v=0}if(g>=y)break e;for(let j=0,G=m.length;j<G;j++){let[se,ie]=m[j];if(se.lastIndex=g,se.test(e)){if(_=se===Pk?Ek(e.slice(g,se.lastIndex)):se===Ak?1:se.lastIndex-g,I=_*ie,S+I>A)x=Math.min(x,g+Math.floor((A-S)/ie));if(S+I>n){T=!0;break e}S+=I,w=h,v=g,g=h=se.lastIndex;continue e}}g+=1}return{width:T?A:S,index:T?x:y,truncated:T,ellipsed:T&&n>=s}},Rk=Ik;var zq={limit:1/0,ellipsis:"",ellipsisWidth:0},Nq=(e,t={})=>Rk(e,zq,t).width,Yt=Nq;var Sc="\x1B",jk="",Lq=39,kf="\x07",Dk="[",jq="]",Mk="m",$f=`${jq}8;;`,Ck=new RegExp(`(?:\\${Dk}(?<code>\\d+)m|\\${$f}(?<uri>.*)${kf})`,"y"),zk=(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},Nk=(e)=>`${Sc}${Dk}${e}${Mk}`,Lk=(e)=>`${Sc}${$f}${e}${kf}`,xf=(e,t,r)=>{let n=t[Symbol.iterator](),o=!1,s=!1,i=e.at(-1),a=i===void 0?0:Yt(i),c=n.next(),u=n.next(),l=0;while(!c.done){let d=c.value,f=Yt(d);if(a+f<=r)e[e.length-1]+=d;else e.push(d),a=0;if(d===Sc||d===jk)o=!0,s=t.startsWith($f,l+1);if(o){if(s){if(d===kf)o=!1,s=!1}else if(d===Mk)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()},Dq=(e)=>{let t=e.split(" "),r=t.length;while(r){if(Yt(t[r-1]))break;r--}if(r===t.length)return e;return t.slice(0,r).join(" ")+t.slice(r).join("")},Mq=(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=Yt(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=Yt(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("");xf(a,f,t),c=Yt(a.at(-1)??"");continue}if(c+m>t&&c&&m){if(r.wordWrap===!1&&c<t){xf(a,f,t),c=Yt(a.at(-1)??"");continue}a.push(""),c=0}if(c+m>t&&r.wordWrap===!1){xf(a,f,t),c=Yt(a.at(-1)??"");continue}a[a.length-1]+=f,c+=m}if(r.trim!==!1)a=a.map((d)=>Dq(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===Sc||f===jk){Ck.lastIndex=d+1;let h=Ck.exec(u)?.groups;if(h?.code!==void 0){let g=Number.parseFloat(h.code);o=g===Lq?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+=Lk("");let m=o?zk(o):void 0;if(o&&m)n+=Nk(m)}else if(f===`
|
|
275
|
+
`){if(o&&zk(o))n+=Nk(o);if(s)n+=Lk(s)}}return n},qq=/\r?\n/;function Dr(e,t,r){return String(e).normalize().split(qq).map((n)=>Mq(n,t,r)).join(`
|
|
276
|
+
`)}var Qe=vn(Tf(),1);import{ReadStream as Fk}from"node:tty";function kc(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?kc(s,t<0?-1:1,r):s}var Vq=["up","down","left","right","space","enter","cancel"],Zq=["January","February","March","April","May","June","July","August","September","October","November","December"],rt={actions:new Set(Vq),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:[...Zq],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 Af(e,t){if(typeof e=="string")return rt.aliases.get(e)===t;for(let r of e)if(r!==void 0&&Af(r,t))return!0;return!1}function Bq(e,t){if(e===t)return;let r=e.split(`
|
|
238
277
|
`),n=t.split(`
|
|
239
|
-
`),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 Hq=globalThis.process.platform.startsWith("win"),Of=Symbol("clack:cancel");function ho(e){return e===Of}function xc(e,t){let r=e;r.isTTY&&r.setRawMode(t)}function Wk({input:e=Uk,output:t=Pf,overwrite:r=!0,hideCursor:n=!0}={}){let o=Mr.createInterface({input:e,output:t,prompt:"",tabSize:1});Mr.emitKeypressEvents(e,o),e instanceof Fk&&e.isTTY&&e.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(Af([u,a,c],"cancel")){n&&t.write(Qe.cursor.show),process.exit(0);return}if(!r)return;Mr.moveCursor(t,a==="return"?0:-1,a==="return"?-1:0,()=>{Mr.clearLine(t,1,()=>{e.once("keypress",s)})})};return n&&t.write(Qe.cursor.hide),e.once("keypress",s),()=>{e.off("keypress",s),n&&t.write(Qe.cursor.show),e instanceof Fk&&e.isTTY&&!Hq&&e.setRawMode(!1),o.terminal=!1,o.close()}}var $c=(e)=>("columns"in e)&&typeof e.columns=="number"?e.columns:80,If=(e)=>("rows"in e)&&typeof e.rows=="number"?e.rows:20;function Xs(e,t,r,n=r,o=r,s){let i=$c(e??Pf);return Dr(t,i-r.length,{hard:!0,trim:!1}).split(`
|
|
240
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(`
|
|
241
|
-
`)}function
|
|
242
|
-
`),
|
|
243
|
-
`).length-1;this.output.write(
|
|
244
|
-
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(
|
|
280
|
+
`)}function Vk(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 Rf{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=Uk,output:n=Pf,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(Of);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=Wq.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),xc(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(Qe.cursor.show),this.output.off("resize",this.render),xc(this.input,!1),e(this.value)}),this.once("cancel",()=>{this.output.write(Qe.cursor.show),this.output.off("resize",this.render),xc(this.input,!1),e(Of)})})}_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&&rt.aliases.has(t.name)&&this.emit("cursor",rt.aliases.get(t.name)),rt.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=Vk(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")}Af([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
|
+
`),xc(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let e=Dr(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
|
|
282
|
+
`).length-1;this.output.write(Qe.cursor.move(-999,e*-1))}render(){let e=Dr(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(e!==this._prevFrame){if(this.state==="initial")this.output.write(Qe.cursor.hide);else{let t=Bq(this._prevFrame,e),r=If(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(Qe.cursor.move(0,s-o)),this.output.write(Qe.erase.lines(1));let i=e.split(`
|
|
283
|
+
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(Qe.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(Qe.cursor.move(0,a))}this.output.write(Qe.erase.down());let i=e.split(`
|
|
245
284
|
`).slice(s);this.output.write(i.join(`
|
|
246
|
-
`)),this._prevFrame=e;return}}this.output.write(
|
|
247
|
-
`);y.push(
|
|
285
|
+
`)),this._prevFrame=e;return}}this.output.write(Qe.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}}class Cf extends Rf{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(Qe.cursor.move(0,-1)),this.value=t,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}class zf extends Rf{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?kc(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=kc(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=kc(this.cursor,1,this.options);break;case"space":this.toggleValue();break}})}}import{styleText as N,stripVTControlCharacters as sue}from"node:util";import qt from"node:process";var ei=vn(Tf(),1);function Kq(){if(qt.platform!=="win32")return qt.env.TERM!=="linux";return Boolean(qt.env.CI)||Boolean(qt.env.WT_SESSION)||Boolean(qt.env.TERMINUS_SUBLIME)||qt.env.ConEmuTask==="{cmd::Cmder}"||qt.env.TERM_PROGRAM==="Terminus-Sublime"||qt.env.TERM_PROGRAM==="vscode"||qt.env.TERM==="xterm-256color"||qt.env.TERM==="alacritty"||qt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Nf=Kq(),Gq=()=>process.env.CI==="true";var ge=(e,t)=>Nf?e:t,Jq=ge("◆","*"),Yk=ge("■","x"),Xk=ge("▲","x"),Lf=ge("◇","o"),Yq=ge("┌","T"),xe=ge("│","|"),go=ge("└","—"),uue=ge("┐","T"),lue=ge("┘","—"),Zk=ge("●",">"),Bk=ge("○"," "),Xq=ge("◻","[•]"),Hk=ge("◼","[+]"),Kk=ge("◻","[ ]"),due=ge("▪","•"),pue=ge("─","-"),fue=ge("╮","+"),mue=ge("├","+"),hue=ge("╯","+"),gue=ge("╰","+"),yue=ge("╭","+"),Qq=ge("●","•"),e2=ge("◆","*"),t2=ge("▲","!"),r2=ge("■","x"),Qk=(e)=>{switch(e){case"initial":case"active":return N("cyan",Jq);case"cancel":return N("red",Yk);case"error":return N("yellow",Xk);case"submit":return N("green",Lf)}},n2=(e)=>{switch(e){case"initial":case"active":return N("cyan",xe);case"cancel":return N("red",xe);case"error":return N("yellow",xe);case"submit":return N("green",xe)}};function o2(e,t){let r=[`${t?`${N("cyan",xe)} `:""}${e.join(" • ")}`];return t&&r.push(N("cyan",go)),r}var Gk=(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}},Jk=({cursor:e,options:t,style:r,output:n=process.stdout,maxItems:o=Number.POSITIVE_INFINITY,columnPadding:s=0,rowPadding:i=4})=>{let a=$c(n)-s,c=If(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=[],_=0;m&&_++,h&&_++;let T=f+(m?1:0),x=g-(h?1:0);for(let w=T;w<x;w++){let v=t[w],S=v?r(v,w===e):"",I=Dr(S,a,{hard:!0,trim:!1}).split(`
|
|
286
|
+
`);y.push(I),_+=I.length}if(_>l){let w=0,v=0,S=_,I=e-T,j=l,G=()=>Gk(y,S,0,I,j),se=()=>Gk(y,S,I+1,y.length,j,!0);m?({lineCount:S,removals:w}=G(),S>j&&(h||(j-=1),{lineCount:S,removals:v}=se())):(h||(j-=1),{lineCount:S,removals:v}=se(),S>j&&(j-=1,{lineCount:S,removals:w}=G())),w>0&&(m=!0,y.splice(0,w)),v>0&&(h=!0,y.splice(y.length-v,v))}let A=[];m&&A.push(u);for(let w of y)for(let v of w)A.push(v);return h&&A.push(u),A};var e0=(e)=>{let t=e.active??"Yes",r=e.inactive??"No";return new Cf({active:t,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){let n=e.withGuide??rt.withGuide,o=`${Qk(this.state)} `,s=n?`${N("gray",xe)} `:"",i=Xs(e.output,e.message,s,o),a=`${n?`${N("gray",xe)}
|
|
248
287
|
`:""}${i}
|
|
249
|
-
`,c=this.value?t:r;switch(this.state){case"submit":{let u=n?`${
|
|
250
|
-
${
|
|
251
|
-
${
|
|
252
|
-
`:` ${
|
|
288
|
+
`,c=this.value?t:r;switch(this.state){case"submit":{let u=n?`${N("gray",xe)} `:"";return`${a}${u}${N("dim",c)}`}case"cancel":{let u=n?`${N("gray",xe)} `:"";return`${a}${u}${N(["strikethrough","dim"],c)}${n?`
|
|
289
|
+
${N("gray",xe)}`:""}`}default:{let u=n?`${N("cyan",xe)} `:"",l=n?N("cyan",go):"";return`${a}${u}${this.value?`${N("green",Zk)} ${t}`:`${N("dim",Bk)} ${N("dim",t)}`}${e.vertical?n?`
|
|
290
|
+
${N("cyan",xe)} `:`
|
|
291
|
+
`:` ${N("dim","/")} `}${this.value?`${N("dim",Bk)} ${N("dim",r)}`:`${N("green",Zk)} ${r}`}
|
|
253
292
|
${l}
|
|
254
|
-
`}}}}).prompt()};var
|
|
293
|
+
`}}}}).prompt()};var s2=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Space:")} select`,`${N("dim","Enter:")} confirm`],Qs=(e,t)=>e.split(`
|
|
255
294
|
`).map((r)=>t(r)).join(`
|
|
256
|
-
`),
|
|
257
|
-
${
|
|
295
|
+
`),jf=(e)=>{let t=(o,s)=>{let i=o.label??String(o.value);return s==="disabled"?`${N("gray",Kk)} ${Qs(i,(a)=>N(["strikethrough","gray"],a))}${o.hint?` ${N("dim",`(${o.hint??"disabled"})`)}`:""}`:s==="active"?`${N("cyan",Xq)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="selected"?`${N("green",Hk)} ${Qs(i,(a)=>N("dim",a))}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="cancelled"?`${Qs(i,(a)=>N(["strikethrough","dim"],a))}`:s==="active-selected"?`${N("green",Hk)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="submitted"?`${Qs(i,(a)=>N("dim",a))}`:`${N("dim",Kk)} ${Qs(i,(a)=>N("dim",a))}`},r=e.required??!0,n=e.showInstructions??!0;return new zf({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??rt.withGuide,s=Xs(e.output,e.message,o?`${n2(this.state)} `:"",`${Qk(this.state)} `),i=`${o?`${N("gray",xe)}
|
|
258
297
|
`:""}${s}
|
|
259
|
-
`,a=this.value??[],c=(u,l)=>{if(u.disabled)return t(u,"disabled");let
|
|
260
|
-
${
|
|
261
|
-
`).map((m,h)=>h===0?`${o?`${
|
|
262
|
-
`),
|
|
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=Xs(e.output,u,o?`${N("gray",xe)} `:"");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",xe)}`;let l=Xs(e.output,u,o?`${N("gray",xe)} `:"");return`${i}${l}${o?`
|
|
299
|
+
${N("gray",xe)}`:""}`}case"error":{let u=o?`${N("yellow",xe)} `:"",l=this.error.split(`
|
|
300
|
+
`).map((m,h)=>h===0?`${o?`${N("yellow",go)} `:""}${N("yellow",m)}`:` ${m}`).join(`
|
|
301
|
+
`),d=i.split(`
|
|
263
302
|
`).length,f=l.split(`
|
|
264
|
-
`).length+1;return`${i}${u}${
|
|
303
|
+
`).length+1;return`${i}${u}${Jk({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:d+f,style:c}).join(`
|
|
265
304
|
${u}`)}
|
|
266
305
|
${l}
|
|
267
|
-
`}default:{let u=o?`${
|
|
268
|
-
`).length,
|
|
269
|
-
`),m=
|
|
306
|
+
`}default:{let u=o?`${N("cyan",xe)} `:"",l=i.split(`
|
|
307
|
+
`).length,d=n?o2(s2,o):o?[N("cyan",go)]:[],f=d.join(`
|
|
308
|
+
`),m=d.length+1;return`${i}${u}${Jk({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:l+m,style:c}).join(`
|
|
270
309
|
${u}`)}
|
|
271
310
|
${f}
|
|
272
|
-
`}}}}).prompt()};var
|
|
273
|
-
`);if(
|
|
311
|
+
`}}}}).prompt()};var Re={message:(e=[],{symbol:t=N("gray",xe),secondarySymbol:r=N("gray",xe),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??rt.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
|
+
`);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(`
|
|
274
313
|
`)}
|
|
275
|
-
`)},info:(e,t)=>{
|
|
276
|
-
|
|
277
|
-
`)},
|
|
278
|
-
`)},
|
|
279
|
-
${
|
|
280
|
-
|
|
281
|
-
`)};var
|
|
282
|
-
`);let
|
|
283
|
-
`);
|
|
284
|
-
`);let
|
|
285
|
-
`):r.write(`${
|
|
286
|
-
`)),S(),l()};return{start:
|
|
287
|
-
`;break;case 114:x+="\r";break;case 116:x+="\t";break;case 117:let S=f(4,!0);if(S>=0)x+=String.fromCharCode(S);else
|
|
288
|
-
`;return a++,u=n,i=14}switch(x){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
|
|
314
|
+
`)},info:(e,t)=>{Re.message(e,{...t,symbol:N("blue",Qq)})},success:(e,t)=>{Re.message(e,{...t,symbol:N("green",e2)})},step:(e,t)=>{Re.message(e,{...t,symbol:N("green",Lf)})},warn:(e,t)=>{Re.message(e,{...t,symbol:N("yellow",t2)})},warning:(e,t)=>{Re.warn(e,t)},error:(e,t)=>{Re.message(e,{...t,symbol:N("red",r2)})}},Ec=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??rt.withGuide?`${N("gray",go)} `:"";r.write(`${n}${N("red",e)}
|
|
315
|
+
|
|
316
|
+
`)},t0=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??rt.withGuide?`${N("gray",Yq)} `:"";r.write(`${n}${e}
|
|
317
|
+
`)},ti=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??rt.withGuide?`${N("gray",xe)}
|
|
318
|
+
${N("gray",go)} `:"";r.write(`${n}${e}
|
|
319
|
+
|
|
320
|
+
`)};var i2=(e)=>N("magenta",e),r0=({indicator:e="dots",onCancel:t,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=Nf?["◒","◐","◓","◑"]:["•","o","O","0"],delay:i=Nf?80:120,signal:a,...c}={})=>{let u=Gq(),l,d,f=!1,m=!1,h="",g,y=performance.now(),_=$c(r),T=c?.styleFrame??i2,x=(W)=>{let ne=W>1?o??rt.messages.error:n??rt.messages.cancel;m=W===1,f&&(Le(ne,W),m&&typeof t=="function"&&t())},A=()=>x(2),w=()=>x(1),v=()=>{process.on("uncaughtExceptionMonitor",A),process.on("unhandledRejection",A),process.on("SIGINT",w),process.on("SIGTERM",w),process.on("exit",x),a&&a.addEventListener("abort",w)},S=()=>{process.removeListener("uncaughtExceptionMonitor",A),process.removeListener("unhandledRejection",A),process.removeListener("SIGINT",w),process.removeListener("SIGTERM",w),process.removeListener("exit",x),a&&a.removeEventListener("abort",w)},I=()=>{if(g===void 0)return;u&&r.write(`
|
|
321
|
+
`);let W=Dr(g,_,{hard:!0,trim:!1}).split(`
|
|
322
|
+
`);W.length>1&&r.write(ei.cursor.up(W.length-1)),r.write(ei.cursor.to(0)),r.write(ei.erase.down())},j=(W)=>W.replace(/\.+$/,""),G=(W)=>{let ne=(performance.now()-W)/1000,kt=Math.floor(ne/60),st=Math.floor(ne%60);return kt>0?`[${kt}m ${st}s]`:`[${st}s]`},se=c.withGuide??rt.withGuide,ie=(W="")=>{f=!0,l=Wk({output:r}),h=j(W),y=performance.now(),se&&r.write(`${N("gray",xe)}
|
|
323
|
+
`);let ne=0,kt=0;v(),d=setInterval(()=>{if(u&&h===g)return;I(),g=h;let st=T(s[ne]),sa;if(u)sa=`${st} ${h}...`;else if(e==="timer")sa=`${st} ${h} ${G(y)}`;else{let XC=".".repeat(Math.floor(kt)).slice(0,3);sa=`${st} ${h}${XC}`}let YC=Dr(sa,_,{hard:!0,trim:!1});r.write(YC),ne=ne+1<s.length?ne+1:0,kt=kt<4?kt+0.125:0},i)},Le=(W="",ne=0,kt=!1)=>{if(!f)return;f=!1,clearInterval(d),I();let st=ne===0?N("green",Lf):ne===1?N("red",Yk):N("red",Xk);h=W??h,kt||(e==="timer"?r.write(`${st} ${h} ${G(y)}
|
|
324
|
+
`):r.write(`${st} ${h}
|
|
325
|
+
`)),S(),l()};return{start:ie,stop:(W="")=>Le(W,0),message:(W="")=>{h=j(W??h)},cancel:(W="")=>Le(W,1),error:(W="")=>Le(W,2),clear:()=>Le("",0,!0),get isCancelled(){return m}}},bue={light:ge("─","-"),heavy:ge("━","="),block:ge("█","#")};var wue=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Enter:")} confirm`];var _ue=`${N("gray",xe)} `;var vt=vn(_c(),1);import{join as k2}from"node:path";import{readFileSync as S2}from"node:fs";import{join as wo}from"node:path";import{mkdirSync as m2,readFileSync as h2,renameSync as g2,writeFileSync as y2}from"node:fs";import{dirname as b2}from"node:path";function ni(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(x,A){let w=0,v=0;while(w<x||!A){let S=e.charCodeAt(n);if(S>=48&&S<=57)v=v*16+S-48;else if(S>=65&&S<=70)v=v*16+S-65+10;else if(S>=97&&S<=102)v=v*16+S-97+10;else break;n++,w++}if(w<x)v=-1;return v}function m(x){n=x,o="",s=0,i=16,d=0}function h(){let x=n;if(e.charCodeAt(n)===48)n++;else{n++;while(n<e.length&&yo(e.charCodeAt(n)))n++}if(n<e.length&&e.charCodeAt(n)===46)if(n++,n<e.length&&yo(e.charCodeAt(n))){n++;while(n<e.length&&yo(e.charCodeAt(n)))n++}else return d=3,e.substring(x,n);let A=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&&yo(e.charCodeAt(n))){n++;while(n<e.length&&yo(e.charCodeAt(n)))n++;A=n}else d=3}return e.substring(x,A)}function g(){let x="",A=n;while(!0){if(n>=r){x+=e.substring(A,n),d=2;break}let w=e.charCodeAt(n);if(w===34){x+=e.substring(A,n),n++;break}if(w===92){if(x+=e.substring(A,n),n++,n>=r){d=2;break}switch(e.charCodeAt(n++)){case 34:x+='"';break;case 92:x+="\\";break;case 47:x+="/";break;case 98:x+="\b";break;case 102:x+="\f";break;case 110:x+=`
|
|
326
|
+
`;break;case 114:x+="\r";break;case 116:x+="\t";break;case 117:let S=f(4,!0);if(S>=0)x+=String.fromCharCode(S);else d=4;break;default:d=5}A=n;continue}if(w>=0&&w<=31)if(ri(w)){x+=e.substring(A,n),d=2;break}else d=6;n++}return x}function y(){if(o="",d=0,s=n,c=a,l=u,n>=r)return s=r,i=17;let x=e.charCodeAt(n);if(Df(x)){do n++,o+=String.fromCharCode(x),x=e.charCodeAt(n);while(Df(x));return i=15}if(ri(x)){if(n++,o+=String.fromCharCode(x),x===13&&e.charCodeAt(n)===10)n++,o+=`
|
|
327
|
+
`;return a++,u=n,i=14}switch(x){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 A=n-1;if(e.charCodeAt(n+1)===47){n+=2;while(n<r){if(ri(e.charCodeAt(n)))break;n++}return o=e.substring(A,n),i=12}if(e.charCodeAt(n+1)===42){n+=2;let w=r-1,v=!1;while(n<w){let S=e.charCodeAt(n);if(S===42&&e.charCodeAt(n+1)===47){n+=2,v=!0;break}if(n++,ri(S)){if(S===13&&e.charCodeAt(n)===10)n++;a++,u=n}}if(!v)n++,d=1;return o=e.substring(A,n),i=13}return o+=String.fromCharCode(x),n++,i=16;case 45:if(o+=String.fromCharCode(x),n++,n===r||!yo(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&&_(x))n++,x=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(x),n++,i=16}}function _(x){if(Df(x)||ri(x))return!1;switch(x){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function T(){let x;do x=y();while(x>=12&&x<=15);return x}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 Df(e){return e===32||e===9}function ri(e){return e===10||e===13}function yo(e){return e>=48&&e<=57}var o0;(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"})(o0||(o0={}));var _t=Array(20).fill(0).map((e,t)=>" ".repeat(t));var Mf={" ":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
289
328
|
`+" ".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>`\r
|
|
290
329
|
`+" ".repeat(t))},"\t":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
291
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
|
|
292
|
-
`+"\t".repeat(t))}},
|
|
331
|
+
`+"\t".repeat(t))}},s0=[`
|
|
293
332
|
`,"\r",`\r
|
|
294
|
-
`];function
|
|
333
|
+
`];function qf(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 w=a;while(w<e.length&&!oi(e,w))w++;o=e.substring(s,w),n=c2(o,r)}else o=e,n=0,s=0,i=0,a=e.length;let c=u2(r,e),u=s0.includes(c),l=0,d=0,f;if(r.insertSpaces)f=_t[r.tabSize||4]??bo(_t[1],r.tabSize||4);else f="\t";let m=f==="\t"?"\t":" ",h=ni(o,!1),g=!1;function y(){if(l>1)return bo(c,l)+bo(f,n+d);let w=f.length*(n+d);if(!u||w>Mf[m][c].length)return c+bo(f,n+d);if(w<=0)return c;return Mf[m][c][w]}function _(){let w=h.scan();l=0;while(w===15||w===14){if(w===14&&r.keepLines)l+=1;else if(w===14)l=1;w=h.scan()}return g=w===16||h.getTokenError()!==0,w}let T=[];function x(w,v,S){if(!g&&(!t||v<a&&S>i)&&e.substring(v,S)!==w)T.push({offset:v,length:S-v,content:w})}let A=_();if(r.keepLines&&l>0)x(bo(c,l),0,0);if(A!==17){let w=h.getTokenOffset()+s,v=f.length*n<20&&r.insertSpaces?_t[f.length*n]:bo(f,n);x(v,s,w)}while(A!==17){let w=h.getTokenOffset()+h.getTokenLength()+s,v=_(),S="",I=!1;while(l===0&&(v===12||v===13)){let G=h.getTokenOffset()+s;x(_t[1],w,G),w=h.getTokenOffset()+h.getTokenLength()+s,I=v===12,S=I?y():"",v=_()}if(v===2){if(A!==1)d--;if(r.keepLines&&l>0||!r.keepLines&&A!==1)S=y();else if(r.keepLines)S=_t[1]}else if(v===4){if(A!==3)d--;if(r.keepLines&&l>0||!r.keepLines&&A!==3)S=y();else if(r.keepLines)S=_t[1]}else{switch(A){case 3:case 1:if(d++,r.keepLines&&l>0||!r.keepLines)S=y();else S=_t[1];break;case 5:if(r.keepLines&&l>0||!r.keepLines)S=y();else S=_t[1];break;case 12:S=y();break;case 13:if(l>0)S=y();else if(!I)S=_t[1];break;case 6:if(r.keepLines&&l>0)S=y();else if(!I)S=_t[1];break;case 10:if(r.keepLines&&l>0)S=y();else if(v===6&&!I)S="";break;case 7:case 8:case 9:case 11:case 2:case 4:if(r.keepLines&&l>0)S=y();else if((v===12||v===13)&&!I)S=_t[1];else if(v!==5&&v!==17)g=!0;break;case 16:g=!0;break}if(l>0&&(v===12||v===13))S=y()}if(v===17)if(r.keepLines&&l>0)S=y();else S=r.insertFinalNewline?c:"";let j=h.getTokenOffset()+s;x(S,w,j),A=v}return T}function bo(e,t){let r="";for(let n=0;n<t;n++)r+=e;return r}function c2(e,t){let r=0,n=0,o=t.tabSize||4;while(r<e.length){let s=e.charAt(r);if(s===_t[1])n++;else if(s==="\t")n+=o;else break;r++}return Math.floor(n/o)}function u2(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)===`
|
|
295
334
|
`)return`\r
|
|
296
335
|
`;return"\r"}else if(n===`
|
|
297
336
|
`)return`
|
|
298
337
|
`}return e&&e.eol||`
|
|
299
|
-
`}function
|
|
300
|
-
`.indexOf(e.charAt(t))!==-1}var _s;(function(e){e.DEFAULT={allowTrailingComma:!1}})(_s||(_s={}));function xv(e,t=[],r=_s.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return Op(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 Ip(e,t=[],r=_s.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}Op(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:qR(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 ya(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 Op(e,t,r=_s.DEFAULT){let n=ys(e,!1),o=[],s=0;function i(V){return V?()=>s===0&&V(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(V){return V?(te)=>s===0&&V(te,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(V){return V?(te)=>s===0&&V(te,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice()):()=>!0}function u(V){return V?()=>{if(s>0)s++;else if(V(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice())===!1)s=1}:()=>!0}function l(V){return V?()=>{if(s>0)s--;if(s===0)V(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter())}:()=>!0}let p=u(t.onObjectBegin),f=c(t.onObjectProperty),m=l(t.onObjectEnd),h=u(t.onArrayBegin),g=l(t.onArrayEnd),y=c(t.onLiteralValue),w=a(t.onSeparator),E=i(t.onComment),x=a(t.onError),I=r&&r.disallowComments,b=r&&r.allowTrailingComma;function v(){while(!0){let V=n.scan();switch(n.getTokenError()){case 4:S(14);break;case 5:S(15);break;case 3:S(13);break;case 1:if(!I)S(11);break;case 2:S(12);break;case 6:S(16);break}switch(V){case 12:case 13:if(I)S(10);else E();break;case 16:S(1);break;case 15:case 14:break;default:return V}}}function S(V,te=[],gt=[]){if(x(V),te.length+gt.length>0){let Qe=n.getToken();while(Qe!==17){if(te.indexOf(Qe)!==-1){v();break}else if(gt.indexOf(Qe)!==-1)break;Qe=v()}}}function O(V){let te=n.getTokenValue();if(V)y(te);else f(te),o.push(te);return v(),!0}function L(){switch(n.getToken()){case 11:let V=n.getTokenValue(),te=Number(V);if(isNaN(te))S(2),te=0;y(te);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return v(),!0}function G(){if(n.getToken()!==10)return S(3,[],[2,5]),!1;if(O(!1),n.getToken()===6){if(w(":"),v(),!Ne())S(4,[],[2,5])}else S(5,[],[2,5]);return o.pop(),!0}function re(){p(),v();let V=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!V)S(4,[],[]);if(w(","),v(),n.getToken()===2&&b)break}else if(V)S(6,[],[]);if(!G())S(4,[],[2,5]);V=!0}if(m(),n.getToken()!==2)S(7,[2],[]);else v();return!0}function ne(){h(),v();let V=!0,te=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!te)S(4,[],[]);if(w(","),v(),n.getToken()===4&&b)break}else if(te)S(6,[],[]);if(V)o.push(0),V=!1;else o[o.length-1]++;if(!Ne())S(4,[],[4,5]);te=!0}if(g(),!V)o.pop();if(n.getToken()!==4)S(8,[4],[]);else v();return!0}function Ne(){switch(n.getToken()){case 3:return ne();case 1:return re();case 10:return O(!0);default:return L()}}if(v(),n.getToken()===17){if(r.allowEmptyContent)return!0;return S(4,[],[]),!1}if(!Ne())return S(4,[],[]),!1;if(n.getToken()!==17)S(9,[],[]);return!0}function qR(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 $v(e,t,r,n){let o=t.slice(),i=Ip(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=ya(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 dn(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=ya(a,[c]);if(u!==void 0)if(r===void 0){if(!u.parent)throw Error("Malformed AST");let l=a.children.indexOf(u.parent),p,f=u.parent.offset+u.parent.length;if(l>0){let m=a.children[l-1];p=m.offset+m.length}else if(p=a.offset+1,a.children.length>1)f=a.children[1].offset;return dn(e,{offset:p,length:f-p,content:""},n)}else return dn(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)}`,p=n.getInsertionIndex?n.getInsertionIndex(a.children.map((m)=>m.children[0].value)):a.children.length,f;if(p>0){let m=a.children[p-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 dn(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)}`,p;if(a.children.length===0)p={offset:a.offset+1,length:0,content:l};else{let f=a.children[a.children.length-1];p={offset:f.offset+f.length,length:0,content:","+l}}return dn(e,p,n)}else if(r===void 0&&a.children.length>=0){let l=c,p=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:p.offset,length:a.children[l+1].offset-p.offset,content:""};return dn(e,f,n)}else if(r!==void 0){let l,p=`${JSON.stringify(r)}`;if(!n.isArrayInsertion&&a.children.length>c){let f=a.children[c];l={offset:f.offset,length:f.length,content:p}}else if(a.children.length===0||c===0)l={offset:a.offset+1,length:0,content:a.children.length===0?p:p+","};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:","+p}}return dn(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 dn(e,t,r){if(!r.formattingOptions)return[t];let n=ba(e,t),o=t.offset,s=t.offset+t.content.length;if(t.length===0||t.content.length===0){while(o>0&&!bs(n,o-1))o--;while(s<n.length&&!bs(n,s))s++}let i=Ap(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=ba(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 ba(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var kv;(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"})(kv||(kv={}));var Ev;(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"})(Ev||(Ev={}));var Pv=xv;var Tv;(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"})(Tv||(Tv={}));function Cp(e,t,r,n){return $v(e,t,r,n)}function Rp(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=ba(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var Av=Q(d(),ln()),KR=Q(d(),ln()),Iv={insertSpaces:!0,tabSize:2,eol:`
|
|
301
|
-
`};function
|
|
302
|
-
`;for(let[y,
|
|
338
|
+
`}function oi(e,t){return`\r
|
|
339
|
+
`.indexOf(e.charAt(t))!==-1}var si;(function(e){e.DEFAULT={allowTrailingComma:!1}})(si||(si={}));function i0(e,t=[],r=si.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return Uf(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 Ff(e,t=[],r=si.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}Uf(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:d2(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 Tc(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 Uf(e,t,r=si.DEFAULT){let n=ni(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?(ne)=>s===0&&W(ne,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(W){return W?(ne)=>s===0&&W(ne,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),_=a(t.onSeparator),T=i(t.onComment),x=a(t.onError),A=r&&r.disallowComments,w=r&&r.allowTrailingComma;function v(){while(!0){let W=n.scan();switch(n.getTokenError()){case 4:S(14);break;case 5:S(15);break;case 3:S(13);break;case 1:if(!A)S(11);break;case 2:S(12);break;case 6:S(16);break}switch(W){case 12:case 13:if(A)S(10);else T();break;case 16:S(1);break;case 15:case 14:break;default:return W}}}function S(W,ne=[],kt=[]){if(x(W),ne.length+kt.length>0){let st=n.getToken();while(st!==17){if(ne.indexOf(st)!==-1){v();break}else if(kt.indexOf(st)!==-1)break;st=v()}}}function I(W){let ne=n.getTokenValue();if(W)y(ne);else f(ne),o.push(ne);return v(),!0}function j(){switch(n.getToken()){case 11:let W=n.getTokenValue(),ne=Number(W);if(isNaN(ne))S(2),ne=0;y(ne);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return v(),!0}function G(){if(n.getToken()!==10)return S(3,[],[2,5]),!1;if(I(!1),n.getToken()===6){if(_(":"),v(),!Le())S(4,[],[2,5])}else S(5,[],[2,5]);return o.pop(),!0}function se(){d(),v();let W=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!W)S(4,[],[]);if(_(","),v(),n.getToken()===2&&w)break}else if(W)S(6,[],[]);if(!G())S(4,[],[2,5]);W=!0}if(m(),n.getToken()!==2)S(7,[2],[]);else v();return!0}function ie(){h(),v();let W=!0,ne=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!ne)S(4,[],[]);if(_(","),v(),n.getToken()===4&&w)break}else if(ne)S(6,[],[]);if(W)o.push(0),W=!1;else o[o.length-1]++;if(!Le())S(4,[],[4,5]);ne=!0}if(g(),!W)o.pop();if(n.getToken()!==4)S(8,[4],[]);else v();return!0}function Le(){switch(n.getToken()){case 3:return ie();case 1:return se();case 10:return I(!0);default:return j()}}if(v(),n.getToken()===17){if(r.allowEmptyContent)return!0;return S(4,[],[]),!1}if(!Le())return S(4,[],[]),!1;if(n.getToken()!==17)S(9,[],[]);return!0}function d2(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 a0(e,t,r,n){let o=t.slice(),i=Ff(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=Tc(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 Pn(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=Tc(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 Pn(e,{offset:d,length:f-d,content:""},n)}else return Pn(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 Pn(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 Pn(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 Pn(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 Pn(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 Pn(e,t,r){if(!r.formattingOptions)return[t];let n=Oc(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=qf(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=Oc(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 Oc(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var c0;(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"})(c0||(c0={}));var u0;(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"})(u0||(u0={}));var d0=i0;var l0;(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"})(l0||(l0={}));function Wf(e,t,r,n){return a0(e,t,r,n)}function Vf(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=Oc(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var p0=J(p(),br()),w2=J(p(),br()),f0={insertSpaces:!0,tabSize:2,eol:`
|
|
340
|
+
`};function Zf(e){let t=[],r=d0(e,t,{allowTrailingComma:!0,disallowComments:!1});if(t.length>0)throw Error("invalid JSON");return r}function _2(e,t){if(e===null||e.trim()==="")return{};try{return w2.parse(Zf(e))}catch{throw Error(`${t} is not a JSON object. Left it unchanged.`)}}function v2(e,t,r,n,o,s={}){let i=_2(e,t),a=p0.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=p0.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,_]of f)m=Vf(m,Wf(m,[y],_,{formattingOptions:f0}));let h=a.data?[r,n]:[r],g=a.data?d:{[n]:d};return m=Vf(m,Wf(m,h,g,{formattingOptions:f0})),{outcome:l?"updated":"added",text:m.endsWith(`
|
|
303
342
|
`)?m:`${m}
|
|
304
|
-
`}}function ws(e){try{return ZR(e,"utf8")}catch{return null}}function Np(e,t){VR(HR(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;WR(r,t),BR(r,e)}function De(e,t,r,n,o={}){let s=JR(ws(e),e,t,r,n,o);if(s.outcome!=="unchanged")Np(e,s.text);return s.outcome}var Lp=Q(d(),fe());function le(e,t,r,n=["url"]){try{let o=Lp.parse(zp(YR(e,"utf8"))),s=Lp.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=Lp.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 tt(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function wt(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${tt(t,r)} failed`)}function Ve(e,t){return t.some((r)=>e.exists(r))}function Ut(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>Bn(r,`${n}.app`)))}function _a(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var XR=[".vscode",".vscode-insiders",".cursor",".windsurf"];function wa(e,t){let r=`${t.toLowerCase()}-`;return XR.some((n)=>e.list(Bn(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function vs(e,t,r,n){let o=r.find((s)=>e.exists(Bn(t,s)));return Bn(t,o??n)}function cr(e){return e.env.XDG_CONFIG_HOME||Bn(e.home,".config")}function qe(e){return Bn(e.home,".agents","skills")}async function Er(e,t){let r=tt(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await wt(e,t.binary,t.removeArgs);return await wt(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function ez(e){return vs(e,QR(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function Ov(e){return le(ez(e),"amp.mcpServers",F)}function Cv(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>Ov(e)!==null,addServer:(t)=>Er(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",F,t],removeArgs:["mcp","remove",F],current:Ov(e),url:t}),skillsDirs:()=>[qe(e)],login:()=>null}}import{join as Mp}from"node:path";function jp(e){return Mp(e.home,".gemini","config","mcp_config.json")}function Rv(e){return Ve(e,Ut(e,["Antigravity"]))}function zv(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||Rv(e),hasServer:async()=>le(jp(e),"mcpServers",F,["serverUrl","url"])!==null,addServer:async(t)=>({target:jp(e),outcome:De(jp(e),"mcpServers",F,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(Mp(e.home,".gemini","antigravity-cli","skills"));if(Rv(e))t.push(Mp(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as va}from"node:path";function tz(e){return e.env.CLAUDE_CONFIG_DIR||va(e.home,".claude")}function Nv(e){return e.env.CLAUDE_CONFIG_DIR?va(e.env.CLAUDE_CONFIG_DIR,".claude.json"):va(e.home,".claude.json")}function Lv(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",F,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()=>le(Nv(e),"mcpServers",F)!==null,addServer:async(n)=>{let o=tt("claude",r(n)),s=le(Nv(e),"mcpServers",F);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await wt(e,t(),["mcp","remove",F,"--scope","user"]);return await wt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[va(tz(e),"skills")],login:()=>({command:t(),args:["mcp","login",F]})}}import{join as Dp}from"node:path";function rz(e){return e.env.CLINE_DIR||Dp(e.home,".cline")}function Sa(e){return e.env.CLINE_MCP_SETTINGS_PATH||Dp(rz(e),"data","settings","cline_mcp_settings.json")}function jv(e){let t=()=>le(Sa(e),"mcpServers",F);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||wa(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:Sa(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",F,r,"--transport","http","--yes"];return await wt(e,o,s),{target:tt("cline",s),outcome:"added"}}return{target:Sa(e),outcome:De(Sa(e),"mcpServers",F,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[Dp(e.home,".cline","skills")],login:()=>null}}import{readFileSync as nz}from"node:fs";import{join as qp}from"node:path";function oz(e){return e.env.CODEX_HOME||qp(e.home,".codex")}function sz(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""}function Mv(e){try{return sz(nz(qp(oz(e),"config.toml"),"utf8"),F)}catch{return null}}function Dv(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",F,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>Mv(e)!==null,addServer:async(n)=>{let o=tt("codex",r(n)),s=Mv(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await wt(e,t(),["mcp","remove",F]);return await wt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[qp(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",F]})}}import{join as qv}from"node:path";function iz(e){return qv(e.env.COPILOT_HOME||qv(e.home,".copilot"),"mcp-config.json")}function Fv(e){return le(iz(e),"mcpServers",F)}function Uv(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>Fv(e)!==null,addServer:(t)=>Er(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",F,t],removeArgs:["mcp","remove",F],current:Fv(e),url:t}),skillsDirs:()=>[qe(e)],login:()=>null}}import{join as xa}from"node:path";function az(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>xa(t,"Cursor.app"));if(e.platform==="win32")return[xa(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Fp(e){return xa(e.home,".cursor","mcp.json")}function Vv(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Ve(e,az(e)),hasServer:async()=>le(Fp(e),"mcpServers",F)!==null,addServer:async(t)=>({target:Fp(e),outcome:De(Fp(e),"mcpServers",F,{url:t})}),skillsDirs:()=>[xa(e.home,".agents","skills")],login:()=>null}}import{join as vt}from"node:path";var Zv="mcp_config.json";function cz(e){if(e.platform==="win32")return vt(e.env.APPDATA||vt(e.home,"AppData","Roaming"),"devin");return vt(e.env.XDG_CONFIG_HOME||vt(e.home,".config"),"devin")}function Hv(e){return vt(e.home,".codeium","windsurf")}function Kv(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>vt(r,`${t}.app`));if(e.platform==="win32")return[vt(e.env.LOCALAPPDATA||vt(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Up(e){return e.which("devin")!==null||Ve(e,Kv(e,"Devin"))}function Ss(e){return e.which("windsurf")!==null||Ve(e,Kv(e,"Windsurf"))}function Bv(e){let t=[];if(Up(e)||!Ss(e))t.push(vt(cz(e),Zv));if(Ss(e))t.push(vt(Hv(e),Zv));return t}var Wv={unchanged:0,updated:1,added:2};function Gv(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Up(e)||Ss(e),hasServer:async()=>Bv(e).some((t)=>le(t,"mcpServers",F)!==null),addServer:async(t)=>{let r=Bv(e),o=r.map((s)=>De(s,"mcpServers",F,{serverUrl:t})).reduce((s,i)=>Wv[i]>Wv[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Up(e)||!Ss(e))t.push(vt(e.home,".agents","skills"));if(Ss(e))t.push(vt(Hv(e),"skills"));return t},login:()=>null}}import{join as uz}from"node:path";function Jv(e){return le(uz(e.home,".factory","mcp.json"),"mcpServers",F)}function Yv(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>Jv(e)!==null,addServer:(t)=>Er(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",F,t,"--type","http"],removeArgs:["mcp","remove",F],current:Jv(e),url:t}),skillsDirs:()=>[qe(e)],login:()=>null}}import{join as lz}from"node:path";function pz(e){return lz(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function Xv(e){return le(pz(e),"mcpServers",F,["httpUrl","url"])}function Qv(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>Xv(e)!==null,addServer:(t)=>Er(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",F,t],removeArgs:["mcp","remove","--scope","user",F],current:Xv(e),url:t}),skillsDirs:()=>[qe(e)],login:()=>null}}import{join as hc}from"node:path";var xF=Fd(),$F=Ds(),kF=kd(),Qd=qs(),EF=ks(),Nr=se(),TF=Ir(),PF=Ce(),AF=Cr(),IF=Rr(),ste=cc(),OF=Jd(),CF=Yd(),RF=Xd(),dc=a0(),c0=xs();var zF=xF.Composer,NF=$F.Document,LF=kF.Schema,{YAMLError:jF,YAMLParseError:MF,YAMLWarning:DF}=Qd,qF=EF.Alias,{isAlias:FF,isCollection:UF,isDocument:VF,isMap:fc,isNode:ZF,isPair:BF,isScalar:WF,isSeq:HF}=Nr,KF=TF.Pair,GF=PF.Scalar,JF=AF.YAMLMap,YF=IF.YAMLSeq;var XF=OF.Lexer,QF=CF.LineCounter,eU=RF.Parser,{parse:tU,parseAllDocuments:rU,parseDocument:mc,stringify:nU}=dc,{visit:oU,visitAsync:sU}=c0;var iU=Q(d(),ln());function ef(e,t,r){if(e===null)return null;let n=mc(e);if(n.errors.length>0)return null;let o=Q(d(),fe()).nullable().safeParse(n.toJS()),s=Q(d(),fe()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=iU.safeParse(s.data[r]);return i.success?i.data:{}}function aU(e,t,r,n,o){let s=mc(e??"");if(s.errors.length>0||!(s.contents===null||fc(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!fc(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=ef(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 u0(e,t,r,n){let o=aU(ws(e),e,t,r,n);if(o.outcome!=="unchanged")Np(e,o.text);return o.outcome}var l0="extensions";function tf(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return hc(t,"config","config.yaml");if(e.platform==="win32")return hc(e.env.APPDATA||hc(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return hc(cr(e),"goose","config.yaml")}function p0(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Ve(e,Ut(e,["Goose"])),hasServer:async()=>ef(ws(tf(e)),l0,F)!==null,addServer:async(t)=>({target:tf(e),outcome:u0(tf(e),l0,F,{type:"streamable_http",name:F,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[qe(e)],login:()=>null}}function d0(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",F,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${F}\\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=tt("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:()=>[qe(e)],login:()=>null}}import{join as f0}from"node:path";function rf(e){return f0(e.home,".kiro","settings","mcp.json")}function m0(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>_a(e,["kiro-cli","kiro"])!==null||Ve(e,Ut(e,["Kiro"])),hasServer:async()=>le(rf(e),"mcpServers",F)!==null,addServer:async(t)=>({target:rf(e),outcome:De(rf(e),"mcpServers",F,{url:t})}),skillsDirs:()=>[f0(e.home,".kiro","skills")],login:()=>null}}import{join as cU}from"node:path";function nf(e){return cU(cr(e),"muse","settings.json")}function h0(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>le(nf(e),"mcp_servers",F)!==null,addServer:async(t)=>({target:nf(e),outcome:De(nf(e),"mcp_servers",F,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[qe(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",F]})}}import{join as g0}from"node:path";function y0(e,t){let r=()=>_a(e,t.binaries),n=()=>le(t.configPath(e),"mcp",F);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Ve(e,Ut(e,t.apps))||t.extensionId!==null&&wa(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:De(s,"mcp",F,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[qe(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",F]}:null}}}function b0(e){return y0(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>vs(t,g0(cr(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function _0(e){return y0(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>vs(t,t.env.KILO_CONFIG_DIR||g0(cr(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as $t}from"node:path";var uU="Visual Studio Code.app";function S0(e){return $t(e.env.LOCALAPPDATA||$t(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function x0(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>$t(t,uU));if(e.platform==="win32")return[$t(S0(e),"Code.exe")];return[]}function lU(e){if(e.platform==="darwin")return x0(e).map((t)=>$t(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[$t(S0(e),"bin","code.cmd")];return[]}function w0(e){let t=e.which("code");if(t)return t;return lU(e).find((r)=>e.exists(r))??null}function v0(e){if(e.platform==="darwin")return $t(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return $t(e.env.APPDATA||$t(e.home,"AppData","Roaming"),"Code","User","mcp.json");return $t(e.env.XDG_CONFIG_HOME||$t(e.home,".config"),"Code","User","mcp.json")}function $0(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>w0(e)!==null||Ve(e,x0(e)),hasServer:async()=>le(v0(e),"servers",F)!==null,addServer:async(t)=>{let r=v0(e),n=le(r,"servers",F),s=["--add-mcp",JSON.stringify({name:F,type:"http",url:t})],i=w0(e);if(!i)return{target:r,outcome:De(r,"servers",F,{type:"http",url:t})};let a=tt("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await wt(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[$t(e.home,".agents","skills")],login:()=>null}}import{join as gc}from"node:path";function of(e){if(e.platform==="win32")return gc(e.env.APPDATA||gc(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return gc(e.home,".config","zed","settings.json");return gc(cr(e),"zed","settings.json")}function k0(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Ve(e,Ut(e,["Zed","Zed Preview"])),hasServer:async()=>le(of(e),"context_servers",F)!==null,addServer:async(t)=>({target:of(e),outcome:De(of(e),"context_servers",F,{url:t})}),skillsDirs:()=>[qe(e)],login:()=>null}}function E0(e){return[Lv(e),Dv(e),Vv(e),$0(e),Gv(e),d0(e),b0(e),Qv(e),zv(e),Uv(e),Cv(e),Yv(e),jv(e),_0(e),m0(e),k0(e),p0(e),h0(e)]}var pU=[["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 T0(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=pU.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 dU}from"node:child_process";function fU(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function mU(e,t,r,n){return new Promise((o)=>{let s=dU(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 P0(e,t){for(let[r,...n]of fU(e.platform)){let o=r?e.which(r):null;if(o&&await mU(o,n,t,e.env))return!0}return!1}var hU=j(["pending","approved","rejected"]),fre=hU.options;var Ws=[{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 A0(e){return e.status==="live"}var Hs=j(Ws.filter(A0).map((e)=>e.id)),gre=Ws.filter((e)=>A0(e)&&!("paused"in e)).map((e)=>e.label),yre=Ws.filter((e)=>e.status==="planned").map((e)=>e.label),bre=Ws.filter((e)=>("signIn"in e)).map((e)=>e.id);var gU=Object.fromEntries(Ws.map((e)=>[e.id,e]));var yc=_({owner:d(),name:d(),fullName:d()}),yU=_({id:d(),login:d(),name:d(),type:j(["Organization","User"]),avatarUrl:d(),repoAccess:j(["all","selected"]),repoCount:A(),installedAt:_e.datetime()}),bU=_({id:d(),owner:d(),name:d(),fullName:d(),private:q(),pushedAt:_e.datetime(),openFlags:A(),stars:A()}),vre=_({accounts:T(yU),repos:T(bU)});var I0=j(["change-request.opened","change-request.updated","change-request.closed","comment.created","push","schedule.matched","installation.created","installation.deleted","installation-repositories.added","installation-repositories.removed"]),O0=_({login:d(),externalId:d(),avatarUrl:d().optional()}),sf=_({number:A().int(),title:d(),headSha:d(),baseRef:d().optional(),headRef:d().optional(),draft:q().optional(),url:d()}),_U=_({externalId:d(),body:d(),url:d(),subjectNumber:A().int(),byTripwire:q().optional()}),wU=_({ref:d(),headSha:d(),commitCount:A().int(),url:d().optional()}),_c=j(["issue","change-request"]),vU=_({kind:_c,number:A().int(),title:d(),url:d(),state:j(["open","closed"]),author:d(),labels:T(d()),locked:q(),updatedAt:_e.datetime()}),SU=_({workflowId:d(),nodeId:d(),tickId:d()}),no={id:d(),forge:Hs,deliveryId:d(),repo:yc,repoExternalId:d().optional(),installationExternalId:d().optional(),actor:O0,occurredAt:_e.datetime(),receivedAt:_e.datetime()},bc={id:d(),forge:Hs,deliveryId:d(),actor:O0,occurredAt:_e.datetime(),receivedAt:_e.datetime(),installation:_({externalId:d(),account:d(),accountType:j(["User","Organization"]).optional()}),repositories:T(_({externalId:d(),owner:d(),name:d(),fullName:d(),private:q()}))},C0=xr("kind",[_({...no,kind:R("change-request.opened"),changeRequest:sf}),_({...no,kind:R("change-request.updated"),changeRequest:sf}),_({...no,kind:R("change-request.closed"),changeRequest:sf}),_({...no,kind:R("comment.created"),comment:_U}),_({...no,kind:R("push"),push:wU}),_({...no,kind:R("schedule.matched"),schedule:SU,thread:vU}),_({...bc,kind:R("installation.created")}),_({...bc,kind:R("installation.deleted")}),_({...bc,kind:R("installation-repositories.added")}),_({...bc,kind:R("installation-repositories.removed")})]);var xU=_({runId:d(),verdict:d().nullable(),status:d(),reason:d().nullable()}),R0=_({event:C0,run:xU.nullable(),pending:q().optional()}),$U=_({repoFullName:d(),subjectNumber:A().int(),title:d(),url:d().nullable(),actor:_({login:d(),avatarUrl:d().nullable()}),currentVerdict:d().nullable(),currentRunId:d().nullable(),latestActivityAt:_e.datetime(),eventCount:A().int(),timeline:T(R0)}),kU=xr("type",[_({type:R("group"),group:$U}),_({type:R("event"),entry:R0})]),Are=_({items:T(kU)});var EU=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],Cre=j(EU);var TU="https://tripwire.sh/orgs";var Rre=_({sub:d().min(1),azp:d().min(1).optional(),client_id:d().min(1).optional(),scope:d().optional(),[TU]:T(d()).optional()});var PU=j(["success","failure","neutral","pending"]),Lre=_({sha:d(),conclusion:PU,summary:d(),detailsUrl:d()});var AU=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],IU=AU.length;var OU=A().int().min(0).max(IU),z0=j(["run-page","check","comment","review","webhook"]),Dre=z0.options,CU=["run-page","check","comment","review"],wc=_({level:OU.default(0),surfaces:T(z0).default(()=>[...CU]),showHelp:q().default(!0)}),N0=wc.extend({inherit:q().default(!0)}),RU=wc.parse({});var zU=j(["green","blue","purple","pink","orange","red","grey"]),pr=j(["issue","pull"]),Ks=j(["open","closed","merged"]),L0=_({key:d(),label:d(),value:A(),delta:A().optional(),invertDelta:q().optional(),sub:d().optional(),series:T(A()),color:zU,suffix:d().optional()}),NU=_({rule:d(),count:A()}),LU=_({kind:pr,number:A(),title:d(),comments:A(),blocked:A(),status:Ks}),jU=_({login:d(),count:A(),flagged:q().optional()}),MU=_({login:d(),reason:d(),caughtBy:d(),status:j(["Hidden","Removed"]),commentId:d().optional()}),DU=_({kind:j(["review","check"]),title:d(),detail:d(),status:j(["Approved","Changes","Passed","Failed"]),actor:d().optional()}),qU=_({kind:pr,number:A(),title:d(),status:Ks,meta:d(),metrics:T(L0),series:T(A()),byParticipant:T(jU),flagged:T(MU).optional(),checks:T(DU).optional()}),Ure=_({metrics:T(L0),blockedByRule:T(NU),activeThreads:T(LU),threads:Q(d(),qU)});var so=j(["issue","pull","comment"]),af=j(["spam","harassment","off-topic","automod","nsfw"]),cf=j(["low","medium","high","critical"]),FU=j(["pending","resolved"]),oo=_({login:d(),avatarUrl:d()}),Wre=_({id:d(),type:so,repository:yc,number:A(),title:d(),bodyPreview:d(),author:oo,reason:af,severity:cf,reporter:oo.nullable(),automodRule:d().optional(),reportedAt:_e.datetime(),status:FU,comments:A(),reactions:A()}).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"})}),Lr=_({value:A(),delta:A(),series:T(A())}),Hre=_({sentToReview:Lr,blocked:Lr,passed:Lr}),Kre=j(["approve","remove","ban"]);var UU=j(["info","warn","critical"]),VU=_({severity:UU,file:d(),line:A().int().min(1).optional(),note:d().max(240)}),Yre=_({verdict:j(["pass","block","needs_review"]),confidence:A().min(0).max(1),summary:d().max(200),findings:T(VU).max(5)}),ZU=_({model:d().optional(),maxSteps:A().int().min(1).max(15).default(12)});var BU=_({type:j(["reasoning","tool_call"]),toolName:d().optional(),excerpt:d(),truncated:q()}),Xre=_({model:d(),stepsUsed:A().int().min(0),maxSteps:A().int().min(0),trimmed:q(),costUsd:A().nullable().optional(),usage:_({input:A().int().min(0),output:A().int().min(0),cached:A().int().min(0).nullable()}),steps:T(BU)});var WU=j(["blocklist","heuristic","classifier","regex"]),HU=j(["flag","hide","close","require-review"]),KU=j(["pending","confirmed","false-positive"]),GU=_({id:d(),type:so,repoFullName:d(),number:A(),author:_({login:d(),avatarUrl:d()}),snippet:d(),matchedAt:_e.datetime(),verdict:KU,threadKind:pr,commentId:d()}),sne=_({id:d(),name:d(),description:d(),category:WU,pattern:d(),scope:T(so),action:HU,enabled:q(),matches24h:A(),matches30d:A(),falsePositiveRate:A().min(0).max(100),lastFiredAt:_e.datetime(),trend:T(A()),recentMatches:T(GU)}),ine=_({activeRules:Lr,matches24h:Lr,falsePositiveRate:Lr,autoActioned24h:Lr}),ane=_({ruleId:d(),version:A().int().min(1),status:j(["evaluated","skipped"]),passed:q(),evidence:fe(),reason:d().optional(),evaluatedAt:_e.datetime()}),cne=_({minDays:A().int().min(0)}),une=_({min:A().int().min(0)}),lne=_({min:A().int().min(0).default(1).describe("minimum merged change requests in other people's repos"),trustedAfter:A().int().min(1).default(1).describe("merges in this repo that exempt a proven local contributor")}),pne=_({maxPerWindow:A().int().min(1),windowHours:A().min(0.1).default(24)}),dne=_({max:A().int().min(1)}),fne=_({maxNonLatinRatio:A().min(0).max(1).default(0.5)}),mne=_({}),hne=_({paths:T(d()).min(1)}),gne=_({minLength:A().int().min(1).default(32)});var ao=gw(()=>ue([d(),A(),q(),sa(),T(ao),Q(d(),ao)])),Sc=_({x:A(),y:A()}),JU=j(["all-of","any-of","not"]),YU=j(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),XU=["comment","discord"];function M0(e){return XU.includes(e)}var wne=_({url:sp().meta({secret:!0}).describe("webhook url"),signingSecret:d().min(1).optional().meta({secret:!0}).describe("signing secret")}),io=15,D0=d().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`}),QU=d().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),eV=_({id:A().int().positive().optional(),login:D0}),vne=_({id:A().int().positive(),login:D0,avatarUrl:d(),permission:d().min(1)}),Sne=_({name:d().min(1),color:d().regex(/^[0-9a-fA-F]{6}$/),description:d().nullable()}),tV=aa((e)=>d().safeParse(e).success?{login:e}:e,eV);function q0(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var uf=_({reviewers:T(tV).max(io,`ask at most ${io} people`).default([]),teamReviewers:T(QU).max(io,`ask at most ${io} teams`).default([])}),F0=uf.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>io)t.addIssue({code:"custom",message:`ask at most ${io} people and teams`})}),U0=_({labels:T(d().trim().min(1)).min(1,"choose at least one label")}),j0=5000,V0=_({message:d().trim().min(1,"write a message").max(j0,`keep it under ${j0} characters`)}),rV=j(["resolved","off-topic","too heated","spam"]),xne=_({reason:rV.optional()}),lf={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function Z0(e){return e.n*lf[e.unit]}var nV=52*lf.weeks,oV=3650*lf.days,sV=j(["hours","days","weeks"]),iV=j(["hours","days","weeks","months"]),B0=_({n:A().int().min(1),unit:sV}).refine((e)=>Z0(e)<=nV,{message:"runs at least once a year"}),W0=_({n:A().int().min(1),unit:iV}).refine((e)=>Z0(e)<=oV,{message:"10 years at most"}),H0=j(["open","closed","any"]),vc=T(d().min(1)),aV=_({subjects:T(_c).min(1),state:H0,inactiveFor:W0,labels:vc.optional(),excludeLabels:vc.optional(),skipLocked:q().default(!0)}),$ne=_({every:B0,match:aV}),cV=_({every:B0.optional(),match:_({subjects:T(_c).optional(),state:H0.optional(),inactiveFor:W0.optional(),labels:vc.optional(),excludeLabels:vc.optional(),skipLocked:q().optional()}).default({})});var uV=["every","subjects","state","inactiveFor"];function K0(e){return uV.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 lV=_({id:d(),type:R("trigger"),kinds:T(I0).min(1),schedule:cV.optional(),position:Sc.optional()});function xc(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var pV=_({id:d(),type:R("rule"),ref:d().regex(/^[a-z][a-z0-9-]*@\d+$/),config:ao,position:Sc.optional()}),dV=_({id:d(),type:R("gate"),mode:JU,position:Sc.optional()}),fV=_({id:d(),type:R("action"),action:YU,params:Q(d(),ao).optional(),position:Sc.optional()}),G0=xr("type",[lV,pV,dV,fV]),mV=j(["pass","fail","approve","deny"]),hV=_({id:d(),from:d(),to:d(),when:mV.optional()}),gV=_({id:d(),name:d(),version:A().int().min(1),nodes:T(G0).min(1),edges:T(hV)}),J0={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 Cne=Q(d(),ao);var _V=j(["silent","ci-check","comment"]),Y0=j(["comment","silent"]),wV=j(["full","one-liner-link","custom"]),pf=_({customText:d().max(4000).default(""),showDetailsButton:q().default(!0)}),vV=pf.extend({mode:wV.default("full"),template:d().max(4000).default("")}),SV=_({onSuccess:_V.default("ci-check"),passComment:pf.prefault({}),onBlock:Y0.default("comment"),blockComment:vV.prefault({}),moderationQueued:Y0.default("comment"),reviewComment:pf.prefault({}),failClosedFallback:q().default(!0),redaction:N0.prefault({})}),xV=_({redaction:wc.prefault({})}),Lne=xV.parse({});var $V=SV.parse({});var X0="If you think this is wrong, say so in a comment. A maintainer will decide.",Q0="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Hne=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
305
|
-
|
|
306
|
-
${X0}`,Kne=`A new commit will not fix this.
|
|
307
|
-
|
|
308
|
-
${Q0}`,Gne=`Fix what you can and push. Some problems will not clear with a new commit.
|
|
309
|
-
|
|
310
|
-
${Q0}`,Jne=`Push a new commit to run the checks again.
|
|
311
|
-
|
|
312
|
-
${X0}`;var kV=_({total:A(),weeks:T(T(A().min(0).max(4)))}),EV=_({accountAgeDays:A(),location:d().nullable(),emailVerified:q(),twoFactor:q()}),TV=_({mergedPrs:A(),openPrs:A(),comments:A(),hiddenByAutomod:A()}),PV=j(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),AV=_({id:d(),kind:PV,title:d(),detail:d(),at:_e.datetime()}),Qne=_({handle:d(),initial:d(),joinedDaysAgo:A(),publicRepos:A(),followers:A(),watchlisted:q(),contributions:kV,details:EV,repoStats:TV,activity:T(AV)});var IV=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],e$=d().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),OV=xr("kind",[_({kind:R("last"),window:e$}),_({kind:R("lastCount"),window:e$}),_({kind:R("trimmedLength")}),_({kind:R("nonLatinRatio")}),_({kind:R("letterCount")})]),CV=ue([A(),d(),q()]),RV=ue([CV,T(ue([A(),d()]))]),t$=_({kind:j(IV),args:T(RV)}),zV=ue([t$.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),_({kind:R("not"),args:iC([t$])})]),NV=_({when:_({id:d().min(1),transform:OV.optional()}),comparison:zV,severity:j(["low","medium","high"])});var ooe=_({id:d().regex(/^custom-[a-z0-9][a-z0-9-]*$/,"id must be custom-<kebab-slug>"),name:d().min(1).max(80),enabled:q(),definition:NV}),soe=_({});var uoe=j(["prod","eval","dev"]),loe=j(["railway","openrouter","planetscale"]);var moe=j(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var Bt={installationId:d(),forge:Hs},hoe=xr("status",[_({...Bt,status:R("claimable"),account:d().nullable(),repoCount:A(),stateOrg:_({id:d(),slug:d(),name:d()}).nullable()}),_({...Bt,status:R("claimed-by-your-org"),orgSlug:d()}),_({...Bt,status:R("processing")}),_({...Bt,status:R("recovering")}),_({...Bt,status:R("unreadable")}),_({...Bt,status:R("missing"),recoverable:q()}),_({...Bt,status:R("not-for-tripwire")}),_({...Bt,status:R("not-yours"),recoverable:q()}),_({...Bt,status:R("token-expired")}),_({...Bt,status:R("not-admin"),account:d().nullable()})]);var LV=j(["admin","member"]),jV=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"]),MV=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,boe=d().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(MV,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!jV.has(e),{message:"this name is reserved"});var _oe=j(["User","Organization"]),woe=_({role:LV,maxUses:A().int().min(1).max(1000).default(1),expiresInDays:A().int().min(1).max(90).default(7)});var DV=j(["public","private"]),s$=_({name:d(),className:d()}),qV=_({name:d(),description:d(),visibility:DV,openIssues:A(),openPulls:A(),flagged:A(),updatedAt:_e.datetime()}),n$=_({kind:pr,number:A(),title:d(),status:Ks,author:d(),openedAt:_e.datetime(),comments:A(),flagged:A(),labels:T(s$)}),FV=_({state:j(["Hidden","Removed"]),rule:d()}),UV=_({id:d(),author:d(),body:d(),createdAt:_e.datetime(),flag:FV.optional()}),o$=_({kind:pr,number:A(),title:d(),status:Ks,author:d(),openedAt:_e.datetime(),labels:T(s$),body:d(),comments:T(UV),branch:d().optional(),baseBranch:d().optional()}),$oe=_({repos:T(qV),issues:T(n$),pulls:T(n$),issueDetails:Q(d(),o$),pullDetails:Q(d(),o$)});var Toe=new Set(J0.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var VV=j(["removed","hidden","banned","dismissed","required-review"]),ZV=j(["actioned","dismissed","appealed","reversed"]),BV=j(["automod","report","manual"]),WV=_({kind:BV,detail:d(),reporter:oo.optional()}),HV=_({at:_e.datetime(),label:d(),by:d()}),KV=_({id:d(),type:so,repoFullName:d(),number:A(),content:d(),threadKind:pr,commentId:d()}),Coe=_({id:d(),label:d(),reason:af,severity:cf,action:VV,status:ZV,author:oo,moderator:oo.nullable(),caughtBy:WV,at:_e.datetime(),snapshot:q(),items:T(KV),history:T(HV)}),Roe=j(["what","reason","caught"]),i$=j(["pass","block","needs_review"]);var GV=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],a$=j(GV),c$=j(["active","waiting","completed","skipped","failed"]);var JV=d().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),YV=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function u$(e){let t=YV.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var XV=_({status:c$,detail:d().max(256).nullable(),updatedAt:_e.datetime()}),QV=aC(a$,XV),Loe=_({runCode:d().trim().min(1).max(200),stage:a$,status:c$,detail:d().trim().max(256).optional()}),joe=_({code:JV,stages:QV,completedAt:_e.datetime().nullable(),lastReportAt:_e.datetime().nullable()});function l$(e){return e?`Please help me set up Tripwire.
|
|
313
|
-
|
|
314
|
-
org slug: ${e.org}
|
|
315
|
-
run code: ${e.code}`:"Please help me set up Tripwire."}var eZ=_({ruleId:d(),summary:d()}),Foe=_({version:R(1),verdict:i$,org:d(),repo:d(),changeRequest:_({number:A().int(),title:d(),author:d()}),firedRules:T(eZ),runUrl:d(),timestamp:d()});var $c={event:"Event",pass:"Passes",fail:"Doesn't pass",approve:"Approved",deny:"Blocked"},p$=["event","pass","fail","approve","deny"],tZ={trigger:{accepts:[]},rule:{accepts:p$},gate:{accepts:["pass"]},action:{accepts:p$}},kc={event:"event",pass:"result",fail:"result",approve:"decision",deny:"decision"};function rZ(e){return tZ[e].accepts}function df(e,t){return rZ(e).includes(t)}function Ec(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?["approve","deny"]:[];default:return[]}}function Gs(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var wn=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),Js=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function ff(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function nZ(e){let t=e.trim();return ff(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function m$(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function oZ(e,t,r,n){if(df(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=kc[t];return{rule:"gate-input",message:s==="result"?`${r} takes only Passes, not ${$c[t]}${o}`:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function h$(e,t,r){let n=Ec(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 ${$c[t]} output`};return null}function sZ(e){let t=kc[e];if(t==="result")return"It takes only Passes.";return t==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function iZ(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},wn(e.id)];if(kc[t]==="result")return[{label:"Insert a Not gate",edit:{type:"insert-not",edgeId:e.id}},{label:"Use Passes",edit:{type:"use-passes",edgeId:e.id}}];return[wn(e.id)]}function aZ(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 cZ(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:[wn(t.id)]})))}function uZ(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 g$(e,t){let r=e.byId.get(t.from),n=e.byId.get(t.to);return r&&n?{source:r,target:n}:null}function d$(e){return(t)=>t.def.edges.flatMap((r)=>{let n=g$(t,r);if(!n||h$(n.source,Gs(n.source,r.when),""))return[];let o=Gs(n.source,r.when);if(oZ(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"?sZ(o):"It takes no inputs.",fixes:e==="gate-input"?iZ(r,o):[wn(r.id)]}]})}function f$(e){return(t)=>t.def.edges.flatMap((r)=>{let n=g$(t,r);if(!n)return[];if(h$(n.source,Gs(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=Ec(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${$c[Gs(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},wn(r.id)]:[wn(r.id)]}]})}function lZ(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 pZ(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&&df(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,Js(n.id)]}]})}function dZ(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 p=e.byId.get(l);return p?[e.name(p)]:[]});n.push({edgeId:i.id,nodeId:i.to,message:u.length===1?"It connects to itself.":`It loops back through ${m$(u.slice(1))}.`,fixes:[wn(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 fZ(e){return y$(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function mZ(e){let t=fZ(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 hZ={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function gZ(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!xc(t))return[];let r=K0(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${m$(r.map((o)=>hZ[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var yZ={"remove-label":{schema:U0,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:V0,field:"message",message:"Write the message.",label:"Write message"}};function bZ(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];let r=t.action==="remove-label"||t.action==="post-comment"?yZ[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[{nodeId:t.id,message:r.message,fixes:[{label:r.label,intent:{type:"focus-field",nodeId:t.id,field:r.field}}]}]})}function _Z(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&xc(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 wZ=new Set(["block","send-to-moderation"]);function y$(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 vZ(e){let t=y$(e,e.def.nodes.filter(xc).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&wZ.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[Js(r.id)]}]:[])}function b$(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function SZ(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!b$(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[Js(t.id)]}]:[])}function xZ(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=b$(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?.message?`Fix this setting: ${ff(o.message)}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var $Z={comment:"Customize sets the verdict comment now",discord:"delete it to turn this workflow on"};function kZ(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&M0(t.action)?[{nodeId:t.id,message:`This step was removed. ${nZ($Z[t.action])}`,fixes:[Js(t.id)]}]:[])}function EZ(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=F0.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: ${ff(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function TZ(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=uf.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>q0(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 PZ(e){return e.def.nodes.flatMap((t)=>{let[r]=Ec(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}},Js(t.id)]}]})}var Yoe=[{rule:"duplicate-id",check:aZ},{rule:"missing-step",check:cZ},{rule:"no-trigger",check:uZ},{rule:"trigger-input",check:d$("trigger-input")},{rule:"gate-input",check:d$("gate-input")},{rule:"no-outputs",check:f$("no-outputs")},{rule:"wrong-output",check:f$("wrong-output")},{rule:"not-input",check:lZ},{rule:"orphan-step",check:pZ},{rule:"cycle",check:dZ},{rule:"no-action",check:mZ},{rule:"schedule-config",check:gZ},{rule:"action-params",check:bZ},{rule:"schedule-mixed",check:_Z},{rule:"schedule-needs-change-request",check:vZ},{rule:"unknown-rule",check:SZ},{rule:"rule-config",check:xZ},{rule:"removed-step",check:kZ},{rule:"review-targets",check:EZ},{rule:"stale-reviewer",check:TZ},{rule:"dead-end",check:PZ}];var Xoe=_({nodes:T(ke({id:d().catch(""),type:d().catch(""),kinds:T(d()).optional().catch(void 0)}))});var AZ=`Use the \`${is}\` skill for this project.`;function _$(e){let t=e?.trim();if(!t)return AZ;let r=u$(t);if(r)return l$(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as OZ,readFileSync as CZ,renameSync as RZ,writeFileSync as zZ}from"node:fs";import{join as w$}from"node:path";var mf=`---
|
|
343
|
+
`}}function ii(e){try{return h2(e,"utf8")}catch{return null}}function Bf(e,t){m2(b2(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;y2(r,t),g2(r,e)}function We(e,t,r,n,o={}){let s=v2(ii(e),e,t,r,n,o);if(s.outcome!=="unchanged")Bf(e,s.text);return s.outcome}var Hf=J(p(),de());function fe(e,t,r,n=["url"]){try{let o=Hf.parse(Zf(S2(e,"utf8"))),s=Hf.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=Hf.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 ut(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function Tt(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${ut(t,r)} failed`)}function Ke(e,t){return t.some((r)=>e.exists(r))}function Xt(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>wo(r,`${n}.app`)))}function Pc(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var x2=[".vscode",".vscode-insiders",".cursor",".windsurf"];function Ac(e,t){let r=`${t.toLowerCase()}-`;return x2.some((n)=>e.list(wo(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function ai(e,t,r,n){let o=r.find((s)=>e.exists(wo(t,s)));return wo(t,o??n)}function vr(e){return e.env.XDG_CONFIG_HOME||wo(e.home,".config")}function Ve(e){return wo(e.home,".agents","skills")}async function qr(e,t){let r=ut(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await Tt(e,t.binary,t.removeArgs);return await Tt(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function $2(e){return ai(e,k2(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function m0(e){return fe($2(e),"amp.mcpServers",U)}function h0(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>m0(e)!==null,addServer:(t)=>qr(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",U,t],removeArgs:["mcp","remove",U],current:m0(e),url:t}),skillsDirs:()=>[Ve(e)],login:()=>null}}import{join as Gf}from"node:path";function Kf(e){return Gf(e.home,".gemini","config","mcp_config.json")}function g0(e){return Ke(e,Xt(e,["Antigravity"]))}function y0(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||g0(e),hasServer:async()=>fe(Kf(e),"mcpServers",U,["serverUrl","url"])!==null,addServer:async(t)=>({target:Kf(e),outcome:We(Kf(e),"mcpServers",U,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(Gf(e.home,".gemini","antigravity-cli","skills"));if(g0(e))t.push(Gf(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as Ic}from"node:path";function E2(e){return e.env.CLAUDE_CONFIG_DIR||Ic(e.home,".claude")}function b0(e){return e.env.CLAUDE_CONFIG_DIR?Ic(e.env.CLAUDE_CONFIG_DIR,".claude.json"):Ic(e.home,".claude.json")}function w0(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",U,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()=>fe(b0(e),"mcpServers",U)!==null,addServer:async(n)=>{let o=ut("claude",r(n)),s=fe(b0(e),"mcpServers",U);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Tt(e,t(),["mcp","remove",U,"--scope","user"]);return await Tt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Ic(E2(e),"skills")],login:()=>({command:t(),args:["mcp","login",U]})}}import{join as Jf}from"node:path";function T2(e){return e.env.CLINE_DIR||Jf(e.home,".cline")}function Rc(e){return e.env.CLINE_MCP_SETTINGS_PATH||Jf(T2(e),"data","settings","cline_mcp_settings.json")}function _0(e){let t=()=>fe(Rc(e),"mcpServers",U);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||Ac(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:Rc(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",U,r,"--transport","http","--yes"];return await Tt(e,o,s),{target:ut("cline",s),outcome:"added"}}return{target:Rc(e),outcome:We(Rc(e),"mcpServers",U,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[Jf(e.home,".cline","skills")],login:()=>null}}import{readFileSync as O2}from"node:fs";import{join as Yf}from"node:path";function P2(e){return e.env.CODEX_HOME||Yf(e.home,".codex")}function A2(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""}function v0(e){try{return A2(O2(Yf(P2(e),"config.toml"),"utf8"),U)}catch{return null}}function S0(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",U,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>v0(e)!==null,addServer:async(n)=>{let o=ut("codex",r(n)),s=v0(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Tt(e,t(),["mcp","remove",U]);return await Tt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Yf(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",U]})}}import{join as x0}from"node:path";function I2(e){return x0(e.env.COPILOT_HOME||x0(e.home,".copilot"),"mcp-config.json")}function k0(e){return fe(I2(e),"mcpServers",U)}function $0(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>k0(e)!==null,addServer:(t)=>qr(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",U,t],removeArgs:["mcp","remove",U],current:k0(e),url:t}),skillsDirs:()=>[Ve(e)],login:()=>null}}import{join as Cc}from"node:path";function R2(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>Cc(t,"Cursor.app"));if(e.platform==="win32")return[Cc(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Xf(e){return Cc(e.home,".cursor","mcp.json")}function E0(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Ke(e,R2(e)),hasServer:async()=>fe(Xf(e),"mcpServers",U)!==null,addServer:async(t)=>({target:Xf(e),outcome:We(Xf(e),"mcpServers",U,{url:t})}),skillsDirs:()=>[Cc(e.home,".agents","skills")],login:()=>null}}import{join as Ot}from"node:path";var T0="mcp_config.json";function C2(e){if(e.platform==="win32")return Ot(e.env.APPDATA||Ot(e.home,"AppData","Roaming"),"devin");return Ot(e.env.XDG_CONFIG_HOME||Ot(e.home,".config"),"devin")}function A0(e){return Ot(e.home,".codeium","windsurf")}function I0(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>Ot(r,`${t}.app`));if(e.platform==="win32")return[Ot(e.env.LOCALAPPDATA||Ot(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Qf(e){return e.which("devin")!==null||Ke(e,I0(e,"Devin"))}function ci(e){return e.which("windsurf")!==null||Ke(e,I0(e,"Windsurf"))}function O0(e){let t=[];if(Qf(e)||!ci(e))t.push(Ot(C2(e),T0));if(ci(e))t.push(Ot(A0(e),T0));return t}var P0={unchanged:0,updated:1,added:2};function R0(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Qf(e)||ci(e),hasServer:async()=>O0(e).some((t)=>fe(t,"mcpServers",U)!==null),addServer:async(t)=>{let r=O0(e),o=r.map((s)=>We(s,"mcpServers",U,{serverUrl:t})).reduce((s,i)=>P0[i]>P0[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Qf(e)||!ci(e))t.push(Ot(e.home,".agents","skills"));if(ci(e))t.push(Ot(A0(e),"skills"));return t},login:()=>null}}import{join as z2}from"node:path";function C0(e){return fe(z2(e.home,".factory","mcp.json"),"mcpServers",U)}function z0(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>C0(e)!==null,addServer:(t)=>qr(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",U,t,"--type","http"],removeArgs:["mcp","remove",U],current:C0(e),url:t}),skillsDirs:()=>[Ve(e)],login:()=>null}}import{join as N2}from"node:path";function L2(e){return N2(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function N0(e){return fe(L2(e),"mcpServers",U,["httpUrl","url"])}function L0(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>N0(e)!==null,addServer:(t)=>qr(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",U,t],removeArgs:["mcp","remove","--scope","user",U],current:N0(e),url:t}),skillsDirs:()=>[Ve(e)],login:()=>null}}import{join as $u}from"node:path";var KB=Xm(),GB=$i(),JB=Lm(),lh=Ei(),YB=di(),Gr=ae(),XB=Vr(),QB=Ce(),eH=Br(),tH=Hr(),Xde=bu(),rH=ah(),nH=ch(),oH=uh(),Su=VE(),ZE=ui();var sH=KB.Composer,iH=GB.Document,aH=JB.Schema,{YAMLError:cH,YAMLParseError:uH,YAMLWarning:lH}=lh,dH=YB.Alias,{isAlias:pH,isCollection:fH,isDocument:mH,isMap:xu,isNode:hH,isPair:gH,isScalar:yH,isSeq:bH}=Gr,wH=XB.Pair,_H=QB.Scalar,vH=eH.YAMLMap,SH=tH.YAMLSeq;var xH=rH.Lexer,kH=nH.LineCounter,$H=oH.Parser,{parse:EH,parseAllDocuments:TH,parseDocument:ku,stringify:OH}=Su,{visit:PH,visitAsync:AH}=ZE;var IH=J(p(),br());function dh(e,t,r){if(e===null)return null;let n=ku(e);if(n.errors.length>0)return null;let o=J(p(),de()).nullable().safeParse(n.toJS()),s=J(p(),de()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=IH.safeParse(s.data[r]);return i.success?i.data:{}}function RH(e,t,r,n,o){let s=ku(e??"");if(s.errors.length>0||!(s.contents===null||xu(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!xu(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=dh(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 BE(e,t,r,n){let o=RH(ii(e),e,t,r,n);if(o.outcome!=="unchanged")Bf(e,o.text);return o.outcome}var HE="extensions";function ph(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return $u(t,"config","config.yaml");if(e.platform==="win32")return $u(e.env.APPDATA||$u(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return $u(vr(e),"goose","config.yaml")}function KE(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Ke(e,Xt(e,["Goose"])),hasServer:async()=>dh(ii(ph(e)),HE,U)!==null,addServer:async(t)=>({target:ph(e),outcome:BE(ph(e),HE,U,{type:"streamable_http",name:U,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[Ve(e)],login:()=>null}}function GE(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",U,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${U}\\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=ut("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:()=>[Ve(e)],login:()=>null}}import{join as JE}from"node:path";function fh(e){return JE(e.home,".kiro","settings","mcp.json")}function YE(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>Pc(e,["kiro-cli","kiro"])!==null||Ke(e,Xt(e,["Kiro"])),hasServer:async()=>fe(fh(e),"mcpServers",U)!==null,addServer:async(t)=>({target:fh(e),outcome:We(fh(e),"mcpServers",U,{url:t})}),skillsDirs:()=>[JE(e.home,".kiro","skills")],login:()=>null}}import{join as CH}from"node:path";function mh(e){return CH(vr(e),"muse","settings.json")}function XE(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>fe(mh(e),"mcp_servers",U)!==null,addServer:async(t)=>({target:mh(e),outcome:We(mh(e),"mcp_servers",U,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[Ve(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",U]})}}import{join as QE}from"node:path";function eT(e,t){let r=()=>Pc(e,t.binaries),n=()=>fe(t.configPath(e),"mcp",U);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Ke(e,Xt(e,t.apps))||t.extensionId!==null&&Ac(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:We(s,"mcp",U,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[Ve(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",U]}:null}}}function tT(e){return eT(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>ai(t,QE(vr(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function rT(e){return eT(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>ai(t,t.env.KILO_CONFIG_DIR||QE(vr(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as It}from"node:path";var zH="Visual Studio Code.app";function sT(e){return It(e.env.LOCALAPPDATA||It(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function iT(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>It(t,zH));if(e.platform==="win32")return[It(sT(e),"Code.exe")];return[]}function NH(e){if(e.platform==="darwin")return iT(e).map((t)=>It(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[It(sT(e),"bin","code.cmd")];return[]}function nT(e){let t=e.which("code");if(t)return t;return NH(e).find((r)=>e.exists(r))??null}function oT(e){if(e.platform==="darwin")return It(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return It(e.env.APPDATA||It(e.home,"AppData","Roaming"),"Code","User","mcp.json");return It(e.env.XDG_CONFIG_HOME||It(e.home,".config"),"Code","User","mcp.json")}function aT(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>nT(e)!==null||Ke(e,iT(e)),hasServer:async()=>fe(oT(e),"servers",U)!==null,addServer:async(t)=>{let r=oT(e),n=fe(r,"servers",U),s=["--add-mcp",JSON.stringify({name:U,type:"http",url:t})],i=nT(e);if(!i)return{target:r,outcome:We(r,"servers",U,{type:"http",url:t})};let a=ut("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await Tt(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[It(e.home,".agents","skills")],login:()=>null}}import{join as Eu}from"node:path";function hh(e){if(e.platform==="win32")return Eu(e.env.APPDATA||Eu(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return Eu(e.home,".config","zed","settings.json");return Eu(vr(e),"zed","settings.json")}function cT(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Ke(e,Xt(e,["Zed","Zed Preview"])),hasServer:async()=>fe(hh(e),"context_servers",U)!==null,addServer:async(t)=>({target:hh(e),outcome:We(hh(e),"context_servers",U,{url:t})}),skillsDirs:()=>[Ve(e)],login:()=>null}}function uT(e){return[w0(e),S0(e),E0(e),aT(e),R0(e),GE(e),tT(e),L0(e),y0(e),$0(e),h0(e),z0(e),_0(e),rT(e),YE(e),cT(e),KE(e),XE(e)]}var LH=[["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 lT(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=LH.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 jH}from"node:child_process";function DH(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function MH(e,t,r,n){return new Promise((o)=>{let s=jH(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 dT(e,t){for(let[r,...n]of DH(e.platform)){let o=r?e.which(r):null;if(o&&await MH(o,n,t,e.env))return!0}return!1}var qH=`Use the \`${Rs}\` skill for this project.`;function pT(e){let t=e?.trim();if(!t)return qH;let r=Dx(t);if(r)return Mx(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as WH,readFileSync as VH,renameSync as ZH,writeFileSync as BH}from"node:fs";import{join as hT}from"node:path";var fT=`---
|
|
316
344
|
name: tripwire-get-started
|
|
317
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.
|
|
318
346
|
---
|
|
@@ -391,33 +419,544 @@ Give a short summary and the repo link from \`setup_status\`. Then tell the user
|
|
|
391
419
|
you can manage Tripwire later with the \`tripwire\` CLI (\`npx @tripwire-sh/cli
|
|
392
420
|
--help\`): \`login\`, \`status\`, \`repos\`, \`rules\`, \`gate\`, \`workflows\`, \`runs\` and
|
|
393
421
|
\`queue\`, each with \`--json\`.
|
|
394
|
-
|
|
395
|
-
|
|
422
|
+
To write or change workflows as code, use the \`tripwire-workflows\` skill.
|
|
423
|
+
`;var mT=`---
|
|
424
|
+
name: tripwire-workflows
|
|
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
|
+
---
|
|
427
|
+
|
|
428
|
+
# Tripwire workflows as code
|
|
429
|
+
|
|
430
|
+
A workflow is typed code in \`tripwire.ts\`. It is a finite graph: triggers,
|
|
431
|
+
rule checks, gates (all of, any of, not) and actions. It always finishes, and
|
|
432
|
+
the compiler checks it before anything runs.
|
|
433
|
+
|
|
434
|
+
## Steps
|
|
435
|
+
|
|
436
|
+
1. **Pull.** \`npx @tripwire-sh/cli workflows pull <repo>\`. This writes
|
|
437
|
+
\`tripwire.ts\` and the typed helpers in \`.tripwire/workflow.ts\`. Done when
|
|
438
|
+
both files exist. Read \`tripwire.ts\` before you change it: the canvas and
|
|
439
|
+
other people edit the same workflows. To pull only some, name them:
|
|
440
|
+
\`workflows pull <repo> <id> <id>\`. Workflows already in the file that you
|
|
441
|
+
did not name stay as they are.
|
|
442
|
+
2. **Write.** Edit \`tripwire.ts\` with the reference below. Keep each workflow's
|
|
443
|
+
key: it is the workflow's id, and a new key makes a new workflow.
|
|
444
|
+
3. **Validate until clean.** \`npx @tripwire-sh/cli workflows validate --repo
|
|
445
|
+
<repo>\`. Every message names the step and, for a wrong id, the right one.
|
|
446
|
+
Fix and rerun. Done when every workflow says \`can be turned on\` and each
|
|
447
|
+
\`runs\` line reads back the schedule the user asked for, timezone included.
|
|
448
|
+
4. **Diff.** \`npx @tripwire-sh/cli workflows diff <repo>\`. Show the user the
|
|
449
|
+
lines and ask before you push.
|
|
450
|
+
5. **Push.** \`npx @tripwire-sh/cli workflows push <repo>\`. New workflows start
|
|
451
|
+
off. Turn one on only when the user says so:
|
|
452
|
+
\`npx @tripwire-sh/cli workflows enable <repo> <id>\`.
|
|
453
|
+
|
|
454
|
+
Loading \`tripwire.ts\` needs Bun or Node 22.18+. On older Node, use
|
|
455
|
+
\`bunx @tripwire-sh/cli\`. Without the CLI, the MCP tools \`get_workflow\`,
|
|
456
|
+
\`validate_workflow\` and \`apply_workflow\` do the same with compiled JSON.
|
|
457
|
+
|
|
458
|
+
## Reference
|
|
459
|
+
|
|
460
|
+
\`\`\`ts
|
|
461
|
+
import { anyOf, block, check, requestReview, workflow, workflows } from "./.tripwire/workflow.ts";
|
|
462
|
+
|
|
463
|
+
export default workflows({
|
|
464
|
+
"change-request-opens": workflow({
|
|
465
|
+
name: "New contributors",
|
|
466
|
+
on: "change-request.opened",
|
|
467
|
+
check: anyOf(
|
|
468
|
+
check("account-age", { minDays: 7 }).fails,
|
|
469
|
+
check("pr-rate-limit", { maxPerWindow: 5, windowHours: 24 }).fails,
|
|
470
|
+
),
|
|
471
|
+
pass: [block()],
|
|
472
|
+
fail: [requestReview({ reviewers: ["octocat"] })],
|
|
473
|
+
}),
|
|
474
|
+
});
|
|
475
|
+
\`\`\`
|
|
476
|
+
|
|
477
|
+
**Outcomes.** A check *passes* when the contributor is fine. \`step.fails\` is
|
|
478
|
+
its Doesn't pass output, \`not(passes)\`, and it fits anywhere a check fits, so
|
|
479
|
+
"if any of these doesn't pass, block" is \`anyOf(a.fails, b.fails)\` with
|
|
480
|
+
\`pass: [block()]\`. \`not(x)\` is an explicit Not gate for the same idea.
|
|
481
|
+
\`pass\` actions run when \`check\` passes, \`fail\` actions when it does not.
|
|
482
|
+
|
|
483
|
+
**Ids are the code's ids.** Rules: \`check("<rule id>", settings)\`, typed from
|
|
484
|
+
the catalog; \`list_rule_catalog\` lists them. A repo's custom rules:
|
|
485
|
+
\`customCheck("custom-...")\`. Events: \`change-request.opened\`,
|
|
486
|
+
\`change-request.updated\`, \`change-request.closed\`, \`comment.created\`, \`push\`.
|
|
487
|
+
A wrong id or setting fails type-checking and validation, with the right one
|
|
488
|
+
named.
|
|
489
|
+
|
|
490
|
+
**Actions.** \`block()\`, \`label({ labels })\`, \`removeLabel({ labels })\`,
|
|
491
|
+
\`requestReview({ reviewers, teamReviewers })\`, \`postComment({ message })\`,
|
|
492
|
+
\`lock({ reason })\`, \`close()\`, \`webhook()\`, \`discord()\`, and
|
|
493
|
+
\`humanReview({ approve: [...], deny: [...] })\`, which waits for a maintainer.
|
|
494
|
+
Webhook and Discord URLs are set in the app by the user, never in code.
|
|
495
|
+
|
|
496
|
+
**Unknown results.** A rule that cannot evaluate is skipped. A skipped check
|
|
497
|
+
fires no action through any port or gate, so it never blocks. A step that
|
|
498
|
+
waits on a skipped check is skipped too. A check that is never reached, because
|
|
499
|
+
an earlier check sent the run another way, does not pass in \`allOf\` or
|
|
500
|
+
\`anyOf\`.
|
|
501
|
+
|
|
502
|
+
**Wiring beyond one condition.** Name steps in \`steps: { ... }\`; the key is the
|
|
503
|
+
step id. \`.after(x)\` runs a check or action after a trigger or an output:
|
|
504
|
+
|
|
505
|
+
\`\`\`ts
|
|
506
|
+
const opened = trigger("change-request.opened");
|
|
507
|
+
const age = check("account-age", { minDays: 30 }).after(opened);
|
|
508
|
+
workflow({ steps: { opened, age, stop: block().after(age.fails) } });
|
|
509
|
+
\`\`\`
|
|
510
|
+
|
|
511
|
+
**Schedules.** \`on: schedule({ every, timezone, match })\`.
|
|
512
|
+
|
|
513
|
+
- \`every\`: \`{ n: 12, unit: "hours" }\`, a preset such as
|
|
514
|
+
\`{ preset: "daily", at: "07:00" }\`, \`{ preset: "weekly", on: "monday",
|
|
515
|
+
at: "09:00" }\`, or \`{ cron: "0 9 * * 1-5" }\`.
|
|
516
|
+
- \`timezone\`: an IANA name such as \`"Europe/Berlin"\`. Without it, clock
|
|
517
|
+
schedules run in UTC. Set it whenever the user names a local time.
|
|
518
|
+
- \`match\`: \`{ subjects: ["issue"], state: "open", inactiveFor: { n: 15,
|
|
519
|
+
unit: "days" }, labels, excludeLabels }\`.
|
|
520
|
+
- Use \`run: [...]\` for actions straight after the trigger.
|
|
521
|
+
`;var HH=[{name:Rs,body:fT},{name:_S,body:mT}];function gh(e,t=Rs){return hT(e,t,"SKILL.md")}function KH(e,t,r){let n=gh(e,t),o=null;try{o=VH(n,"utf8")}catch{o=null}if(o===r)return"unchanged";WH(hT(e,t),{recursive:!0});let s=`${n}.tripwire-${process.pid}.tmp`;return BH(s,r),ZH(s,n),o===null?"added":"updated"}function gT(e){let t=HH.map((r)=>KH(e,r.name,r.body));if(t.includes("added"))return"added";return t.includes("updated")?"updated":"unchanged"}async function yT(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 yh(e,t,r=new Map){try{let n=await e.addServer(t),o=e.skillsDirs().map((s)=>{let i=r.get(s)??gT(s);return r.set(s,i),{path:gh(s),outcome:i}});return{kind:"done",mcp:n,skills:o}}catch(n){return{kind:"failed",message:n instanceof Error?n.message:String(n)}}}var bT=new Intl.ListFormat("en",{style:"long",type:"conjunction"});function wT(e,t){return t.split(e.home).join("~")}function GH(e,t){let{result:r}=t;if(r.kind==="failed")return vt.default.red(r.message);let n=[`${vt.default.dim("mcp ")} ${wT(e,r.mcp.target)} ${vt.default.dim(`(${r.mcp.outcome})`)}`];if(r.skills.length===0)n.push(`${vt.default.dim("skill")} ${vt.default.dim("not supported, MCP only")}`);for(let o of r.skills)n.push(`${vt.default.dim("skill")} ${wT(e,o.path)} ${vt.default.dim(`(${o.outcome})`)}`);return n.join(`
|
|
522
|
+
`)}function JH(){return vt.default.bgRed(vt.default.black(vt.default.bold(" tripwire ")))}async function YH(e){let t=await jf({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(ho(t))return null;return e.filter((r)=>t.includes(r.agent.id))}async function XH(e,t){let r=t.filter((s)=>s.result.kind==="done");if(!r.some((s)=>s.agent.login()!==null))return!0;let n=await jf({message:"Select agents to authenticate the Tripwire MCP for",options:r.map(({agent:s})=>s.login()?{value:s.id,label:s.name}:{value:s.id,label:s.name,hint:"Configure in app",disabled:!0}),initialValues:r.filter(({agent:s})=>s.login()!==null).map(({agent:s})=>s.id),required:!1,showInstructions:!1});if(ho(n)||n.length===0)return Re.step("Authenticate the Tripwire MCP: skipped"),!0;let o=!0;for(let{agent:s}of r){let i=s.login();if(!(i&&n.includes(s.id)))continue;let a=ut(i.command.split(/[\\/]/).pop()??i.command,i.args);Re.step(`${s.name}: ${a}`);let c=await e.runInteractive(i.command,i.args);if(c.ok)Re.success(`${s.name} authenticated`);else o=!1,Re.error(`${s.name} authentication failed${c.stderr?`: ${c.stderr}`:""}`)}return o}function QH(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}`);Re.info(`Sign in to the Tripwire MCP
|
|
396
523
|
${o.join(`
|
|
397
|
-
`)}`),
|
|
398
|
-
${r}`)}async function
|
|
524
|
+
`)}`),Re.info(`Then send this prompt
|
|
525
|
+
${r}`)}async function eK(e,t){let r=await e0({message:"Copy a prompt to get started with Tripwire?",initialValue:!0});if(ho(r)||!r){Re.step("Maybe next time");return}let n=await dT(e,t);Re.success(n?"Copied a get-started prompt to your clipboard":"Copy this prompt to get started"),Re.message(vt.default.gray(t))}async function _T(e,t){let r=to(e.env),n=pT(t.instruction),o=lT(e.env),s=t.interactive&&!t.json&&o===null,i=await yT(uT(e)),a=new Map;if(t.json){let h=await Promise.all(i.map(async({agent:y})=>({agent:y,result:await yh(y,r,a)}))),g=h.map(({agent:y,result:_})=>({id:y.id,name:y.name,thisSession:y.id===o,signIn:y.signInHint,..._}));return process.stdout.write(`${JSON.stringify({mcpUrl:r,agents:g,prompt:n},null,2)}
|
|
399
526
|
`),h.every(({result:y})=>y.kind==="done")?0:1}if(process.stdout.write(`
|
|
400
|
-
${
|
|
527
|
+
${JH()}
|
|
401
528
|
|
|
402
|
-
`),
|
|
403
|
-
${
|
|
404
|
-
`;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",Pc,"-s",Tc])}}}function YZ(e,t){let r=["service",Tc,"account",Pc];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?_f(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 E$(e,t){let r=bf(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 co(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return bf(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return E$(JZ(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return E$(YZ(e,t),e)}return bf(e)}class Ys extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var XZ=30000;async function T$(e,t){let r=qn(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=co(e),s=await o.read();if(!s)throw new Ys;if(s.expiresAt&&s.expiresAt-XZ<t.now()){let i=await Cw(t,s).catch((a)=>{if(a instanceof cs)throw a;throw new Ys("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 Ac(e){return!!e._zod}function Lt(e,t){if(Ac(e))return yl(e,t);return e.safeParse(t)}function Ic(e){if(!e)return;let t;if(Ac(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 Oc(e){if(Ac(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 lo="2025-11-25";var P$=[lo,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],jr="io.modelcontextprotocol/related-task",Rc="2.0",je=bw((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),A$=ue([d(),A().int()]),I$=d(),xie=ke({ttl:A().optional(),pollInterval:A().optional()}),t4=_({ttl:A().optional()}),r4=_({taskId:d()}),wf=ke({progressToken:A$.optional(),[jr]:r4.optional()}),mt=_({_meta:wf.optional()}),Xs=mt.extend({task:t4.optional()}),O$=(e)=>Xs.safeParse(e).success,Ze=_({method:d(),params:mt.loose().optional()}),kt=_({_meta:wf.optional()}),Et=_({method:d(),params:kt.loose().optional()}),Be=ke({_meta:wf.optional()}),zc=ue([d(),A().int()]),C$=_({jsonrpc:R(Rc),id:zc,...Ze.shape}).strict(),Qs=(e)=>C$.safeParse(e).success,R$=_({jsonrpc:R(Rc),...Et.shape}).strict(),z$=(e)=>R$.safeParse(e).success,vf=_({jsonrpc:R(Rc),id:zc,result:Be}).strict(),vn=(e)=>vf.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 Sf=_({jsonrpc:R(Rc),id:zc.optional(),error:_({code:A().int(),message:d(),data:fe().optional()})}).strict();var N$=(e)=>Sf.safeParse(e).success;var Nc=ue([C$,R$,vf,Sf]),$ie=ue([vf,Sf]),Sn=Be.strict(),n4=kt.extend({requestId:zc.optional(),reason:d().optional()}),Lc=Et.extend({method:R("notifications/cancelled"),params:n4}),o4=_({src:d(),mimeType:d().optional(),sizes:T(d()).optional(),theme:j(["light","dark"]).optional()}),ei=_({icons:T(o4).optional()}),uo=_({name:d(),title:d().optional()}),L$=uo.extend({...uo.shape,...ei.shape,version:d(),websiteUrl:d().optional(),description:d().optional()}),s4=ia(_({applyDefaults:q().optional()}),Q(d(),fe())),i4=aa((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},ia(_({form:s4.optional(),url:je.optional()}),Q(d(),fe()).optional())),a4=ke({list:je.optional(),cancel:je.optional(),requests:ke({sampling:ke({createMessage:je.optional()}).optional(),elicitation:ke({create:je.optional()}).optional()}).optional()}),c4=ke({list:je.optional(),cancel:je.optional(),requests:ke({tools:ke({call:je.optional()}).optional()}).optional()}),u4=_({experimental:Q(d(),je).optional(),sampling:_({context:je.optional(),tools:je.optional()}).optional(),elicitation:i4.optional(),roots:_({listChanged:q().optional()}).optional(),tasks:a4.optional(),extensions:Q(d(),je).optional()}),l4=mt.extend({protocolVersion:d(),capabilities:u4,clientInfo:L$}),p4=Ze.extend({method:R("initialize"),params:l4});var d4=_({experimental:Q(d(),je).optional(),logging:je.optional(),completions:je.optional(),prompts:_({listChanged:q().optional()}).optional(),resources:_({subscribe:q().optional(),listChanged:q().optional()}).optional(),tools:_({listChanged:q().optional()}).optional(),tasks:c4.optional(),extensions:Q(d(),je).optional()}),xf=Be.extend({protocolVersion:d(),capabilities:d4,serverInfo:L$,instructions:d().optional()}),j$=Et.extend({method:R("notifications/initialized"),params:kt.optional()}),M$=(e)=>j$.safeParse(e).success,jc=Ze.extend({method:R("ping"),params:mt.optional()}),f4=_({progress:A(),total:ve(A()),message:ve(d())}),m4=_({...kt.shape,...f4.shape,progressToken:A$}),Mc=Et.extend({method:R("notifications/progress"),params:m4}),h4=mt.extend({cursor:I$.optional()}),ti=Ze.extend({params:h4.optional()}),ri=Be.extend({nextCursor:I$.optional()}),g4=j(["working","input_required","completed","failed","cancelled"]),ni=_({taskId:d(),status:g4,ttl:ue([A(),sa()]),createdAt:d(),lastUpdatedAt:d(),pollInterval:ve(A()),statusMessage:ve(d())}),xn=Be.extend({task:ni}),y4=kt.merge(ni),oi=Et.extend({method:R("notifications/tasks/status"),params:y4}),Dc=Ze.extend({method:R("tasks/get"),params:mt.extend({taskId:d()})}),qc=Be.merge(ni),Fc=Ze.extend({method:R("tasks/result"),params:mt.extend({taskId:d()})}),kie=Be.loose(),Uc=ti.extend({method:R("tasks/list")}),Vc=ri.extend({tasks:T(ni)}),Zc=Ze.extend({method:R("tasks/cancel"),params:mt.extend({taskId:d()})}),D$=Be.merge(ni),q$=_({uri:d(),mimeType:ve(d()),_meta:Q(d(),fe()).optional()}),F$=q$.extend({text:d()}),$f=d().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),U$=q$.extend({blob:$f}),si=j(["user","assistant"]),po=_({audience:T(si).optional(),priority:A().min(0).max(1).optional(),lastModified:vw({offset:!0}).optional()}),V$=_({...uo.shape,...ei.shape,uri:d(),description:ve(d()),mimeType:ve(d()),size:ve(A()),annotations:po.optional(),_meta:ve(ke({}))}),b4=_({...uo.shape,...ei.shape,uriTemplate:d(),description:ve(d()),mimeType:ve(d()),annotations:po.optional(),_meta:ve(ke({}))}),_4=ti.extend({method:R("resources/list")}),kf=ri.extend({resources:T(V$)}),w4=ti.extend({method:R("resources/templates/list")}),Ef=ri.extend({resourceTemplates:T(b4)}),Tf=mt.extend({uri:d()}),v4=Tf,S4=Ze.extend({method:R("resources/read"),params:v4}),Pf=Be.extend({contents:T(ue([F$,U$]))}),Af=Et.extend({method:R("notifications/resources/list_changed"),params:kt.optional()}),x4=Tf,$4=Ze.extend({method:R("resources/subscribe"),params:x4}),k4=Tf,E4=Ze.extend({method:R("resources/unsubscribe"),params:k4}),T4=kt.extend({uri:d()}),P4=Et.extend({method:R("notifications/resources/updated"),params:T4}),A4=_({name:d(),description:ve(d()),required:ve(q())}),I4=_({...uo.shape,...ei.shape,description:ve(d()),arguments:ve(T(A4)),_meta:ve(ke({}))}),O4=ti.extend({method:R("prompts/list")}),If=ri.extend({prompts:T(I4)}),C4=mt.extend({name:d(),arguments:Q(d(),d()).optional()}),R4=Ze.extend({method:R("prompts/get"),params:C4}),Of=_({type:R("text"),text:d(),annotations:po.optional(),_meta:Q(d(),fe()).optional()}),Cf=_({type:R("image"),data:$f,mimeType:d(),annotations:po.optional(),_meta:Q(d(),fe()).optional()}),Rf=_({type:R("audio"),data:$f,mimeType:d(),annotations:po.optional(),_meta:Q(d(),fe()).optional()}),z4=_({type:R("tool_use"),name:d(),id:d(),input:Q(d(),fe()),_meta:Q(d(),fe()).optional()}),N4=_({type:R("resource"),resource:ue([F$,U$]),annotations:po.optional(),_meta:Q(d(),fe()).optional()}),L4=V$.extend({type:R("resource_link")}),zf=ue([Of,Cf,Rf,L4,N4]),j4=_({role:si,content:zf}),Nf=Be.extend({description:d().optional(),messages:T(j4)}),Lf=Et.extend({method:R("notifications/prompts/list_changed"),params:kt.optional()}),M4=_({title:d().optional(),readOnlyHint:q().optional(),destructiveHint:q().optional(),idempotentHint:q().optional(),openWorldHint:q().optional()}),D4=_({taskSupport:j(["required","optional","forbidden"]).optional()}),Z$=_({...uo.shape,...ei.shape,description:d().optional(),inputSchema:_({type:R("object"),properties:Q(d(),je).optional(),required:T(d()).optional()}).catchall(fe()),outputSchema:_({type:R("object"),properties:Q(d(),je).optional(),required:T(d()).optional()}).catchall(fe()).optional(),annotations:M4.optional(),execution:D4.optional(),_meta:Q(d(),fe()).optional()}),q4=ti.extend({method:R("tools/list")}),jf=ri.extend({tools:T(Z$)}),dr=Be.extend({content:T(zf).default([]),structuredContent:Q(d(),fe()).optional(),isError:q().optional()}),Eie=dr.or(Be.extend({toolResult:fe()})),F4=Xs.extend({name:d(),arguments:Q(d(),fe()).optional()}),U4=Ze.extend({method:R("tools/call"),params:F4}),Mf=Et.extend({method:R("notifications/tools/list_changed"),params:kt.optional()}),B$=_({autoRefresh:q().default(!0),debounceMs:A().int().nonnegative().default(300)}),W$=j(["debug","info","notice","warning","error","critical","alert","emergency"]),V4=mt.extend({level:W$}),Z4=Ze.extend({method:R("logging/setLevel"),params:V4}),B4=kt.extend({level:W$,logger:d().optional(),data:fe()}),W4=Et.extend({method:R("notifications/message"),params:B4}),H4=_({name:d().optional()}),K4=_({hints:T(H4).optional(),costPriority:A().min(0).max(1).optional(),speedPriority:A().min(0).max(1).optional(),intelligencePriority:A().min(0).max(1).optional()}),G4=_({mode:j(["auto","required","none"]).optional()}),J4=_({type:R("tool_result"),toolUseId:d().describe("The unique identifier for the corresponding tool call."),content:T(zf).default([]),structuredContent:_({}).loose().optional(),isError:q().optional(),_meta:Q(d(),fe()).optional()}),Y4=xr("type",[Of,Cf,Rf]),Cc=xr("type",[Of,Cf,Rf,z4,J4]),X4=_({role:si,content:ue([Cc,T(Cc)]),_meta:Q(d(),fe()).optional()}),Q4=Xs.extend({messages:T(X4),modelPreferences:K4.optional(),systemPrompt:d().optional(),includeContext:j(["none","thisServer","allServers"]).optional(),temperature:A().optional(),maxTokens:A().int(),stopSequences:T(d()).optional(),metadata:je.optional(),tools:T(Z$).optional(),toolChoice:G4.optional()}),Df=Ze.extend({method:R("sampling/createMessage"),params:Q4}),qf=Be.extend({model:d(),stopReason:ve(j(["endTurn","stopSequence","maxTokens"]).or(d())),role:si,content:Y4}),Ff=Be.extend({model:d(),stopReason:ve(j(["endTurn","stopSequence","maxTokens","toolUse"]).or(d())),role:si,content:ue([Cc,T(Cc)])}),e9=_({type:R("boolean"),title:d().optional(),description:d().optional(),default:q().optional()}),t9=_({type:R("string"),title:d().optional(),description:d().optional(),minLength:A().optional(),maxLength:A().optional(),format:j(["email","uri","date","date-time"]).optional(),default:d().optional()}),r9=_({type:j(["number","integer"]),title:d().optional(),description:d().optional(),minimum:A().optional(),maximum:A().optional(),default:A().optional()}),n9=_({type:R("string"),title:d().optional(),description:d().optional(),enum:T(d()),default:d().optional()}),o9=_({type:R("string"),title:d().optional(),description:d().optional(),oneOf:T(_({const:d(),title:d()})),default:d().optional()}),s9=_({type:R("string"),title:d().optional(),description:d().optional(),enum:T(d()),enumNames:T(d()).optional(),default:d().optional()}),i9=ue([n9,o9]),a9=_({type:R("array"),title:d().optional(),description:d().optional(),minItems:A().optional(),maxItems:A().optional(),items:_({type:R("string"),enum:T(d())}),default:T(d()).optional()}),c9=_({type:R("array"),title:d().optional(),description:d().optional(),minItems:A().optional(),maxItems:A().optional(),items:_({anyOf:T(_({const:d(),title:d()}))}),default:T(d()).optional()}),u9=ue([a9,c9]),l9=ue([s9,i9,u9]),p9=ue([l9,e9,t9,r9]),d9=Xs.extend({mode:R("form").optional(),message:d(),requestedSchema:_({type:R("object"),properties:Q(d(),p9),required:T(d()).optional()})}),f9=Xs.extend({mode:R("url"),message:d(),elicitationId:d(),url:d().url()}),m9=ue([d9,f9]),Uf=Ze.extend({method:R("elicitation/create"),params:m9}),h9=kt.extend({elicitationId:d()}),g9=Et.extend({method:R("notifications/elicitation/complete"),params:h9}),Vf=Be.extend({action:j(["accept","decline","cancel"]),content:aa((e)=>e===null?void 0:e,Q(d(),ue([d(),A(),q(),T(d())])).optional())}),y9=_({type:R("ref/resource"),uri:d()});var b9=_({type:R("ref/prompt"),name:d()}),_9=mt.extend({ref:ue([b9,y9]),argument:_({name:d(),value:d()}),context:_({arguments:Q(d(),d()).optional()}).optional()}),w9=Ze.extend({method:R("completion/complete"),params:_9});var Zf=Be.extend({completion:ke({values:T(d()).max(100),total:ve(A().int()),hasMore:ve(q())})}),v9=_({uri:d().startsWith("file://"),name:d().optional(),_meta:Q(d(),fe()).optional()}),S9=Ze.extend({method:R("roots/list"),params:mt.optional()}),x9=Be.extend({roots:T(v9)}),$9=Et.extend({method:R("notifications/roots/list_changed"),params:kt.optional()}),Tie=ue([jc,p4,w9,Z4,R4,O4,_4,w4,S4,$4,E4,U4,q4,Dc,Fc,Uc,Zc]),Pie=ue([Lc,Mc,j$,$9,oi]),Aie=ue([Sn,qf,Ff,Vf,x9,qc,Vc,xn]),Iie=ue([jc,Df,Uf,S9,Dc,Fc,Uc,Zc]),Oie=ue([Lc,Mc,W4,P4,Af,Mf,Lf,oi,g9]),Cie=ue([Sn,xf,Zf,Nf,If,kf,Ef,Pf,dr,jf,qc,Vc,xn]);class B 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 H$(n.elicitations,t)}return new B(e,t,r)}}class H$ extends B{constructor(e,t=`URL elicitation${e.length>1?"s":""} required`){super(H.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}function Mr(e){return e==="completed"||e==="failed"||e==="cancelled"}var k9=Symbol("Let zodToJsonSchema decide on which parser to use");var pae=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Bf(e){let r=Ic(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=Oc(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function Wf(e,t){let r=Lt(e,t);if(!r.success)throw r.error;return r.data}var O9=60000;class Hf{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(Lc,(t)=>{this._oncancel(t)}),this.setNotificationHandler(Mc,(t)=>{this._onprogress(t)}),this.setRequestHandler(jc,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(Dc,async(t,r)=>{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new B(H.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(Fc,async(t,r)=>{let n=async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new B(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,p=new B(l.error.code,l.error.message,l.error.data);u(p)}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 B(H.InvalidParams,`Task not found: ${o}`);if(!Mr(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(Mr(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[jr]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(Uc,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 B(H.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(Zc,async(t,r)=>{try{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new B(H.InvalidParams,`Task not found: ${t.params.taskId}`);if(Mr(n.status))throw new B(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 B(H.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(n){if(n instanceof B)throw n;throw new B(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),B.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),vn(o)||N$(o))this._onresponse(o);else if(Qs(o))this._onrequest(o,s);else if(z$(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=B.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?.[jr]?.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 B(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=O$(e.params)?e.params.task:void 0,p=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 B(H.ConnectionClosed,"Request was cancelled");let y={...g,relatedRequestId:e.id};if(o&&!y.relatedTask)y.relatedTask={taskId:o};let w=y.relatedTask?.taskId??o;if(w&&p)await p.updateTaskStatus(w,"input_required");return await this.request(m,h,y)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:o,taskStore:p,taskRequestedTtl:l?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};(c??Promise.resolve()).then(()=>{if(c&&u.signal.aborted)throw new B(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),vn(e))r(e);else{let s=new B(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(vn(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(vn(e))n(e);else{let s=B.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 B?s:new B(H.InternalError,String(s))}}return}let o;try{let s=await this.request(e,xn,r);if(s.task)o=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new B(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},Mr(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 B(H.InternalError,`Task ${o} failed`)};else if(i.status==="cancelled")yield{type:"error",error:new B(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 B?s:new B(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=(w)=>{u(w)};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(w){l(w);return}r?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};if(r?.onprogress)this._progressHandlers.set(p,r.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}};if(i)f.params={...f.params,task:i};if(a)f.params={...f.params,_meta:{...f.params?._meta||{},[jr]:a}};let m=(w)=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(w)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((x)=>this._onerror(Error(`Failed to send cancellation: ${x}`)));let E=w instanceof B?w:new B(H.RequestTimeout,String(w));u(E)};this._responseHandlers.set(p,(w)=>{if(r?.signal?.aborted)return;if(w instanceof Error)return u(w);try{let E=Lt(t,w.result);if(!E.success)u(E.error);else c(E.data)}catch(E){u(E)}}),r?.signal?.addEventListener("abort",()=>{m(r?.signal?.reason)});let h=r?.timeout??O9,g=()=>m(B.fromError(H.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,r?.maxTotalTimeout,g,r?.resetTimeoutOnProgress??!1);let y=a?.taskId;if(y){let w=(E)=>{let x=this._responseHandlers.get(p);if(x)x(E);else this._onerror(Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,w),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch((E)=>{this._cleanupTimeout(p),u(E)})}else this._transport.send(f,{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((w)=>{this._cleanupTimeout(p),u(w)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},qc,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},Vc,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},D$,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||{},[jr]: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||{},[jr]: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||{},[jr]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=Bf(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=Wf(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=Bf(e);this._notificationHandlers.set(r,(n)=>{let o=Wf(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"&&Qs(n.message)){let o=n.message.id,s=this._requestResolvers.get(o);if(s)s(new B(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 B(H.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);t.addEventListener("abort",()=>{clearTimeout(i),s(new B(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 B(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=oi.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),Mr(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 B(H.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(Mr(i.status))throw new B(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=oi.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),Mr(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function K$(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function G$(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(K$(i)&&K$(s))r[o]={...i,...s};else r[o]=s}return r}var XA=Cn(Om(),1),QA=Cn(YA(),1);function g5(){let e=new XA.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return QA.default(e),e}class qm{constructor(e){this._ajv=e??g5()}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 Fm{constructor(e){this._client=e}async*callToolStream(e,t=dr,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 B(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 B(H.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof B){yield{type:"error",error:u};return}yield{type:"error",error:new B(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 eI(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 tI(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 Cu(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)Cu(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")Cu(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")Cu(r,t)}}function y5(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 Um extends Hf{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 qm,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",Mf,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",Lf,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",Af,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new Fm(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=G$(this._capabilities,e)}setRequestHandler(e,t){let n=Ic(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=Oc(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=Lt(Uf,a);if(!u.success){let w=u.error instanceof Error?u.error.message:String(u.error);throw new B(H.InvalidParams,`Invalid elicitation request: ${w}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:p,supportsUrlMode:f}=y5(this._capabilities.elicitation);if(l.mode==="form"&&!p)throw new B(H.InvalidParams,"Client does not support form-mode elicitation requests");if(l.mode==="url"&&!f)throw new B(H.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(t(a,c));if(l.task){let w=Lt(xn,m);if(!w.success){let E=w.error instanceof Error?w.error.message:String(w.error);throw new B(H.InvalidParams,`Invalid task creation result: ${E}`)}return w.data}let h=Lt(Vf,m);if(!h.success){let w=h.error instanceof Error?h.error.message:String(h.error);throw new B(H.InvalidParams,`Invalid elicitation result: ${w}`)}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{Cu(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Lt(Df,a);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new B(H.InvalidParams,`Invalid sampling request: ${g}`)}let{params:l}=u.data,p=await Promise.resolve(t(a,c));if(l.task){let g=Lt(xn,p);if(!g.success){let y=g.error instanceof Error?g.error.message:String(g.error);throw new B(H.InvalidParams,`Invalid task creation result: ${y}`)}return g.data}let m=l.tools||l.toolChoice?Ff:qf,h=Lt(m,p);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new B(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:lo,capabilities:this._capabilities,clientInfo:this._clientInfo}},xf,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!P$.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){eI(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;tI(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Sn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},Zf,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Sn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},Nf,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},If,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},kf,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},Ef,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},Pf,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Sn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Sn,t)}async callTool(e,t=dr,r){if(this.isToolTaskRequired(e.name))throw new B(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 B(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 B(H.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){if(s instanceof B)throw s;throw new B(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},jf,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=B$.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 p=l instanceof Error?l:Error(String(l));a(p,null)}},u=()=>{if(i){let l=this._listChangedDebounceTimers.get(e);if(l)clearTimeout(l);let p=setTimeout(c,i);this._listChangedDebounceTimers.set(e,p)}else c()};this.setNotificationHandler(t,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}/*!
|
|
529
|
+
`),t0(vt.default.dim("Setting up Tripwire in your coding agents")),i.length===0)return Re.warn("No AI coding tools found"),ti("Install a supported coding agent, then run this again."),1;Re.step(`Detected ${bT.format(i.map(({agent:h})=>h.name))}`);let c=i;if(s){let h=await YH(i);if(h===null)return Ec("Cancelled"),1;c=h}if(c.length===0)return ti("No agents selected"),0;let u=s?r0():null;u?.start("Installing the Tripwire MCP and skill");let l=await Promise.all(c.map(async({agent:h})=>({agent:h,result:await yh(h,r,a)})));if(u?.stop("Installed the Tripwire MCP and skill"),!u)Re.step("Installed the Tripwire MCP and skill");for(let h of l)(h.result.kind==="done"?Re.success:Re.error)(`${h.agent.name}
|
|
530
|
+
${GH(e,h)}`);let d=!0;if(s){if(d=await XH(e,l),l.some(({result:h})=>h.kind==="done"))await eK(e,n)}else QH(l,o,n);let f=l.filter(({result:h})=>h.kind==="done").map(({agent:h})=>h.name);if(f.length>0)ti(`Done. Restart ${bT.format(f)}.`);else ti("Nothing was installed");return l.every(({result:h})=>h.kind==="done")&&d?0:1}import{chmodSync as tK,mkdirSync as rK,readFileSync as nK,renameSync as oK,rmSync as sK,writeFileSync as iK}from"node:fs";import{join as bh}from"node:path";var aK=b({accessToken:p().min(1),refreshToken:p().min(1).optional(),expiresAt:P().optional(),mcpUrl:p(),authUrl:p()}),Tu="tripwire-cli",Ou="default";function _h(e){if(!e)return null;try{let t=aK.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function cK(e){return bh(e.env.XDG_CONFIG_HOME||bh(e.home,".config"),"tripwire","credentials.json")}function wh(e){let t=cK(e);return{kind:"file",location:t,read:async()=>{try{return _h(nK(t,"utf8"))}catch{return null}},write:async(r)=>{let n=bh(t,"..");rK(n,{recursive:!0,mode:448});let o=`${t}.${process.pid}.tmp`;iK(o,JSON.stringify(r),{mode:384}),tK(o,384),oK(o,t)},clear:async()=>{sK(t,{force:!0})}}}function uK(e){return Buffer.from(e,"utf8").toString("hex")}function lK(e,t){return{kind:"keychain",location:"macOS keychain",read:async()=>{let r=await e.run(t,["find-generic-password","-a",Ou,"-s",Tu,"-w"]);return r.ok?_h(r.stdout):null},write:async(r)=>{let n=`add-generic-password -U -a ${Ou} -s ${Tu} -l Tripwire -X ${uK(JSON.stringify(r))}
|
|
531
|
+
`;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",Ou,"-s",Tu])}}}function dK(e,t){let r=["service",Tu,"account",Ou];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?_h(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 vT(e,t){let r=wh(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 Io(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return wh(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return vT(lK(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return vT(dK(e,t),e)}return wh(e)}class Ri extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var pK=30000;async function vh(e,t){let r=to(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=Io(e),s=await o.read();if(!s)throw new Ri;if(s.expiresAt&&s.expiresAt-pK<t.now()){let i=await AS(t,s).catch((a)=>{if(a instanceof zs)throw a;throw new Ri("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 Pu(e){return!!e._zod}function Wt(e,t){if(Pu(e))return _d(e,t);return e.safeParse(t)}function Au(e){if(!e)return;let t;if(Pu(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 Iu(e){if(Pu(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 Co="2025-11-25";var ST=[Co,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Jr="io.modelcontextprotocol/related-task",Cu="2.0",Me=Ba((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),xT=re([p(),P().int()]),kT=p(),Gfe=Ee({ttl:P().optional(),pollInterval:P().optional()}),hK=b({ttl:P().optional()}),gK=b({taskId:p()}),Sh=Ee({progressToken:xT.optional(),[Jr]:gK.optional()}),St=b({_meta:Sh.optional()}),Ci=St.extend({task:hK.optional()}),$T=(e)=>Ci.safeParse(e).success,Ge=b({method:p(),params:St.loose().optional()}),Rt=b({_meta:Sh.optional()}),Ct=b({method:p(),params:Rt.loose().optional()}),Je=Ee({_meta:Sh.optional()}),zu=re([p(),P().int()]),ET=b({jsonrpc:C(Cu),id:zu,...Ge.shape}).strict(),zi=(e)=>ET.safeParse(e).success,TT=b({jsonrpc:C(Cu),...Ct.shape}).strict(),OT=(e)=>TT.safeParse(e).success,xh=b({jsonrpc:C(Cu),id:zu,result:Je}).strict(),jn=(e)=>xh.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 kh=b({jsonrpc:C(Cu),id:zu.optional(),error:b({code:P().int(),message:p(),data:de().optional()})}).strict();var PT=(e)=>kh.safeParse(e).success;var Nu=re([ET,TT,xh,kh]),Jfe=re([xh,kh]),Dn=Je.strict(),yK=Rt.extend({requestId:zu.optional(),reason:p().optional()}),Lu=Ct.extend({method:C("notifications/cancelled"),params:yK}),bK=b({src:p(),mimeType:p().optional(),sizes:k(p()).optional(),theme:z(["light","dark"]).optional()}),Ni=b({icons:k(bK).optional()}),Ro=b({name:p(),title:p().optional()}),AT=Ro.extend({...Ro.shape,...Ni.shape,version:p(),websiteUrl:p().optional(),description:p().optional()}),wK=Za(b({applyDefaults:D().optional()}),J(p(),de())),_K=Ha((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},Za(b({form:wK.optional(),url:Me.optional()}),J(p(),de()).optional())),vK=Ee({list:Me.optional(),cancel:Me.optional(),requests:Ee({sampling:Ee({createMessage:Me.optional()}).optional(),elicitation:Ee({create:Me.optional()}).optional()}).optional()}),SK=Ee({list:Me.optional(),cancel:Me.optional(),requests:Ee({tools:Ee({call:Me.optional()}).optional()}).optional()}),xK=b({experimental:J(p(),Me).optional(),sampling:b({context:Me.optional(),tools:Me.optional()}).optional(),elicitation:_K.optional(),roots:b({listChanged:D().optional()}).optional(),tasks:vK.optional(),extensions:J(p(),Me).optional()}),kK=St.extend({protocolVersion:p(),capabilities:xK,clientInfo:AT}),$K=Ge.extend({method:C("initialize"),params:kK});var EK=b({experimental:J(p(),Me).optional(),logging:Me.optional(),completions:Me.optional(),prompts:b({listChanged:D().optional()}).optional(),resources:b({subscribe:D().optional(),listChanged:D().optional()}).optional(),tools:b({listChanged:D().optional()}).optional(),tasks:SK.optional(),extensions:J(p(),Me).optional()}),$h=Je.extend({protocolVersion:p(),capabilities:EK,serverInfo:AT,instructions:p().optional()}),IT=Ct.extend({method:C("notifications/initialized"),params:Rt.optional()}),RT=(e)=>IT.safeParse(e).success,ju=Ge.extend({method:C("ping"),params:St.optional()}),TK=b({progress:P(),total:Se(P()),message:Se(p())}),OK=b({...Rt.shape,...TK.shape,progressToken:xT}),Du=Ct.extend({method:C("notifications/progress"),params:OK}),PK=St.extend({cursor:kT.optional()}),Li=Ge.extend({params:PK.optional()}),ji=Je.extend({nextCursor:kT.optional()}),AK=z(["working","input_required","completed","failed","cancelled"]),Di=b({taskId:p(),status:AK,ttl:re([P(),Va()]),createdAt:p(),lastUpdatedAt:p(),pollInterval:Se(P()),statusMessage:Se(p())}),Mn=Je.extend({task:Di}),IK=Rt.merge(Di),Mi=Ct.extend({method:C("notifications/tasks/status"),params:IK}),Mu=Ge.extend({method:C("tasks/get"),params:St.extend({taskId:p()})}),qu=Je.merge(Di),Fu=Ge.extend({method:C("tasks/result"),params:St.extend({taskId:p()})}),Yfe=Je.loose(),Uu=Li.extend({method:C("tasks/list")}),Wu=ji.extend({tasks:k(Di)}),Vu=Ge.extend({method:C("tasks/cancel"),params:St.extend({taskId:p()})}),CT=Je.merge(Di),zT=b({uri:p(),mimeType:Se(p()),_meta:J(p(),de()).optional()}),NT=zT.extend({text:p()}),Eh=p().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),LT=zT.extend({blob:Eh}),qi=z(["user","assistant"]),zo=b({audience:k(qi).optional(),priority:P().min(0).max(1).optional(),lastModified:yS({offset:!0}).optional()}),jT=b({...Ro.shape,...Ni.shape,uri:p(),description:Se(p()),mimeType:Se(p()),size:Se(P()),annotations:zo.optional(),_meta:Se(Ee({}))}),RK=b({...Ro.shape,...Ni.shape,uriTemplate:p(),description:Se(p()),mimeType:Se(p()),annotations:zo.optional(),_meta:Se(Ee({}))}),CK=Li.extend({method:C("resources/list")}),Th=ji.extend({resources:k(jT)}),zK=Li.extend({method:C("resources/templates/list")}),Oh=ji.extend({resourceTemplates:k(RK)}),Ph=St.extend({uri:p()}),NK=Ph,LK=Ge.extend({method:C("resources/read"),params:NK}),Ah=Je.extend({contents:k(re([NT,LT]))}),Ih=Ct.extend({method:C("notifications/resources/list_changed"),params:Rt.optional()}),jK=Ph,DK=Ge.extend({method:C("resources/subscribe"),params:jK}),MK=Ph,qK=Ge.extend({method:C("resources/unsubscribe"),params:MK}),FK=Rt.extend({uri:p()}),UK=Ct.extend({method:C("notifications/resources/updated"),params:FK}),WK=b({name:p(),description:Se(p()),required:Se(D())}),VK=b({...Ro.shape,...Ni.shape,description:Se(p()),arguments:Se(k(WK)),_meta:Se(Ee({}))}),ZK=Li.extend({method:C("prompts/list")}),Rh=ji.extend({prompts:k(VK)}),BK=St.extend({name:p(),arguments:J(p(),p()).optional()}),HK=Ge.extend({method:C("prompts/get"),params:BK}),Ch=b({type:C("text"),text:p(),annotations:zo.optional(),_meta:J(p(),de()).optional()}),zh=b({type:C("image"),data:Eh,mimeType:p(),annotations:zo.optional(),_meta:J(p(),de()).optional()}),Nh=b({type:C("audio"),data:Eh,mimeType:p(),annotations:zo.optional(),_meta:J(p(),de()).optional()}),KK=b({type:C("tool_use"),name:p(),id:p(),input:J(p(),de()),_meta:J(p(),de()).optional()}),GK=b({type:C("resource"),resource:re([NT,LT]),annotations:zo.optional(),_meta:J(p(),de()).optional()}),JK=jT.extend({type:C("resource_link")}),Lh=re([Ch,zh,Nh,JK,GK]),YK=b({role:qi,content:Lh}),jh=Je.extend({description:p().optional(),messages:k(YK)}),Dh=Ct.extend({method:C("notifications/prompts/list_changed"),params:Rt.optional()}),XK=b({title:p().optional(),readOnlyHint:D().optional(),destructiveHint:D().optional(),idempotentHint:D().optional(),openWorldHint:D().optional()}),QK=b({taskSupport:z(["required","optional","forbidden"]).optional()}),DT=b({...Ro.shape,...Ni.shape,description:p().optional(),inputSchema:b({type:C("object"),properties:J(p(),Me).optional(),required:k(p()).optional()}).catchall(de()),outputSchema:b({type:C("object"),properties:J(p(),Me).optional(),required:k(p()).optional()}).catchall(de()).optional(),annotations:XK.optional(),execution:QK.optional(),_meta:J(p(),de()).optional()}),eG=Li.extend({method:C("tools/list")}),Mh=ji.extend({tools:k(DT)}),kr=Je.extend({content:k(Lh).default([]),structuredContent:J(p(),de()).optional(),isError:D().optional()}),Xfe=kr.or(Je.extend({toolResult:de()})),tG=Ci.extend({name:p(),arguments:J(p(),de()).optional()}),rG=Ge.extend({method:C("tools/call"),params:tG}),qh=Ct.extend({method:C("notifications/tools/list_changed"),params:Rt.optional()}),MT=b({autoRefresh:D().default(!0),debounceMs:P().int().nonnegative().default(300)}),qT=z(["debug","info","notice","warning","error","critical","alert","emergency"]),nG=St.extend({level:qT}),oG=Ge.extend({method:C("logging/setLevel"),params:nG}),sG=Rt.extend({level:qT,logger:p().optional(),data:de()}),iG=Ct.extend({method:C("notifications/message"),params:sG}),aG=b({name:p().optional()}),cG=b({hints:k(aG).optional(),costPriority:P().min(0).max(1).optional(),speedPriority:P().min(0).max(1).optional(),intelligencePriority:P().min(0).max(1).optional()}),uG=b({mode:z(["auto","required","none"]).optional()}),lG=b({type:C("tool_result"),toolUseId:p().describe("The unique identifier for the corresponding tool call."),content:k(Lh).default([]),structuredContent:b({}).loose().optional(),isError:D().optional(),_meta:J(p(),de()).optional()}),dG=yr("type",[Ch,zh,Nh]),Ru=yr("type",[Ch,zh,Nh,KK,lG]),pG=b({role:qi,content:re([Ru,k(Ru)]),_meta:J(p(),de()).optional()}),fG=Ci.extend({messages:k(pG),modelPreferences:cG.optional(),systemPrompt:p().optional(),includeContext:z(["none","thisServer","allServers"]).optional(),temperature:P().optional(),maxTokens:P().int(),stopSequences:k(p()).optional(),metadata:Me.optional(),tools:k(DT).optional(),toolChoice:uG.optional()}),Fh=Ge.extend({method:C("sampling/createMessage"),params:fG}),Uh=Je.extend({model:p(),stopReason:Se(z(["endTurn","stopSequence","maxTokens"]).or(p())),role:qi,content:dG}),Wh=Je.extend({model:p(),stopReason:Se(z(["endTurn","stopSequence","maxTokens","toolUse"]).or(p())),role:qi,content:re([Ru,k(Ru)])}),mG=b({type:C("boolean"),title:p().optional(),description:p().optional(),default:D().optional()}),hG=b({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()}),gG=b({type:z(["number","integer"]),title:p().optional(),description:p().optional(),minimum:P().optional(),maximum:P().optional(),default:P().optional()}),yG=b({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),default:p().optional()}),bG=b({type:C("string"),title:p().optional(),description:p().optional(),oneOf:k(b({const:p(),title:p()})),default:p().optional()}),wG=b({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),enumNames:k(p()).optional(),default:p().optional()}),_G=re([yG,bG]),vG=b({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:b({type:C("string"),enum:k(p())}),default:k(p()).optional()}),SG=b({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:b({anyOf:k(b({const:p(),title:p()}))}),default:k(p()).optional()}),xG=re([vG,SG]),kG=re([wG,_G,xG]),$G=re([kG,mG,hG,gG]),EG=Ci.extend({mode:C("form").optional(),message:p(),requestedSchema:b({type:C("object"),properties:J(p(),$G),required:k(p()).optional()})}),TG=Ci.extend({mode:C("url"),message:p(),elicitationId:p(),url:p().url()}),OG=re([EG,TG]),Vh=Ge.extend({method:C("elicitation/create"),params:OG}),PG=Rt.extend({elicitationId:p()}),AG=Ct.extend({method:C("notifications/elicitation/complete"),params:PG}),Zh=Je.extend({action:z(["accept","decline","cancel"]),content:Ha((e)=>e===null?void 0:e,J(p(),re([p(),P(),D(),k(p())])).optional())}),IG=b({type:C("ref/resource"),uri:p()});var RG=b({type:C("ref/prompt"),name:p()}),CG=St.extend({ref:re([RG,IG]),argument:b({name:p(),value:p()}),context:b({arguments:J(p(),p()).optional()}).optional()}),zG=Ge.extend({method:C("completion/complete"),params:CG});var Bh=Je.extend({completion:Ee({values:k(p()).max(100),total:Se(P().int()),hasMore:Se(D())})}),NG=b({uri:p().startsWith("file://"),name:p().optional(),_meta:J(p(),de()).optional()}),LG=Ge.extend({method:C("roots/list"),params:St.optional()}),jG=Je.extend({roots:k(NG)}),DG=Ct.extend({method:C("notifications/roots/list_changed"),params:Rt.optional()}),Qfe=re([ju,$K,zG,oG,HK,ZK,CK,zK,LK,DK,qK,rG,eG,Mu,Fu,Uu,Vu]),eme=re([Lu,Du,IT,DG,Mi]),tme=re([Dn,Uh,Wh,Zh,jG,qu,Wu,Mn]),rme=re([ju,Fh,Vh,LG,Mu,Fu,Uu,Vu]),nme=re([Lu,Du,iG,UK,Ih,qh,Dh,Mi,AG]),ome=re([Dn,$h,Bh,jh,Rh,Th,Oh,Ah,kr,Mh,qu,Wu,Mn]);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 FT(n.elicitations,t)}return new Z(e,t,r)}}class FT 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 Yr(e){return e==="completed"||e==="failed"||e==="cancelled"}var MG=Symbol("Let zodToJsonSchema decide on which parser to use");var jme=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Hh(e){let r=Au(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=Iu(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function Kh(e,t){let r=Wt(e,t);if(!r.success)throw r.error;return r.data}var ZG=60000;class Gh{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(Lu,(t)=>{this._oncancel(t)}),this.setNotificationHandler(Du,(t)=>{this._onprogress(t)}),this.setRequestHandler(ju,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(Mu,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(Fu,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(!Yr(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(Yr(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[Jr]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(Uu,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(Vu,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(Yr(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),jn(o)||PT(o))this._onresponse(o);else if(zi(o))this._onrequest(o,s);else if(OT(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?.[Jr]?.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=$T(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 _=y.relatedTask?.taskId??o;if(_&&d)await d.updateTaskStatus(_,"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),jn(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(jn(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(jn(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,Mn,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},Yr(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=(_)=>{u(_)};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(_){l(_);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||{},[Jr]:a}};let m=(_)=>{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(_)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((x)=>this._onerror(Error(`Failed to send cancellation: ${x}`)));let T=_ instanceof Z?_:new Z(H.RequestTimeout,String(_));u(T)};this._responseHandlers.set(d,(_)=>{if(r?.signal?.aborted)return;if(_ instanceof Error)return u(_);try{let T=Wt(t,_.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??ZG,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 _=(T)=>{let x=this._responseHandlers.get(d);if(x)x(T);else this._onerror(Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,_),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((_)=>{this._cleanupTimeout(d),u(_)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},qu,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},Wu,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},CT,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||{},[Jr]: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||{},[Jr]: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||{},[Jr]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=Hh(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=Kh(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=Hh(e);this._notificationHandlers.set(r,(n)=>{let o=Kh(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"&&zi(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=Mi.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),Yr(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(Yr(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=Mi.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),Yr(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function UT(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function WT(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(UT(i)&&UT(s))r[o]={...i,...s};else r[o]=s}return r}var BR=vn(Cg(),1),HR=vn(ZR(),1);function AX(){let e=new BR.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return HR.default(e),e}class Ug{constructor(e){this._ajv=e??AX()}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 Wg{constructor(e){this._client=e}async*callToolStream(e,t=kr,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 KR(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 GR(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 Rl(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)Rl(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")Rl(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")Rl(r,t)}}function IX(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 Vg extends Gh{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 Ug,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",qh,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",Dh,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",Ih,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new Wg(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=WT(this._capabilities,e)}setRequestHandler(e,t){let n=Au(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=Iu(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=Wt(Vh,a);if(!u.success){let _=u.error instanceof Error?u.error.message:String(u.error);throw new Z(H.InvalidParams,`Invalid elicitation request: ${_}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:d,supportsUrlMode:f}=IX(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 _=Wt(Mn,m);if(!_.success){let T=_.error instanceof Error?_.error.message:String(_.error);throw new Z(H.InvalidParams,`Invalid task creation result: ${T}`)}return _.data}let h=Wt(Zh,m);if(!h.success){let _=h.error instanceof Error?h.error.message:String(h.error);throw new Z(H.InvalidParams,`Invalid elicitation result: ${_}`)}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{Rl(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Wt(Fh,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=Wt(Mn,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?Wh:Uh,h=Wt(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:Co,capabilities:this._capabilities,clientInfo:this._clientInfo}},$h,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!ST.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){KR(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;GR(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Dn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},Bh,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Dn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},jh,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},Rh,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},Th,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},Oh,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},Ah,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Dn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Dn,t)}async callTool(e,t=kr,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},Mh,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=MT.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"})}}/*!
|
|
405
532
|
* content-type
|
|
406
533
|
* Copyright(c) 2015 Douglas Christopher Wilson
|
|
407
534
|
* MIT Licensed
|
|
408
|
-
*/var rI=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var b5=/\\([\u000b\u0020-\u00ff])/g;var _5=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var nI=w5;function w5(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?v5(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(!_5.test(n))throw TypeError("invalid media type");var o=new S5(n.toLowerCase());if(r!==-1){var s,i,a;rI.lastIndex=r;while(i=rI.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(b5,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function v5(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 S5(e){this.parameters=Object.create(null),this.type=e}function oI(e){if(!e)return;try{return nI(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function Ru(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function sI(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...Ru(t.headers),...Ru(n.headers)}:t.headers};return e(r,o)}}var $5=5,k5=[301,302,303,307,308];function E5(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 iI(e,t){let r=k5.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function zu(e,t,r,n,o=0){let s=iI(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===$5||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!E5(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>zu(e,s,r,u,o+1)??u)}var aI=new WeakSet;function Vm(e){let t=(r,n)=>(e??fetch)(r,n);return aI.add(t),t}function An(e=fetch){if(aI.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)=>zu(e,t,r,n)??n)}}function Nu(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=iI(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 Zm;Zm=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function T5(e){return(await Zm).getRandomValues(new Uint8Array(e))}async function P5(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await T5(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function A5(e){return await P5(e)}async function I5(e){let t=await(await Zm).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function Bm(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await A5(e),r=await I5(t);return{code_verifier:t,code_challenge:r}}var He=sp().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:ww.custom,message:"URL must be parseable",fatal:!0}),dl}).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"}),uI=ke({resource:d().url(),authorization_servers:T(He).optional(),jwks_uri:d().url().optional(),scopes_supported:T(d()).optional(),bearer_methods_supported:T(d()).optional(),resource_signing_alg_values_supported:T(d()).optional(),resource_name:d().optional(),resource_documentation:d().optional(),resource_policy_uri:d().url().optional(),resource_tos_uri:d().url().optional(),tls_client_certificate_bound_access_tokens:q().optional(),authorization_details_types_supported:T(d()).optional(),dpop_signing_alg_values_supported:T(d()).optional(),dpop_bound_access_tokens_required:q().optional()}),Wm=ke({issuer:d(),authorization_endpoint:He,token_endpoint:He,registration_endpoint:He.optional(),scopes_supported:T(d()).optional(),response_types_supported:T(d()),response_modes_supported:T(d()).optional(),grant_types_supported:T(d()).optional(),token_endpoint_auth_methods_supported:T(d()).optional(),token_endpoint_auth_signing_alg_values_supported:T(d()).optional(),service_documentation:He.optional(),revocation_endpoint:He.optional(),revocation_endpoint_auth_methods_supported:T(d()).optional(),revocation_endpoint_auth_signing_alg_values_supported:T(d()).optional(),introspection_endpoint:d().optional(),introspection_endpoint_auth_methods_supported:T(d()).optional(),introspection_endpoint_auth_signing_alg_values_supported:T(d()).optional(),code_challenge_methods_supported:T(d()).optional(),client_id_metadata_document_supported:q().optional()}),O5=ke({issuer:d(),authorization_endpoint:He,token_endpoint:He,userinfo_endpoint:He.optional(),jwks_uri:He,registration_endpoint:He.optional(),scopes_supported:T(d()).optional(),response_types_supported:T(d()),response_modes_supported:T(d()).optional(),grant_types_supported:T(d()).optional(),acr_values_supported:T(d()).optional(),subject_types_supported:T(d()),id_token_signing_alg_values_supported:T(d()),id_token_encryption_alg_values_supported:T(d()).optional(),id_token_encryption_enc_values_supported:T(d()).optional(),userinfo_signing_alg_values_supported:T(d()).optional(),userinfo_encryption_alg_values_supported:T(d()).optional(),userinfo_encryption_enc_values_supported:T(d()).optional(),request_object_signing_alg_values_supported:T(d()).optional(),request_object_encryption_alg_values_supported:T(d()).optional(),request_object_encryption_enc_values_supported:T(d()).optional(),token_endpoint_auth_methods_supported:T(d()).optional(),token_endpoint_auth_signing_alg_values_supported:T(d()).optional(),display_values_supported:T(d()).optional(),claim_types_supported:T(d()).optional(),claims_supported:T(d()).optional(),service_documentation:d().optional(),claims_locales_supported:T(d()).optional(),ui_locales_supported:T(d()).optional(),claims_parameter_supported:q().optional(),request_parameter_supported:q().optional(),request_uri_parameter_supported:q().optional(),require_request_uri_registration:q().optional(),op_policy_uri:He.optional(),op_tos_uri:He.optional(),client_id_metadata_document_supported:q().optional()}),lI=_({...O5.shape,...Wm.pick({code_challenge_methods_supported:!0}).shape}),pI=_({access_token:d(),id_token:d().optional(),token_type:d(),expires_in:AC().optional(),scope:d().optional(),refresh_token:d().optional(),issuer:d().optional().catch(void 0)}).strip(),dI=_({error:d(),error_description:d().optional(),error_uri:d().optional()}),cI=He.optional().or(R("").transform(()=>{return})),C5=_({redirect_uris:T(He),token_endpoint_auth_method:d().optional(),grant_types:T(d()).optional(),response_types:T(d()).optional(),client_name:d().optional(),client_uri:He.optional(),logo_uri:cI,scope:d().optional(),contacts:T(d()).optional(),tos_uri:cI,policy_uri:d().optional(),jwks_uri:He.optional(),jwks:uw().optional(),software_id:d().optional(),software_version:d().optional(),software_statement:d().optional()}).strip(),R5=_({client_id:d(),client_secret:d().optional(),client_id_issued_at:A().optional(),client_secret_expires_at:A().optional(),issuer:d().optional().catch(void 0)}).strip(),fI=C5.merge(R5),pde=_({error:d(),error_description:d().optional()}).strip(),dde=_({token:d(),token_type_hint:d().optional()}).strip();function mI(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function hI({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 ze 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 Lu extends ze{}Lu.errorCode="invalid_request";class zo extends ze{}zo.errorCode="invalid_client";class No extends ze{}No.errorCode="invalid_grant";class Lo extends ze{}Lo.errorCode="unauthorized_client";class ju extends ze{}ju.errorCode="unsupported_grant_type";class Mu extends ze{}Mu.errorCode="invalid_scope";class Du extends ze{}Du.errorCode="access_denied";class on extends ze{}on.errorCode="server_error";class qu extends ze{}qu.errorCode="temporarily_unavailable";class Fu extends ze{}Fu.errorCode="unsupported_response_type";class Uu extends ze{}Uu.errorCode="unsupported_token_type";class Vu extends ze{}Vu.errorCode="invalid_token";class Zu extends ze{}Zu.errorCode="method_not_allowed";class Bu extends ze{}Bu.errorCode="too_many_requests";class jo extends ze{}jo.errorCode="invalid_client_metadata";class Wu extends ze{}Wu.errorCode="insufficient_scope";class Hu extends ze{}Hu.errorCode="invalid_target";var gI={[Lu.errorCode]:Lu,[zo.errorCode]:zo,[No.errorCode]:No,[Lo.errorCode]:Lo,[ju.errorCode]:ju,[Mu.errorCode]:Mu,[Du.errorCode]:Du,[on.errorCode]:on,[qu.errorCode]:qu,[Fu.errorCode]:Fu,[Uu.errorCode]:Uu,[Vu.errorCode]:Vu,[Zu.errorCode]:Zu,[Bu.errorCode]:Bu,[jo.errorCode]:jo,[Wu.errorCode]:Wu,[Hu.errorCode]:Hu};class sn extends Error{constructor(e){super(e??"Unauthorized")}}function z5(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var Hm="code",Km="S256";function N5(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&z5(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 L5(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":j5(o,s,r);return;case"client_secret_post":M5(o,s,n);return;case"none":D5(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function j5(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 M5(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function D5(e,t){t.set("client_id",e)}async function bI(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=dI.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(gI[o]||on)(s||"",i)}catch(n){let o=e instanceof Response?Nu(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new on(s)}}function q5(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 Ym(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return q5(e.issuer,t)?e:void 0}var F5=pI.omit({issuer:!0}),U5=fI.omit({issuer:!0});function _I(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 _i(e,t){try{return await Gm(e,t)}catch(r){if(r instanceof zo||r instanceof Lo)return await e.invalidateCredentials?.("all"),await Gm(e,t);else if(r instanceof No)return await e.invalidateCredentials?.("tokens"),await Gm(e,t);throw r}}async function Gm(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 vI(c,{fetchFn:s}),!a)try{a=await wI(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 L=await G5(t,{resourceMetadataUrl:l,fetchFn:s});c=L.authorizationServerUrl,u=L.authorizationServerMetadata,a=L.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}let p=String(c),f=await Z5(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=Ym(g,p),w=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!w)throw _I(g,p);let E=y?.issuer==null?y:void 0,x=async()=>{try{if(E)await e.saveClientInformation?.({...E,issuer:p})}catch{}};if(!y){if(r!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let L=u?.client_id_metadata_document_supported===!0,G=e.clientMetadataUrl;if(G&&!V5(G))throw new jo(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${G}`);if(L&&G)y={client_id:G,issuer:p},await e.saveClientInformation?.(y);else{if(!e.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");y={...await eJ(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:p},await e.saveClientInformation(y)}}let I=!e.redirectUrl;if(r!==void 0||I){let L=await Q5(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await x(),await e.saveTokens({...L,issuer:p}),"AUTHORIZED"}let b=Ym(await e.tokens(),p);if(b?.refresh_token&&b.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(b?.refresh_token)try{let L=await X5(c,{metadata:u,clientInformation:y,refreshToken:b.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await x(),await e.saveTokens({...L,issuer:p}),"AUTHORIZED"}catch(L){if(!(L instanceof ze)||L instanceof on);else throw L}let v=e.state?await e.state():void 0,{authorizationUrl:S,codeVerifier:O}=await J5(c,{metadata:u,clientInformation:y,state:v,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(O),await e.redirectToAuthorization(S),"REDIRECT"}function V5(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function Z5(e,t,r){let n=mI(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!hI({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function Xm(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Jm(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Jm(e,"scope")||void 0,a=Jm(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Jm(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 wI(e,t,r=fetch){let n=await H5(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 uI.parse(await n.json())}async function Qm(e,t,r=fetch){try{return await An(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return Qm(e,void 0,r);else return;throw n}}function B5(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function yI(e,t,r=fetch){return await Qm(e,{"MCP-Protocol-Version":t},r)}function W5(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function H5(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??lo,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=B5(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await yI(i,s,r);if(!n?.metadataUrl&&W5(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await yI(c,s,r)}return a}function K5(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 vI(e,{fetchFn:t=fetch,protocolVersion:r=lo}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=K5(e);for(let{url:s,type:i}of o){let a=await Qm(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 Wm.parse(await a.json());else return lI.parse(await a.json())}return}async function G5(e,t){let r,n;try{if(r=await wI(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 vI(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function SI(e){return typeof e==="string"?e:e.href}async function J5(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(Hm))throw Error(`Incompatible auth server: does not support response type ${Hm}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(Km))throw Error(`Incompatible auth server: does not support code challenge method ${Km}`)}else a=new URL("/authorize",e);let c=await Bm(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",Hm),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",Km),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",SI(i));return{authorizationUrl:a,codeVerifier:u}}function Y5(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function xI(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",SI(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],p=N5(n,l);L5(p,n,c,r)}let u=await An(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await bI(u);return F5.parse(await u.json())}async function X5(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 xI(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function Q5(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),p=Ym(l,String(t));if(l&&!p)throw _I(l,String(t));return p},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=Y5(o,l,e.redirectUrl)}return a??(a=await i()),xI(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function eJ(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 An(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await bI(i);return U5.parse(await i.json())}class Ku 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 $I=10,tJ=13,In=32;function eh(e){}function TI(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=eh,onError:r=eh,onRetry:n=eh,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",p=0,f,m=!1;function h(b){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,b.charCodeAt(0)===239&&b.charCodeAt(1)===187&&b.charCodeAt(2)===191&&(b=b.slice(3))),i.length===0){let O=y(b);O!==""&&(i.push(O),a=O.length),g();return}if(b.indexOf(`
|
|
409
|
-
`)===-1&&
|
|
410
|
-
`,v);for(;S!==-1;){if(v===S){
|
|
411
|
-
`,v);continue}let
|
|
412
|
-
`,v);continue}l=
|
|
413
|
-
${G}`,
|
|
414
|
-
`,v)}return
|
|
415
|
-
`,v),
|
|
416
|
-
${
|
|
417
|
-
${v}`,
|
|
418
|
-
`),u=a.structuredContent?
|
|
535
|
+
*/var JR=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var RX=/\\([\u000b\u0020-\u00ff])/g;var CX=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var YR=zX;function zX(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?NX(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(!CX.test(n))throw TypeError("invalid media type");var o=new LX(n.toLowerCase());if(r!==-1){var s,i,a;JR.lastIndex=r;while(i=JR.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(RX,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function NX(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 LX(e){this.parameters=Object.create(null),this.type=e}function XR(e){if(!e)return;try{return YR(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function Cl(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function QR(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...Cl(t.headers),...Cl(n.headers)}:t.headers};return e(r,o)}}var DX=5,MX=[301,302,303,307,308];function qX(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 eC(e,t){let r=MX.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function zl(e,t,r,n,o=0){let s=eC(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===DX||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!qX(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>zl(e,s,r,u,o+1)??u)}var tC=new WeakSet;function Zg(e){let t=(r,n)=>(e??fetch)(r,n);return tC.add(t),t}function Zn(e=fetch){if(tC.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)=>zl(e,t,r,n)??n)}}function Nl(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=eC(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 Bg;Bg=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function FX(e){return(await Bg).getRandomValues(new Uint8Array(e))}async function UX(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await FX(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function WX(e){return await UX(e)}async function VX(e){let t=await(await Bg).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function Hg(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await WX(e),r=await VX(t);return{code_verifier:t,code_challenge:r}}var Xe=Is().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:gS.custom,message:"URL must be parseable",fatal:!0}),hd}).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"}),nC=Ee({resource:p().url(),authorization_servers:k(Xe).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()}),Kg=Ee({issuer:p(),authorization_endpoint:Xe,token_endpoint:Xe,registration_endpoint:Xe.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:Xe.optional(),revocation_endpoint:Xe.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()}),ZX=Ee({issuer:p(),authorization_endpoint:Xe,token_endpoint:Xe,userinfo_endpoint:Xe.optional(),jwks_uri:Xe,registration_endpoint:Xe.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:Xe.optional(),op_tos_uri:Xe.optional(),client_id_metadata_document_supported:D().optional()}),oC=b({...ZX.shape,...Kg.pick({code_challenge_methods_supported:!0}).shape}),sC=b({access_token:p(),id_token:p().optional(),token_type:p(),expires_in:HN().optional(),scope:p().optional(),refresh_token:p().optional(),issuer:p().optional().catch(void 0)}).strip(),iC=b({error:p(),error_description:p().optional(),error_uri:p().optional()}),rC=Xe.optional().or(C("").transform(()=>{return})),BX=b({redirect_uris:k(Xe),token_endpoint_auth_method:p().optional(),grant_types:k(p()).optional(),response_types:k(p()).optional(),client_name:p().optional(),client_uri:Xe.optional(),logo_uri:rC,scope:p().optional(),contacts:k(p()).optional(),tos_uri:rC,policy_uri:p().optional(),jwks_uri:Xe.optional(),jwks:cS().optional(),software_id:p().optional(),software_version:p().optional(),software_statement:p().optional()}).strip(),HX=b({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(),aC=BX.merge(HX),jwe=b({error:p(),error_description:p().optional()}).strip(),Dwe=b({token:p(),token_type_hint:p().optional()}).strip();function cC(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function uC({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 Ne 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 Ll extends Ne{}Ll.errorCode="invalid_request";class rs extends Ne{}rs.errorCode="invalid_client";class ns extends Ne{}ns.errorCode="invalid_grant";class os extends Ne{}os.errorCode="unauthorized_client";class jl extends Ne{}jl.errorCode="unsupported_grant_type";class Dl extends Ne{}Dl.errorCode="invalid_scope";class Ml extends Ne{}Ml.errorCode="access_denied";class bn extends Ne{}bn.errorCode="server_error";class ql extends Ne{}ql.errorCode="temporarily_unavailable";class Fl extends Ne{}Fl.errorCode="unsupported_response_type";class Ul extends Ne{}Ul.errorCode="unsupported_token_type";class Wl extends Ne{}Wl.errorCode="invalid_token";class Vl extends Ne{}Vl.errorCode="method_not_allowed";class Zl extends Ne{}Zl.errorCode="too_many_requests";class ss extends Ne{}ss.errorCode="invalid_client_metadata";class Bl extends Ne{}Bl.errorCode="insufficient_scope";class Hl extends Ne{}Hl.errorCode="invalid_target";var lC={[Ll.errorCode]:Ll,[rs.errorCode]:rs,[ns.errorCode]:ns,[os.errorCode]:os,[jl.errorCode]:jl,[Dl.errorCode]:Dl,[Ml.errorCode]:Ml,[bn.errorCode]:bn,[ql.errorCode]:ql,[Fl.errorCode]:Fl,[Ul.errorCode]:Ul,[Wl.errorCode]:Wl,[Vl.errorCode]:Vl,[Zl.errorCode]:Zl,[ss.errorCode]:ss,[Bl.errorCode]:Bl,[Hl.errorCode]:Hl};class wn extends Error{constructor(e){super(e??"Unauthorized")}}function KX(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var Gg="code",Jg="S256";function GX(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&KX(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 JX(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":YX(o,s,r);return;case"client_secret_post":XX(o,s,n);return;case"none":QX(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function YX(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 XX(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function QX(e,t){t.set("client_id",e)}async function pC(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=iC.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(lC[o]||bn)(s||"",i)}catch(n){let o=e instanceof Response?Nl(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new bn(s)}}function eQ(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 Qg(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return eQ(e.issuer,t)?e:void 0}var tQ=sC.omit({issuer:!0}),rQ=aC.omit({issuer:!0});function fC(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 ea(e,t){try{return await Yg(e,t)}catch(r){if(r instanceof rs||r instanceof os)return await e.invalidateCredentials?.("all"),await Yg(e,t);else if(r instanceof ns)return await e.invalidateCredentials?.("tokens"),await Yg(e,t);throw r}}async function Yg(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 hC(c,{fetchFn:s}),!a)try{a=await mC(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 uQ(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 oQ(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=Qg(g,d),_=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!_)throw fC(g,d);let T=y?.issuer==null?y:void 0,x=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,G=e.clientMetadataUrl;if(G&&!nQ(G))throw new ss(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${G}`);if(j&&G)y={client_id:G,issuer:d},await e.saveClientInformation?.(y);else{if(!e.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");y={...await mQ(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:d},await e.saveClientInformation(y)}}let A=!e.redirectUrl;if(r!==void 0||A){let j=await fQ(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await x(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}let w=Qg(await e.tokens(),d);if(w?.refresh_token&&w.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(w?.refresh_token)try{let j=await pQ(c,{metadata:u,clientInformation:y,refreshToken:w.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await x(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}catch(j){if(!(j instanceof Ne)||j instanceof bn);else throw j}let v=e.state?await e.state():void 0,{authorizationUrl:S,codeVerifier:I}=await lQ(c,{metadata:u,clientInformation:y,state:v,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(I),await e.redirectToAuthorization(S),"REDIRECT"}function nQ(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function oQ(e,t,r){let n=cC(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!uC({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function ey(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Xg(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Xg(e,"scope")||void 0,a=Xg(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Xg(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 mC(e,t,r=fetch){let n=await aQ(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 nC.parse(await n.json())}async function ty(e,t,r=fetch){try{return await Zn(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return ty(e,void 0,r);else return;throw n}}function sQ(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function dC(e,t,r=fetch){return await ty(e,{"MCP-Protocol-Version":t},r)}function iQ(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function aQ(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??Co,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=sQ(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await dC(i,s,r);if(!n?.metadataUrl&&iQ(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await dC(c,s,r)}return a}function cQ(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 hC(e,{fetchFn:t=fetch,protocolVersion:r=Co}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=cQ(e);for(let{url:s,type:i}of o){let a=await ty(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 Kg.parse(await a.json());else return oC.parse(await a.json())}return}async function uQ(e,t){let r,n;try{if(r=await mC(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 hC(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function gC(e){return typeof e==="string"?e:e.href}async function lQ(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(Gg))throw Error(`Incompatible auth server: does not support response type ${Gg}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(Jg))throw Error(`Incompatible auth server: does not support code challenge method ${Jg}`)}else a=new URL("/authorize",e);let c=await Hg(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",Gg),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",Jg),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",gC(i));return{authorizationUrl:a,codeVerifier:u}}function dQ(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function yC(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",gC(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],d=GX(n,l);JX(d,n,c,r)}let u=await Zn(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await pC(u);return tQ.parse(await u.json())}async function pQ(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 yC(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function fQ(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),d=Qg(l,String(t));if(l&&!d)throw fC(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=dQ(o,l,e.redirectUrl)}return a??(a=await i()),yC(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function mQ(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 Zn(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await pC(i);return rQ.parse(await i.json())}class Kl 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 bC=10,hQ=13,Bn=32;function ry(e){}function vC(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=ry,onError:r=ry,onRetry:n=ry,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",d=0,f,m=!1;function h(w){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,w.charCodeAt(0)===239&&w.charCodeAt(1)===187&&w.charCodeAt(2)===191&&(w=w.slice(3))),i.length===0){let I=y(w);I!==""&&(i.push(I),a=I.length),g();return}if(w.indexOf(`
|
|
536
|
+
`)===-1&&w.indexOf("\r")===-1){i.push(w),a+=w.length,g();return}i.push(w);let v=i.join("");i.length=0,a=0;let S=y(v);S!==""&&(i.push(S),a=S.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 Kl(`Buffered data exceeded max buffer size of ${s} characters`,{type:"max-buffer-size-exceeded"}))))}function y(w){let v=0;if(w.indexOf("\r")===-1){let S=w.indexOf(`
|
|
537
|
+
`,v);for(;S!==-1;){if(v===S){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0,v=S+1,S=w.indexOf(`
|
|
538
|
+
`,v);continue}let I=w.charCodeAt(v);if(wC(w,v,I)){let j=w.charCodeAt(v+5)===Bn?v+6:v+5,G=w.slice(j,S);if(d===0&&w.charCodeAt(S+1)===bC){t({id:u,event:f,data:G}),u=void 0,l="",f=void 0,v=S+2,S=w.indexOf(`
|
|
539
|
+
`,v);continue}l=d===0?G:`${l}
|
|
540
|
+
${G}`,d++}else _C(w,v,I)?f=w.slice(w.charCodeAt(v+6)===Bn?v+7:v+6,S)||void 0:_(w,v,S);v=S+1,S=w.indexOf(`
|
|
541
|
+
`,v)}return w.slice(v)}for(;v<w.length;){let S=w.indexOf("\r",v),I=w.indexOf(`
|
|
542
|
+
`,v),j=-1;if(S!==-1&&I!==-1?j=S<I?S:I:S!==-1?S===w.length-1?j=-1:j=S:I!==-1&&(j=I),j===-1)break;_(w,v,j),v=j+1,w.charCodeAt(v-1)===hQ&&w.charCodeAt(v)===bC&&v++}return w.slice(v)}function _(w,v,S){if(v===S){x();return}let I=w.charCodeAt(v);if(wC(w,v,I)){let W=w.charCodeAt(v+5)===Bn?v+6:v+5,ne=w.slice(W,S);l=d===0?ne:`${l}
|
|
543
|
+
${ne}`,d++;return}if(_C(w,v,I)){f=w.slice(w.charCodeAt(v+6)===Bn?v+7:v+6,S)||void 0;return}if(I===105&&w.charCodeAt(v+1)===100&&w.charCodeAt(v+2)===58){let W=w.slice(w.charCodeAt(v+3)===Bn?v+4:v+3,S);u=W.includes("\x00")?void 0:W;return}if(I===58){if(o){let W=w.slice(v,S);o(W.slice(w.charCodeAt(v+1)===Bn?2:1))}return}let j=w.slice(v,S),G=j.indexOf(":");if(G===-1){T(j,"",j);return}let se=j.slice(0,G),ie=j.charCodeAt(G+1)===Bn?2:1,Le=j.slice(G+ie);T(se,Le,j)}function T(w,v,S){switch(w){case"event":f=v||void 0;break;case"data":l=d===0?v:`${l}
|
|
544
|
+
${v}`,d++;break;case"id":u=v.includes("\x00")?void 0:v;break;case"retry":/^\d+$/.test(v)?n(parseInt(v,10)):r(new Kl(`Invalid \`retry\` value: "${v}"`,{type:"invalid-retry",value:v,line:S}));break;default:r(new Kl(`Unknown field "${w.length>20?`${w.slice(0,20)}…`:w}"`,{type:"unknown-field",field:w,value:v,line:S}));break}}function x(){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0}function A(w={}){if(w.consume&&i.length>0){let v=i.join("");_(v,0,v.length)}c=!0,u=void 0,l="",d=0,f=void 0,i.length=0,a=0,m=!1}return{feed:h,reset:A}}function wC(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 _C(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 ny extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:n}={}){let o;super({start(s){o=vC({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 gQ={initialReconnectionDelay:1000,maxReconnectionDelay:30000,reconnectionDelayGrowFactor:1.5,maxRetries:2};class Pr extends Error{constructor(e,t){super(`Streamable HTTP error: ${t}`);this.code=e}}class oy{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=QR(t?.fetch,t?.requestInit),this._followRedirects=t?.redirectPolicy==="follow",this._followRedirects)this._fetch=Zg(this._fetch),this._fetchWithInit=Zg(this._fetchWithInit);this._sessionId=t?.sessionId,this._reconnectionOptions=t?.reconnectionOptions??gQ}_unfollowedRedirect(e,t){let r=Nl(e,t);return r&&!this._followRedirects?`${r} (redirectPolicy: 'same-origin')`:r}async _authThenStart(){if(!this._authProvider)throw new wn("No auth provider");let e;try{e=await ea(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 wn;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=Cl(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:zl(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 Pr(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 ny({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=Nu.parse(JSON.parse(f.data));if(jn(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 wn("No auth provider");if(await ea(this._authProvider,{serverUrl:this._url,authorizationCode:e,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new wn("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:zi(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 Zn(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 Pr(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:m,scope:h}=ey(i);if(this._resourceMetadataUrl=m,this._scope=h,await ea(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new wn;return this._hasCompletedAuthFlow=!0,this.send(e)}if(i.status===403&&this._authProvider){let{resourceMetadataUrl:m,scope:h,error:g}=ey(i);if(g==="insufficient_scope"){let y=i.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===y)throw new Pr(403,"Server returned 403 after trying upscoping");if(h)this._scope=h;if(m)this._resourceMetadataUrl=m;if(this._lastUpscopingHeader=y??void 0,await ea(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch})!=="AUTHORIZED")throw new wn;return this.send(e)}}throw new Pr(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(),RT(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=XR(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)=>Nu.parse(h)):[Nu.parse(f)];for(let h of m)this.onmessage?.(h)}else throw await i.body?.cancel(),new Pr(-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 Zn(this._fetch??fetch)(this._url,t);if(await r.body?.cancel(),!r.ok&&r.status!==405)throw new Pr(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 yQ(e){try{let t=br().safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function bQ(e){if(e instanceof Pr&&e.code===401)return!0;return/\b401\b|unauthorized/i.test(e.message)}async function Gl(e,t,r,n){let o=new oy(new URL(e.mcpUrl),{requestInit:{headers:{Authorization:`Bearer ${e.token}`}},fetch:n}),s=new Vg({name:"tripwire-cli",version:Ka});try{await s.connect(o);let i=await s.callTool({name:t,arguments:r},kr),a=kr.parse(i),c=a.content.flatMap((l)=>l.type==="text"?[l.text]:[]).join(`
|
|
545
|
+
`),u=a.structuredContent?br().safeParse(a.structuredContent):null;return{isError:a.isError===!0,text:c,data:u?.success?u.data:yQ(c)}}catch(i){if(i instanceof Error&&bQ(i))throw new Ri("The Tripwire server rejected the token. Run tripwire login.");throw i}finally{await s.close().catch(()=>{return})}}var oe=vn(_c(),1);import{emitKeypressEvents as wQ}from"node:readline";import{stripVTControlCharacters as _Q}from"node:util";var ht=oe.default.dim("│"),vQ=oe.default.dim("─");function sy(e){return e.filter((t)=>t.disabled===void 0)}function SQ(e,t){let r=t.toLowerCase();return e.label.toLowerCase().includes(r)||e.value.toLowerCase().includes(r)}function xC(e,t){return t?e.filter((r)=>SQ(r,t)):[...e]}function kC(e,t){let r=sy(e),n=r.filter((o)=>t.has(o.value)).length;if(n===0)return"none";return n===r.length?"all":"partial"}function xQ(e,t,r){let n=xC(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=kC(e,o)==="all";for(let i of sy(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 kQ(e,t,r){let n=t?oe.default.cyan("❯"):" ";if(e.disabled!==void 0){let a=t?oe.default.underline(e.label):e.label;return`${ht} ${n} ${oe.default.dim(`- ${a} (${e.disabled})`)}`}let o=r.has(e.value)?oe.default.green("●"):oe.default.dim("○"),s=t?oe.default.underline(e.label):e.label,i=e.hint?oe.default.dim(` (${e.hint})`):"";return`${ht} ${n} ${o} ${s}${i}`}function SC(e,t){return e.filter((r)=>t.has(r.value)).map((r)=>r.label)}function $Q(e,t,r){let{message:n,items:o,maxVisible:s=8}=e;if(r==="submit")return[`${oe.default.green("◇")} ${oe.default.bold(n)}`,`${ht} ${oe.default.dim(SC(o,t.selected).join(", "))}`];if(r==="cancel")return[`${oe.default.red("■")} ${oe.default.bold(n)}`,`${ht} ${oe.default.strikethrough(oe.default.dim("Cancelled"))}`];let i=xC(o,t.query),a=[`${oe.default.green("◆")} ${oe.default.bold(n)}`,`${ht} ${oe.default.dim("Search:")} ${t.query}${oe.default.inverse(" ")}`,`${ht} ${oe.default.dim("↑↓ move, space select, enter confirm")}`,ht],c=sy(o),u=c.filter((h)=>t.selected.has(h.value)).length,l=kC(o,t.selected),d=l==="all"?oe.default.green("●"):l==="partial"?oe.default.yellow("◐"):oe.default.dim("○"),f=t.cursor===0;if(a.push(`${ht} ${f?oe.default.cyan("❯"):" "} ${d} ${f?oe.default.underline(oe.default.bold("Select All")):oe.default.bold("Select All")} ${oe.default.dim(`(${u}/${c.length})`)}`,`${ht} ${vQ.repeat(36)}`),i.length===0)a.push(`${ht} ${oe.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,x)=>{a.push(kQ(T,g+x===h,t.selected))});let _=[g>0?`↑ ${g} more`:"",y<i.length?`↓ ${i.length-y} more`:""].filter(Boolean);if(_.length>0)a.push(`${ht} ${oe.default.dim(_.join(" "))}`)}let m=SC(o,t.selected);if(a.push(ht),m.length===0)a.push(`${ht} ${oe.default.dim("Selected: (none)")}`);else{let h=m.length<=3?m.join(", "):`${m.slice(0,3).join(", ")} +${m.length-3} more`;a.push(`${ht} ${oe.default.green("Selected:")} ${h}`)}return a.push(oe.default.dim("└")),a}function EQ(e,t){let r=Math.max(1,t);return e.reduce((n,o)=>n+Math.max(1,Math.ceil(_Q(o).length/r)),0)}function $C(e,t,r){return new Promise((n)=>{let o={query:"",cursor:0,selected:new Set(t)},s=0,i=(l)=>{let d=$Q(e,o,l),f=s>0?`\x1B[${s}A\x1B[J`:"";r.write(`${f}${d.join(`
|
|
546
|
+
`)}
|
|
547
|
+
`),s=EQ(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=xQ(e.items,o,d);if(o=f.state,f.done){a(f.done);return}i()},u=()=>a("cancel");if(wQ(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 ay,mkdirSync as TQ,readFileSync as OQ,writeFileSync as TC}from"node:fs";import{basename as PQ,dirname as cy,join as OC,resolve as Jl}from"node:path";import{pathToFileURL as AQ}from"node:url";var ta="tripwire.ts",IQ=b({typescript:re([p(),D()]).optional()});function RQ(){if(process.versions.bun)return!0;let e=IQ.safeParse(process.features);return e.success&&Boolean(e.data.typescript)}function PC(e){let t=OC(cy(Jl(e)),mo);return TQ(cy(t),{recursive:!0}),TC(t,lk(`/**
|
|
548
|
+
* The \`tripwire.ts\` authoring API. A workflow file default-exports
|
|
549
|
+
* \`workflows({ ... })\`; each entry compiles to one stored WorkflowDefinition.
|
|
550
|
+
*
|
|
551
|
+
* This file imports nothing, so the CLI can copy it into a project verbatim,
|
|
552
|
+
* append the catalog types, and Node can load a \`tripwire.ts\` that uses it
|
|
553
|
+
* with type stripping alone. \`authoring<Catalog>()\` binds the helpers to a
|
|
554
|
+
* catalog: \`workflow-authoring-catalog.ts\` inside this repo, generated text
|
|
555
|
+
* in a project's copy.
|
|
556
|
+
*/
|
|
557
|
+
|
|
558
|
+
/** A value a rule setting or action param can hold: plain JSON. */
|
|
559
|
+
export type SettingValue =
|
|
560
|
+
| string
|
|
561
|
+
| number
|
|
562
|
+
| boolean
|
|
563
|
+
| null
|
|
564
|
+
| undefined
|
|
565
|
+
| readonly SettingValue[]
|
|
566
|
+
| Settings;
|
|
567
|
+
|
|
568
|
+
/** Rule settings or action params, as written in code. */
|
|
569
|
+
export interface Settings {
|
|
570
|
+
readonly [key: string]: SettingValue;
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
/** One settings shape per rule id or action kind. */
|
|
574
|
+
export interface SettingsByName {
|
|
575
|
+
readonly [name: string]: Settings;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
export interface AuthoringCatalog {
|
|
579
|
+
/** Rule id to the config it takes. */
|
|
580
|
+
readonly rules: SettingsByName;
|
|
581
|
+
/** Action kind to the params it takes. */
|
|
582
|
+
readonly actions: SettingsByName;
|
|
583
|
+
/** Event kinds a workflow can start on. */
|
|
584
|
+
readonly events: string;
|
|
585
|
+
/** Settings for a schedule trigger. */
|
|
586
|
+
readonly schedule: unknown;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
export type CustomRuleRef = \`custom-\${string}\`;
|
|
590
|
+
|
|
591
|
+
export type OutputPort = "pass" | "fail" | "approve" | "deny";
|
|
592
|
+
|
|
593
|
+
export interface Output<P extends OutputPort = OutputPort> {
|
|
594
|
+
readonly kind: "output";
|
|
595
|
+
readonly step: Step;
|
|
596
|
+
readonly port: P;
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
export type Input = Step | Output;
|
|
600
|
+
|
|
601
|
+
export type ResultInput = CheckStep | GateStep | Output<"pass" | "fail">;
|
|
602
|
+
|
|
603
|
+
interface StepBase {
|
|
604
|
+
readonly inputs: readonly Input[];
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
export interface TriggerStep extends StepBase {
|
|
608
|
+
readonly kind: "trigger";
|
|
609
|
+
readonly on: readonly string[];
|
|
610
|
+
readonly schedule?: unknown;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
export interface ResultOutputs {
|
|
614
|
+
/** The step's Passes output. */
|
|
615
|
+
readonly passes: Output<"pass">;
|
|
616
|
+
/** The step's Doesn't pass output: \`not(passes)\`, accepted wherever Passes is. */
|
|
617
|
+
readonly fails: Output<"fail">;
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
export interface CheckStep extends StepBase, ResultOutputs {
|
|
621
|
+
readonly kind: "check";
|
|
622
|
+
readonly rule: string;
|
|
623
|
+
readonly config: Settings;
|
|
624
|
+
readonly version: number | undefined;
|
|
625
|
+
/** Runs this check after the given outputs instead of the triggers. */
|
|
626
|
+
after(...inputs: Input[]): CheckStep;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
export type AuthoringGateMode = "all-of" | "any-of" | "not";
|
|
630
|
+
|
|
631
|
+
export interface GateStep extends StepBase, ResultOutputs {
|
|
632
|
+
readonly kind: "gate";
|
|
633
|
+
readonly mode: AuthoringGateMode;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
export interface ActionStep extends StepBase {
|
|
637
|
+
readonly kind: "action";
|
|
638
|
+
readonly action: string;
|
|
639
|
+
readonly params: Settings | undefined;
|
|
640
|
+
/** Runs this action after the given outputs. */
|
|
641
|
+
after(...inputs: Input[]): ActionStep;
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
export interface ReviewStep extends StepBase {
|
|
645
|
+
readonly kind: "action";
|
|
646
|
+
readonly action: "send-to-moderation";
|
|
647
|
+
readonly params: undefined;
|
|
648
|
+
readonly approve: readonly ActionStep[];
|
|
649
|
+
readonly deny: readonly ActionStep[];
|
|
650
|
+
/** The maintainer approved it. */
|
|
651
|
+
readonly approved: Output<"approve">;
|
|
652
|
+
/** The maintainer blocked it. */
|
|
653
|
+
readonly denied: Output<"deny">;
|
|
654
|
+
after(...inputs: Input[]): ReviewStep;
|
|
655
|
+
}
|
|
656
|
+
|
|
657
|
+
export type Step = TriggerStep | CheckStep | GateStep | ActionStep | ReviewStep;
|
|
658
|
+
|
|
659
|
+
interface WorkflowSpecBase<Event extends string> {
|
|
660
|
+
/** The name shown in the app. Defaults to the workflow's key. */
|
|
661
|
+
readonly name?: string;
|
|
662
|
+
/** What starts it: event kinds, or \`trigger()\` / \`schedule()\` steps. */
|
|
663
|
+
readonly on?: Event | TriggerStep | readonly (Event | TriggerStep)[];
|
|
664
|
+
/** Actions straight after the triggers, for workflows with no check. */
|
|
665
|
+
readonly run?: readonly (ActionStep | ReviewStep)[];
|
|
666
|
+
/** Named steps. The key becomes the step id; use it for any other wiring. */
|
|
667
|
+
readonly steps?: Readonly<Record<string, Step>>;
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
interface CheckedSpec {
|
|
671
|
+
/** The condition. A check, a gate, or one output of either. */
|
|
672
|
+
readonly check: ResultInput;
|
|
673
|
+
/** Actions when \`check\` passes. */
|
|
674
|
+
readonly pass?: readonly (ActionStep | ReviewStep)[];
|
|
675
|
+
/** Actions when \`check\` does not pass. */
|
|
676
|
+
readonly fail?: readonly (ActionStep | ReviewStep)[];
|
|
677
|
+
}
|
|
678
|
+
|
|
679
|
+
interface UncheckedSpec {
|
|
680
|
+
readonly check?: undefined;
|
|
681
|
+
readonly pass?: undefined;
|
|
682
|
+
readonly fail?: undefined;
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
export type WorkflowSpec<Event extends string = string> =
|
|
686
|
+
WorkflowSpecBase<Event> & (CheckedSpec | UncheckedSpec);
|
|
687
|
+
|
|
688
|
+
export interface WorkflowValue {
|
|
689
|
+
readonly kind: "workflow";
|
|
690
|
+
readonly spec: WorkflowSpec;
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
type Head<S extends string> = S extends \`\${infer A}\${infer B}\${string}\`
|
|
694
|
+
? \`\${A}\${B}\`
|
|
695
|
+
: S;
|
|
696
|
+
|
|
697
|
+
/** Ids that start like the one given, or every id when none do. */
|
|
698
|
+
type Suggest<Given extends string, Valid extends string> = [
|
|
699
|
+
Extract<Valid, \`\${Head<Given>}\${string}\`>,
|
|
700
|
+
] extends [never]
|
|
701
|
+
? Valid
|
|
702
|
+
: Extract<Valid, \`\${Head<Given>}\${string}\`>;
|
|
703
|
+
|
|
704
|
+
/**
|
|
705
|
+
* The shape, plus a type error for every key it does not have that names the
|
|
706
|
+
* keys it does.
|
|
707
|
+
*/
|
|
708
|
+
export type Checked<Shape, Given> = Shape & {
|
|
709
|
+
[Key in keyof Given]: Key extends keyof Shape
|
|
710
|
+
? Shape[Key]
|
|
711
|
+
: \`\${Key & string} is not a setting here, try \${keyof Shape & string}\`;
|
|
712
|
+
};
|
|
713
|
+
|
|
714
|
+
export interface CheckOptions {
|
|
715
|
+
/** Pin an older rule version. Defaults to the current one. */
|
|
716
|
+
readonly version?: number;
|
|
717
|
+
}
|
|
718
|
+
|
|
719
|
+
type RuleName<C extends AuthoringCatalog> = keyof C["rules"] & string;
|
|
720
|
+
|
|
721
|
+
type RuleArg<C extends AuthoringCatalog, R extends string> =
|
|
722
|
+
R extends RuleName<C>
|
|
723
|
+
? R
|
|
724
|
+
: \`\${R} is not a rule, try \${Suggest<R, RuleName<C>>}\`;
|
|
725
|
+
|
|
726
|
+
type ConfigOf<C extends AuthoringCatalog, R> = R extends keyof C["rules"]
|
|
727
|
+
? C["rules"][R]
|
|
728
|
+
: never;
|
|
729
|
+
|
|
730
|
+
type CheckArgs<C extends AuthoringCatalog, R extends string, Given> =
|
|
731
|
+
R extends RuleName<C>
|
|
732
|
+
? Record<never, never> extends ConfigOf<C, R>
|
|
733
|
+
? [config?: Checked<ConfigOf<C, R>, Given>, options?: CheckOptions]
|
|
734
|
+
: [config: Checked<ConfigOf<C, R>, Given>, options?: CheckOptions]
|
|
735
|
+
: [config?: undefined, options?: undefined];
|
|
736
|
+
|
|
737
|
+
type ParamsOf<
|
|
738
|
+
C extends AuthoringCatalog,
|
|
739
|
+
A extends string,
|
|
740
|
+
> = A extends keyof C["actions"] ? C["actions"][A] : never;
|
|
741
|
+
|
|
742
|
+
function output<P extends OutputPort>(step: Step, port: P): Output<P> {
|
|
743
|
+
return { kind: "output", step, port };
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
function makeCheck(
|
|
747
|
+
rule: string,
|
|
748
|
+
config: Settings | undefined,
|
|
749
|
+
options: CheckOptions | undefined,
|
|
750
|
+
inputs: readonly Input[],
|
|
751
|
+
): CheckStep {
|
|
752
|
+
const step: CheckStep = {
|
|
753
|
+
kind: "check",
|
|
754
|
+
rule,
|
|
755
|
+
config: config ?? {},
|
|
756
|
+
version: options?.version,
|
|
757
|
+
inputs,
|
|
758
|
+
get passes() {
|
|
759
|
+
return output(step, "pass");
|
|
760
|
+
},
|
|
761
|
+
get fails() {
|
|
762
|
+
return output(step, "fail");
|
|
763
|
+
},
|
|
764
|
+
after: (...next: Input[]) => makeCheck(rule, config, options, next),
|
|
765
|
+
};
|
|
766
|
+
return step;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
function gate(mode: AuthoringGateMode, inputs: readonly Input[]): GateStep {
|
|
770
|
+
const step: GateStep = {
|
|
771
|
+
kind: "gate",
|
|
772
|
+
mode,
|
|
773
|
+
inputs,
|
|
774
|
+
get passes() {
|
|
775
|
+
return output(step, "pass");
|
|
776
|
+
},
|
|
777
|
+
get fails() {
|
|
778
|
+
return output(step, "fail");
|
|
779
|
+
},
|
|
780
|
+
};
|
|
781
|
+
return step;
|
|
782
|
+
}
|
|
783
|
+
|
|
784
|
+
function action(
|
|
785
|
+
kind: string,
|
|
786
|
+
params: Settings | undefined,
|
|
787
|
+
inputs: readonly Input[] = [],
|
|
788
|
+
): ActionStep {
|
|
789
|
+
return {
|
|
790
|
+
kind: "action",
|
|
791
|
+
action: kind,
|
|
792
|
+
params,
|
|
793
|
+
inputs,
|
|
794
|
+
after: (...next: Input[]) => action(kind, params, next),
|
|
795
|
+
};
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
function review(
|
|
799
|
+
branches: { approve?: readonly ActionStep[]; deny?: readonly ActionStep[] },
|
|
800
|
+
inputs: readonly Input[],
|
|
801
|
+
): ReviewStep {
|
|
802
|
+
const step: ReviewStep = {
|
|
803
|
+
kind: "action",
|
|
804
|
+
action: "send-to-moderation",
|
|
805
|
+
params: undefined,
|
|
806
|
+
approve: branches.approve ?? [],
|
|
807
|
+
deny: branches.deny ?? [],
|
|
808
|
+
inputs,
|
|
809
|
+
get approved() {
|
|
810
|
+
return output(step, "approve");
|
|
811
|
+
},
|
|
812
|
+
get denied() {
|
|
813
|
+
return output(step, "deny");
|
|
814
|
+
},
|
|
815
|
+
after: (...next: Input[]) => review(branches, next),
|
|
816
|
+
};
|
|
817
|
+
return step;
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
/** The authoring helpers, typed from a catalog. */
|
|
821
|
+
export function authoring<C extends AuthoringCatalog>() {
|
|
822
|
+
type Event = C["events"];
|
|
823
|
+
|
|
824
|
+
return {
|
|
825
|
+
/**
|
|
826
|
+
* A built-in rule check, typed from the catalog:
|
|
827
|
+
* \`check("account-age", { minDays: 7 })\`. A wrong rule id or setting
|
|
828
|
+
* fails type-checking with the ids or settings to use instead.
|
|
829
|
+
*/
|
|
830
|
+
check<const R extends string, G = ConfigOf<C, R>>(
|
|
831
|
+
rule: RuleArg<C, R>,
|
|
832
|
+
...args: CheckArgs<C, R, G>
|
|
833
|
+
): CheckStep {
|
|
834
|
+
const [config, options] = args;
|
|
835
|
+
return makeCheck(rule, config, options, []);
|
|
836
|
+
},
|
|
837
|
+
|
|
838
|
+
/** One of the repo's custom rules, by its \`custom-...\` id. */
|
|
839
|
+
customCheck(rule: CustomRuleRef, config?: Settings): CheckStep {
|
|
840
|
+
return makeCheck(rule, config, undefined, []);
|
|
841
|
+
},
|
|
842
|
+
|
|
843
|
+
/** Passes when every input passes. An input that was never reached does not pass. */
|
|
844
|
+
allOf(...inputs: [ResultInput, ...ResultInput[]]): GateStep {
|
|
845
|
+
return gate("all-of", inputs);
|
|
846
|
+
},
|
|
847
|
+
|
|
848
|
+
/** Passes when at least one input passes. An input that was never reached does not pass. */
|
|
849
|
+
anyOf(...inputs: [ResultInput, ...ResultInput[]]): GateStep {
|
|
850
|
+
return gate("any-of", inputs);
|
|
851
|
+
},
|
|
852
|
+
|
|
853
|
+
/** An explicit Not gate. \`step.fails\` says the same without a gate. */
|
|
854
|
+
not(input: ResultInput): GateStep {
|
|
855
|
+
return gate("not", [input]);
|
|
856
|
+
},
|
|
857
|
+
|
|
858
|
+
/** Starts on events: \`trigger("change-request.opened", "comment.created")\`. */
|
|
859
|
+
trigger(...on: Event[]): TriggerStep {
|
|
860
|
+
return { kind: "trigger", on, inputs: [] };
|
|
861
|
+
},
|
|
862
|
+
|
|
863
|
+
/** Starts on a timer for matching issues and change requests. */
|
|
864
|
+
schedule(spec: C["schedule"]): TriggerStep {
|
|
865
|
+
return {
|
|
866
|
+
kind: "trigger",
|
|
867
|
+
on: ["schedule.matched"],
|
|
868
|
+
schedule: spec,
|
|
869
|
+
inputs: [],
|
|
870
|
+
};
|
|
871
|
+
},
|
|
872
|
+
|
|
873
|
+
/** Fails the Tripwire check and requests changes. */
|
|
874
|
+
block(): ActionStep {
|
|
875
|
+
return action("block", undefined);
|
|
876
|
+
},
|
|
877
|
+
|
|
878
|
+
/** Adds labels. */
|
|
879
|
+
label<P = ParamsOf<C, "label">>(
|
|
880
|
+
params: Checked<ParamsOf<C, "label">, P>,
|
|
881
|
+
): ActionStep {
|
|
882
|
+
return action("label", params);
|
|
883
|
+
},
|
|
884
|
+
|
|
885
|
+
/** Removes labels, if they are there. */
|
|
886
|
+
removeLabel<P = ParamsOf<C, "remove-label">>(
|
|
887
|
+
params: Checked<ParamsOf<C, "remove-label">, P>,
|
|
888
|
+
): ActionStep {
|
|
889
|
+
return action("remove-label", params);
|
|
890
|
+
},
|
|
891
|
+
|
|
892
|
+
/** Asks people or teams to review on GitHub. */
|
|
893
|
+
requestReview<P = ParamsOf<C, "request-review">>(
|
|
894
|
+
params: Checked<ParamsOf<C, "request-review">, P>,
|
|
895
|
+
): ActionStep {
|
|
896
|
+
return action("request-review", params);
|
|
897
|
+
},
|
|
898
|
+
|
|
899
|
+
/** Posts a comment you write. */
|
|
900
|
+
postComment<P = ParamsOf<C, "post-comment">>(
|
|
901
|
+
params: Checked<ParamsOf<C, "post-comment">, P>,
|
|
902
|
+
): ActionStep {
|
|
903
|
+
return action("post-comment", params);
|
|
904
|
+
},
|
|
905
|
+
|
|
906
|
+
/** Locks the conversation. */
|
|
907
|
+
lock<P = ParamsOf<C, "lock">>(
|
|
908
|
+
params?: Checked<ParamsOf<C, "lock">, P>,
|
|
909
|
+
): ActionStep {
|
|
910
|
+
return action("lock", params);
|
|
911
|
+
},
|
|
912
|
+
|
|
913
|
+
/** Closes the issue or change request. */
|
|
914
|
+
close(): ActionStep {
|
|
915
|
+
return action("close", undefined);
|
|
916
|
+
},
|
|
917
|
+
|
|
918
|
+
/** Posts the verdict as JSON. Its URL and secret are set in the app. */
|
|
919
|
+
webhook(): ActionStep {
|
|
920
|
+
return action("webhook", undefined);
|
|
921
|
+
},
|
|
922
|
+
|
|
923
|
+
/** Posts the verdict to Discord. Its URL is set in the app. */
|
|
924
|
+
discord(): ActionStep {
|
|
925
|
+
return action("discord", undefined);
|
|
926
|
+
},
|
|
927
|
+
|
|
928
|
+
/**
|
|
929
|
+
* Waits for a maintainer in Tripwire. \`approve\` and \`deny\` run when they
|
|
930
|
+
* decide; \`approved\` and \`denied\` wire the decision anywhere else.
|
|
931
|
+
*/
|
|
932
|
+
humanReview(
|
|
933
|
+
branches: {
|
|
934
|
+
approve?: readonly ActionStep[];
|
|
935
|
+
deny?: readonly ActionStep[];
|
|
936
|
+
} = {},
|
|
937
|
+
): ReviewStep {
|
|
938
|
+
return review(branches, []);
|
|
939
|
+
},
|
|
940
|
+
|
|
941
|
+
workflow(spec: WorkflowSpec<Event>): WorkflowValue {
|
|
942
|
+
return { kind: "workflow", spec };
|
|
943
|
+
},
|
|
944
|
+
|
|
945
|
+
/** The default export of a \`tripwire.ts\`. Keys are the workflow ids. */
|
|
946
|
+
workflows<const T extends Record<string, WorkflowValue>>(entries: T): T {
|
|
947
|
+
return entries;
|
|
948
|
+
},
|
|
949
|
+
};
|
|
950
|
+
}
|
|
951
|
+
`)),t}async function Yl(e){let t=Jl(e);if(!ay(t))throw Error(`No ${e} here. Run tripwire workflows pull <repo> to start one.`);if(!RQ())throw Error("Loading tripwire.ts needs Node 22.18 or later, or Bun. Run it with bunx @tripwire-sh/cli instead.");let r=OC(cy(t),mo);if(!ay(r))PC(t);let n=`${AQ(t).href}?at=${Date.now()}`;return nk(await import(n))}var CQ=b({workflows:k(b({id:p(),appId:p().optional(),name:p().optional(),enabled:D().optional(),definition:wr}))});function AC(e){return CQ.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 zQ(e){return[...new Set(e.nodes.flatMap((t)=>t.type==="trigger"?t.kinds:[]))]}function NQ(e){let t=gc([e],{importFrom:mo});if(t.written.length>0)return;let r=t.warnings[0]??"",n=r.slice(r.indexOf("cannot be written as code"));return n.startsWith("cannot")?n:"cannot be written as code"}function IC(e,t){return e.map((r)=>{let n=NQ(r.definition);if(n)return{value:r.id,label:r.name,disabled:n};let o=(r.appId?t.get(r.appId):void 0)??(r.enabled?"on":"off"),s=vf(zQ(r.definition)),i=s.length>2?`${s.slice(0,2).join(", ")} +${s.length-2} more`:s.join(", "),a=[mc[o].toLowerCase(),i].filter(Boolean).join(", ");return{value:r.id,label:r.name,hint:a}})}function RC(e,t){return e.filter((r)=>r.disabled===void 0).filter((r)=>t===null||t.includes(r.value)).map((r)=>r.value)}function CC(e,t){let r=(n,o)=>n.id===o||n.appId===o||n.name===o;return{picked:e.filter((n)=>t.some((o)=>r(n,o))),unknown:t.filter((n)=>!e.some((o)=>r(o,n)))}}function LQ(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 jQ=J(p(),br());function zC(e){let t=new Set(e.flatMap((r)=>r.nodes.flatMap((n)=>n.type==="rule"&&n.ref.startsWith("custom-")?[n.ref]:[])));return[...He,...[...t].map((r)=>{let[n=r,o="1"]=r.split("@");return{ruleId:n,version:Number(o),name:n,configSchema:jQ}})]}function EC(e){return`${e} ${e===1?"workflow":"workflows"}`}function NC(e){let t=e.pulled-e.count;return t>0?`${EC(e.count)}, ${t} left out`:EC(e.count)}async function LC(e){let t=Jl(e);if(!ay(t))return{kind:"none"};try{let r=await Yl(e);return r.ok?{kind:"code",text:OQ(t,"utf8"),definitions:r.definitions}:{kind:"unreadable"}}catch{return{kind:"unreadable"}}}function iy(e){return gc(e,{importFrom:mo}).code}function DQ(e){return e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function MQ(e,t,r){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 n=r.filter((s)=>{let i=t.definitions.find((a)=>a.id===s.id);return i!==void 0&&iy([i])!==iy([s])}).map((s)=>s.name),o=PQ(e);if(n.length>0)return`${DQ(n)} in ${o} ${n.length===1?"differs":"differ"} from the server. Run tripwire workflows diff <repo> to compare, or pass --force to take the server's version.`;if(iy(t.definitions)!==t.text)return`${o} has edits a pull would rewrite. Pass --force to rewrite it, or diff it first.`;return null}function jC(e,t,r,n={kind:"none"}){let o=Jl(e),s=LQ(n.kind==="code"?n.definitions:[],t),{code:i,warnings:a,written:c}=gc(s.definitions,{importFrom:mo}),u=n.kind==="code"&&n.text===i,l=r||u?null:MQ(e,n,t);if(l)throw Error(l);let d=PC(o);TC(o,i);let f=new Set(t.map((m)=>m.id));return{file:o,module:d,count:c.filter((m)=>f.has(m)).length,pulled:t.length,kept:s.kept,warnings:a}}function DC(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 Ue(n,t)}).join(`
|
|
952
|
+
|
|
953
|
+
`)}var qQ=b({json:D().optional(),org:p().optional()}),FQ=Ee({user:Ee({name:p().nullish(),email:p().nullish()})}),UQ=1000;function is(e,t){let r=qQ.parse(e.optsWithGlobals()),n=r.org??t.env.TRIPWIRE_ORG;return{json:r.json===!0,org:n,style:Ys(process.stdout.isTTY===!0,t.env),errStyle:Ys(process.stderr.isTTY===!0,t.env)}}function ot(e){process.stdout.write(e.endsWith(`
|
|
419
954
|
`)?e:`${e}
|
|
420
|
-
`)}function
|
|
955
|
+
`)}function _n(e){process.stderr.write(e.endsWith(`
|
|
421
956
|
`)?e:`${e}
|
|
422
|
-
`)}function
|
|
423
|
-
`)
|
|
957
|
+
`)}function WQ(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=br().safeParse(JSON.parse(n));return[r,o.success?o.data:n]}catch{return[r,n]}}function na(e,t,r){if(r.json){let n=t.isError?{error:t.text}:t.data??{text:t.text};return ot(JSON.stringify(n,null,2)),t.isError?1:0}if(t.isError)return _n(On(Sf(t.text,t.data),r.errStyle)),1;return ot($k(e,t.data,r.style)??(t.text||JSON.stringify(t.data,null,2))),0}function ra(e,t){if(t.json)ot(JSON.stringify({error:e.message},null,2));else _n(On(Sf(e.message),t.errStyle));return 1}function qC(e,t){return e.org?{org:e.org,...t}:t}async function xt(e,t,r,n){let o=is(t,e.system);try{let s=await vh(e.system,e.auth),i=await Gl(s,r,qC(o,n),e.fetch);process.exitCode=na(r,i,o)}catch(s){process.exitCode=ra(s instanceof Error?s:Error(String(s)),o)}}async function VQ(e,t){let r=is(t,e.system),n=t.opts().browser,o=SS(e.system.env),s=to(e.system.env);try{let i=await TS(e.auth,o,s),a=i.verification_uri_complete??i.verification_uri;if(_n(Ue([["code",xk(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 PS(e.auth,o,s,i),u=await BQ(e.system,c);if(r.json)ot(JSON.stringify({signedIn:!0,store:u},null,2));else{let l=await ZQ(e,c);ot(Ue([["done",l?`Signed in as ${l}`:"Signed in"]],r.style))}}catch(i){process.exitCode=ra(i instanceof Error?i:Error(String(i)),r)}}async function MC(e,t){try{let r=await Gl({token:t.accessToken,mcpUrl:e.system.env.TRIPWIRE_MCP_URL||t.mcpUrl,source:"file"},"whoami",{},e.fetch),n=FQ.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 ZQ(e,t){let r=await MC(e,t);if(r)return r;return await e.auth.sleep(UQ),await MC(e,t)}async function BQ(e,t){let r=Io(e);try{return await r.write(t),r.location}catch{let n=Io({...e,env:{...e.env,TRIPWIRE_CREDENTIAL_STORE:"file"}});return await n.write(t),n.location}}async function HQ(e,t){let r=is(t,e.system),n=Io(e.system),o=await n.read();if(o)await IS(e.auth,o);if(await n.clear(),r.json)ot(JSON.stringify({signedIn:!1},null,2));else ot(Ue([["done",o?"Signed out":"Not signed in"]],r.style))}var ly=b({workflows:k(b({id:p(),valid:D().optional(),outcome:p().optional(),reason:p().optional(),url:p().optional(),enabled:D().optional(),issues:k(re([p(),b({step:p(),message:p(),severity:p().optional()}).transform((e)=>e.severity==="warning"?"":`${e.step}: ${e.message}`)])).optional(),changes:k(b({change:z(["added","removed","changed"]),subject:p(),text:p()})).optional()}))}),KQ={added:"+",removed:"-",changed:"~"};function FC(e){return(e.issues??[]).filter(Boolean).join(" ")}function GQ(e,t){let r=FC(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 UC(e,t,r){let n=ly.safeParse(e);if(!n.success)return JSON.stringify(e,null,2);return n.data.workflows.map((o)=>{let i=(o.changes??[]).map((a)=>` ${KQ[a.change]} ${a.subject} ${a.text}`);return[t.label(r(o)),...i].join(`
|
|
958
|
+
`)}).join(`
|
|
959
|
+
|
|
960
|
+
`)}function uy(e,t){return e.map((r)=>On(Qx(r),t.errStyle)).join(`
|
|
961
|
+
`)}async function WC(e,t){let r=await Yl(e);if(r.ok)return r.definitions;if(t.json)ot(JSON.stringify({valid:!1,issues:r.issues},null,2));else _n(uy(r.issues,t));return null}async function oa(e,t,r,n){let o=await vh(e.system,e.auth);return await Gl(o,r,qC(t,n),e.fetch)}async function Xl(e,t,r){let n=is(e,t.system);try{process.exitCode=await r(n)}catch(o){process.exitCode=ra(o instanceof Error?o:Error(String(o)),n)}}var JQ=["on","off","cant-run","needs-fixes","cant-turn-on"],YQ=k(Ee({id:p(),state:z(JQ).optional()}));async function XQ(e,t,r){let n=await oa(e,t,"list_workflows",{repo:r}),o=YQ.safeParse(n.data),s=new Map;for(let i of o.success?o.data:[])if(i.state)s.set(i.id,i.state);return s}function QQ(e){return e.kind==="code"?e.definitions.map((t)=>t.id):null}async function eee(e,t,r,n,o){let s=IC(n,await XQ(e,t,r));if(s.filter((a)=>!a.disabled).length<2)return n;let i=await $C({message:"Pick workflows to pull",items:s,maxVisible:12},RC(s,QQ(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 tee(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 ree(e,t,r,n,o){return Xl(t,e,async(s)=>{let i=await oa(e,s,"get_workflow",{repo:r});if(i.isError)return na("get_workflow",i,s);let a=AC(i.data),c=await LC(o.file),u=a;if(n.length>0){let f=CC(a,n);if(f.unknown.length>0)throw Error(`No workflow ${f.unknown.join(", ")} on ${r}. Run tripwire workflows list <repo> to see them.`);u=f.picked}else if(process.stdin.isTTY&&process.stdout.isTTY&&!(s.json||o.all||o.yes)){let f=await eee(e,s,r,a,c);if(!f)return Ec("Pull cancelled"),0;u=f}let l=jC(o.file,u.map((f)=>f.definition),o.force===!0,c);if(s.json)return ot(JSON.stringify(l,null,2)),0;let d=[["wrote",`${l.file} (${NC(l)})`]];if(l.kept.length>0)d.push(["kept",tee(l.kept)]);return d.push(["helpers",l.module],...l.warnings.map((f)=>["note",f])),ot(Ue(d,s.style)),0})}function nee(e,t,r){return Xl(t,e,async(n)=>{let o=await Yl(r.file),s=o.ok?[]:o.issues,{definitions:i}=o,a=[],c=null;if(i.length>0&&r.repo){let l=await oa(e,n,"validate_workflow",{repo:r.repo,definitions:dy(i)});if(l.isError){if(s.length>0)_n(uy(s,n));return na("validate_workflow",l,n)}c=l.data,a=iee.parse(l.data).workflows}else if(i.length>0)a=ok(i,zC(i));let u=s.length===0&&a.every((l)=>l.valid);if(n.json)return ot(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)_n(uy(s,n));if(a.length>0)ot(DC(a,n.style));return u?0:1})}function oee(e,t,r,n){return Xl(t,e,async(o)=>{let s=await WC(n.file,o);if(!s)return 1;let i=await oa(e,o,"validate_workflow",{repo:r,definitions:dy(s)});if(o.json||i.isError)return na("validate_workflow",i,o);ot(UC(i.data,o.style,(u)=>(u.changes??[]).length===0?`${u.id}: no changes`:u.id));let a=ly.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.valid===!1):[];for(let u of c){let l=FC(u);_n(Sk(u.enabled?`${u.id} is on, so a push will be refused. ${l}`:`${u.id} could not be turned on after a push. ${l}`,o.errStyle))}return 0})}function see(e,t,r,n){return Xl(t,e,async(o)=>{let s=await WC(n.file,o);if(!s)return 1;let i=await oa(e,o,"apply_workflow",{repo:r,definitions:dy(s)});if(i.isError)return na("apply_workflow",i,o);let a=ly.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.outcome==="refused"):[];if(o.json)return ot(JSON.stringify(i.data??{text:i.text},null,2)),c.length>0?1:0;ot(UC(i.data,o.style,(u)=>[u.id,u.outcome,u.url].filter(Boolean).join(" ")));for(let u of c)_n(On(GQ(u,r),o.errStyle));return c.length>0?1:0})}var iee=b({workflows:k(b({id:p(),name:p(),valid:D(),issues:k(b({rule:p(),severity:z(["error","warning"]),step:p(),message:p()})),schedules:k(b({nodeId:p(),summary:p(),timezone:p(),defaulted:D(),description:p().optional()}))}))});function dy(e){return br().parse(JSON.parse(JSON.stringify(e)))}function VC(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)=>VQ(t,a)),e.command("logout").description("Revoke and remove the stored token").action((i,a)=>HQ(t,a)),e.command("whoami").description("Show the signed-in account, access status and orgs").action((i,a)=>xt(t,a,"whoami",{})),e.command("status").description("Show setup status and the next step").action((i,a)=>xt(t,a,"setup_status",{})),e.command("repos").description("List repos and their gate state").action((i,a)=>xt(t,a,"list_repos",{}));let r=e.command("rules").description("Read and change rules");r.command("list [repo]").description("List a repo's rules, or the rule catalog when no repo is given").action((i,a,c)=>i?xt(t,c,"get_repo_rules",{repo:i}):xt(t,c,"list_rule_catalog",{})),r.command("set <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={repo:i,ruleId:a};if(c.enable||c.disable)l.enabled=c.enable===!0;try{if(c.param.length>0)l.config=Object.fromEntries(c.param.map(WQ));if(l.enabled===void 0&&l.config===void 0)throw Error("Pass --enable, --disable or --param.")}catch(d){process.exitCode=ra(d instanceof Error?d:Error(String(d)),is(u,t.system));return}return xt(t,u,"set_rule",l)}),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)=>xt(t,c,"turn_on_gate",{repo:i}));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 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").action((i,a,c,u)=>ree(t,u,i,a,c)),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)=>nee(t,a,i)),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)=>oee(t,c,i,a)),n.command("push <repo>").description("Save tripwire.ts to the repo. New workflows start off; enable them when ready").option("--file <path>","The workflow file",ta).action((i,a,c)=>see(t,c,i,a)),n.command("list <repo>").description("List a repo's workflows").action((i,a,c)=>xt(t,c,"list_workflows",{repo:i}));for(let i of["enable","disable"])n.command(`${i} <repo> <workflowId>`).description(`${i==="enable"?"Enable":"Disable"} a workflow`).action((a,c,u,l)=>xt(t,l,"set_workflow_enabled",{repo:a,workflowId:c,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 xt(t,a,"list_runs",c)}),o.command("show <runId>").description("Show one run with its rule results").action((i,a,c)=>xt(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)=>xt(t,a,"list_moderation_queue",i.repo?{repo:i.repo}:{})),s.command("decide <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)=>{if(!["approve","remove","ban"].includes(c)){process.exitCode=ra(Error(kk(c)),is(l,t.system));return}return xt(t,l,"decide_moderation",{repo:i,itemId:a,decision:c})})}var aee=new Set(["install","login","logout","whoami","status","repos","rules","gate","workflows","runs","queue","help"]),cee=new Set(["--help","-h","--version","-V"]),uee=new Set(["--org"]);function lee(e){if(e.some((n)=>cee.has(n)))return{kind:"run",argv:e};let t=0;while(t<e.length){let n=e[t]??"";if(!n.startsWith("-"))break;t+=uee.has(n)?2:1}let r=e[t];if(r===void 0)return{kind:"help"};if(aee.has(r))return{kind:"run",argv:e};return{kind:"unknown",command:r}}async function ZC(e,t){let r=lee(t),n=pee(e);if(r.kind==="unknown"){process.stderr.write(`${On(`Unknown command ${r.command}. Run tripwire --help.`,Ys(process.stderr.isTTY===!0,e.env))}
|
|
962
|
+
`),process.exitCode=1;return}if(r.kind==="help"){n.outputHelp();return}await n.parseAsync(r.argv,{from:"user"})}async function dee(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 pee(e,t={}){let r=new My().name("tripwire").description("Set up Tripwire in your coding agents and manage it from the terminal").version(Ka).option("--json","Print machine-readable JSON").option("--org <slug>","Org to act on (default: TRIPWIRE_ORG 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 _T(e,{interactive:o.interactive&&!o.yes&&a,json:i,instruction:n})}),VC(r,{system:e,auth:$S,openUrl:(n)=>dee(e,n),...t}),r}import{spawn as BC}from"node:child_process";import{accessSync as fee,constants as mee,existsSync as HC,readdirSync as hee}from"node:fs";import{homedir as gee}from"node:os";import{delimiter as KC,join as GC}from"node:path";function yee(e){try{return fee(e,mee.X_OK),!0}catch{return!1}}function bee(e,t,r){let n=(t.PATH??"").split(KC).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=GC(s,`${e}${i}`);if(HC(a)&&yee(a))return a}return null}function wee(e,t,r,n){return new Promise((o)=>{let s=BC(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 _ee(e,t,r){return new Promise((n)=>{let o=BC(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 vee(e){try{return hee(e)}catch{return[]}}function See(e,t){if(e.TRIPWIRE_APP_DIRS!==void 0)return e.TRIPWIRE_APP_DIRS.split(KC).filter(Boolean);return["/Applications",GC(t,"Applications")]}function JC(e=process.env,t=process.platform){let r=e.HOME??e.USERPROFILE??gee();return{platform:t,home:r,env:e,macAppDirs:See(e,r),run:(n,o,s)=>wee(n,o,e,s),runInteractive:(n,o)=>_ee(n,o,e),which:(n)=>bee(n,e,t),exists:HC,list:vee}}await ZC(JC(),process.argv.slice(2));
|